diff --git a/arkindex/documents/api/search.py b/arkindex/documents/api/search.py
index fe72423bfe24b2e48734d622478fa534c457f4b4..afe0a847b26d319926dac9e6977cf492d42c7613 100644
--- a/arkindex/documents/api/search.py
+++ b/arkindex/documents/api/search.py
@@ -56,7 +56,7 @@ class ElementSearch(SearchAPIView):
         if structural_metadata:
             search = search.filter(
                 'wildcard',
-                structural_metadata='*{}*'.format(structural_metadata)
+                structural_metadata='*{}*'.format(structural_metadata.lower())
             )
 
         if element_type:
diff --git a/arkindex/project/elastic.py b/arkindex/project/elastic.py
index cd122035f5aed113dc9a2258c672a9a9240ef3e8..faad6690ab55d5a85eeb8d7edff59853fcdd80d9 100644
--- a/arkindex/project/elastic.py
+++ b/arkindex/project/elastic.py
@@ -139,7 +139,7 @@ class ESElement(Document):
                 for element in Element.objects.get_ascending(instance.id)
             ],
             structural_metadata=[
-                md.value
+                md.value.lower()
                 for md in instance.metadatas.filter(type=MetaType.Structural)
             ],
             transcriptions=list(map(
diff --git a/arkindex/project/tests/test_elastic.py b/arkindex/project/tests/test_elastic.py
index ef61d6ee3bdafab4c8ce32371696c31b9c8fb07e..468a801f16e9b000a5346733b7a958893594dc18 100644
--- a/arkindex/project/tests/test_elastic.py
+++ b/arkindex/project/tests/test_elastic.py
@@ -42,4 +42,4 @@ class TestESDocuments(FixtureAPITestCase):
         element = self.corpus.elements.get(name='Volume 1')
         element.metadatas.create(type=MetaType.Structural, name='ref.', value='123ABC')
         es_document = ESElement.from_model(element)
-        self.assertCountEqual(es_document.structural_metadata, ['123ABC'])
+        self.assertCountEqual(es_document.structural_metadata, ['123abc'])