Shopware

Warum die Shopware-Suche nicht findet, was im Text steht

Von 16 konfigurierbaren Suchfeldern sind ab Werk sechs aktiv. Die Beschreibung gehört nicht dazu. Das erklärt beide Beschwerden auf einmal — zu wenige Treffer und zu viele.

Pixup MediaVeröffentlicht am Aktualisiert am 8 Min. Lesezeit

„Die Suche findet das Produkt nicht." Der Satz beginnt viele Support-Anfragen, und die Ursache liegt fast immer an derselben Stelle: bei der Frage, welche Felder überhaupt durchsucht werden.

Dieser Text beschreibt die Werkseinstellung — ausgelesen aus zwei laufenden Installationen, nicht aus der Erinnerung.

Was ab Werk durchsucht wird

Shopware hält die Suchkonfiguration in zwei Tabellen: eine je Sprache, dazu die Felder mit Rang und Tokenisierung. Gemessen in 6.7.13.1:

Feldab WerkRangtokenisiert
productNumberan1000nein
customSearchKeywordsan800nein
namean700ja
eanan500nein
manufacturer.namean500nein
manufacturerNumberan500nein
parent.nameaus560—
descriptionaus0—
properties.nameaus0—
tags.nameaus0—
categories.nameaus0—
metaTitle, metaDescriptionaus0—
options.nameaus0—
categories.customFields, manufacturer.customFieldsaus0—

Sechs von sechzehn. Der Rang entscheidet, wie schwer ein Treffer in diesem Feld wiegt — eine getroffene Artikelnummer zählt mehr als ein getroffener Herstellername.

In 6.6.10.6 sind es 15 Felder statt 16; aktiv sind dieselben sechs, mit denselben Rängen. Zwischen den beiden Linien ändert sich an der Werkseinstellung also nichts.

Zwei Einstellungen, die den Rest erklären

min_search_length = 2. Suchbegriffe mit weniger als zwei Zeichen werden verworfen. Bei Katalogen mit einstelligen Größen- oder Typbezeichnungen ist das der Grund, warum eine Suche nach „S" nichts liefert.

and_logic = 0, also ODER. Bei mehreren Suchwörtern genügt eines für einen Treffer. Wer „rotes fahrrad" eingibt, bekommt alles Rote und alle Fahrräder.

Das ist die zweite Hälfte der Ausgangsbeschwerde: Die Suche findet zu wenig, weil die Beschreibung nicht durchsucht wird, und gleichzeitig zu viel, weil mehrere Begriffe nicht zusammen gelten müssen. Beides sind Einstellungen, keine Eigenschaften.

Warum nur name tokenisiert ist

Tokenisierung zerlegt einen Wert in einzelne Wörter. Beim Produktnamen ist das richtig — „Rennrad Carbon 54" soll auch bei der Suche nach „Carbon" treffen.

Bei productNumber, ean und manufacturerNumber wäre es falsch: Diese Werte sollen als Ganzes treffen. Wer nach ABC-123 sucht, will nicht alles, was irgendwo eine 123 trägt.

Die Werkseinstellung ist an dieser Stelle also keine Nachlässigkeit, sondern eine Entscheidung. Anders liegt es bei description: Dort wäre Tokenisierung sinnvoll — das Feld ist nur gar nicht erst aktiv.

Wie klein die durchsuchbare Oberfläche wirklich ist

Nachtrag vom 18. September 2026. Die Felderliste oben sagt, was durchsucht werden kann. Eine spätere Messung des Suchindex sagt, wie viel davon tatsächlich ankommt.

Ausgewertet wurde die Tabelle product_search_keyword, also der fertige Index:

6.6.10.66.7.13.1
Begriffe je Produkt, wenigste33
Begriffe je Produkt, im Mittel5,15,3
Begriffe je Produkt, meiste88

Ein Produkt ist unter drei bis acht Begriffen auffindbar. Das ist die gesamte durchsuchbare Oberfläche eines Artikels ab Werk.

Noch deutlicher wird es an den Ranking-Stufen, die im Index tatsächlich vorkommen:

StufeFeldEinträge (6.7)verschiedene Werte
1000Produktnummer3618
700Name12443
500EAN, Hersteller, Herstellernummer326

Drei Beobachtungen daraus:

  1. Der Name trägt den Index. Er ist das einzige tokenisierte Feld und liefert den Großteil aller Einträge.
  2. Stufe 500 ist fast leer. Über alle Produkte hinweg gibt es dort nur sechs verschiedene Werte — weil EAN und Herstellernummer selten gepflegt sind.
  3. Stufe 800 fehlt vollständig. Das Feld customSearchKeywords ist ab Werk aktiv und in der Regel leer. Es ist damit der billigste Hebel im ganzen Index: eingeschaltet, gewichtet, ungenutzt.

Was wir in Projekten zuerst umstellen## Was wir in Projekten zuerst umstellen

In dieser Reihenfolge, weil sie vom größten zum kleinsten Hebel geht:

  1. description aktivieren, tokenisiert, mit niedrigem Rang. Das schließt die häufigste Lücke, ohne die Rangfolge durcheinanderzubringen.
  2. properties.name prüfen. In Katalogen, in denen Eigenschaften die eigentliche Produktsprache sind — Material, Farbe, Passform — gehört das Feld dazu.
  3. UND-Verknüpfung erwägen. Sie schärft die Treffermenge deutlich, kann aber bei Tippfehlern zu null Treffern führen. Vorher an echten Suchanfragen prüfen, nicht an Vermutungen.
  4. customSearchKeywords nutzen. Das Feld hat mit Rang 800 das zweithöchste Gewicht und ist dafür da, einzelne Produkte gezielt auffindbar zu machen — etwa unter einem Namen, den nur Kunden verwenden.

Punkt 4 wird in Projekten fast nie genutzt und ist der billigste Hebel von allen.

Was das nicht heißt

Die Shopware-Suche ist nicht schlecht. Sie ist konservativ eingestellt. Eine Werkseinstellung, die alle Felder durchsucht, würde in großen Katalogen eine Trefferliste erzeugen, die niemandem hilft — und die Indexgröße spürbar erhöhen.

Elasticsearch löst diese Klasse von Problem nicht. Es ändert, wie gesucht wird, nicht worin. Ein nicht aktiviertes Feld bleibt auch dort außen vor. Die Entscheidung für eine andere Suchtechnik gehört an das Ende dieser Liste, nicht an den Anfang.

Diese Messung sagt nichts über die Relevanzqualität. Geprüft wurde die Konfiguration, nicht, wie gut die Ergebnisse zu echten Suchanfragen passen. Das ist eine eigene Frage und braucht echte Suchdaten aus dem Shop.

Wie Sie den Stand in Ihrem Shop prüfen

In der Administration unter den Sucheinstellungen des Verkaufskanals steht die Feldliste mit Schalter und Rang. Was dort nicht aktiv ist, wird nicht durchsucht — unabhängig davon, wie gut es gepflegt ist.

Wenn Sie bei der Einordnung Unterstützung brauchen, gehört das zu Shopware-Support.

Häufige Fragen

Warum findet die Suche mein Produkt nicht, obwohl der Begriff in der Beschreibung steht?
Weil das Feld description ab Werk nicht durchsucht wird. Es steht in der Konfiguration, ist aber nicht aktiviert. Das lässt sich in den Sucheinstellungen des Verkaufskanals ändern.
Warum bekomme ich bei zwei Suchwörtern zu viele Treffer?
Weil Shopware die Begriffe standardmäßig mit ODER verknüpft. Ein Produkt, das nur eines der beiden Wörter enthält, ist damit ein Treffer. Die Einstellung lässt sich auf UND umstellen.
Brauche ich Elasticsearch, damit die Suche besser wird?
Nicht als erstes. Elasticsearch ändert die Suchtechnik, nicht die Feldauswahl. Wenn ein Feld nicht als durchsuchbar markiert ist, findet auch Elasticsearch nichts darin.
Was bedeutet „tokenisiert“?
Der Wert wird in einzelne Wörter zerlegt, die jeweils für sich gefunden werden können. Ab Werk gilt das nur für den Produktnamen. Bei einer Artikelnummer ist das auch richtig so — sie soll als Ganzes treffen.
WeiterführendShopware-Support