Warum eine Abweichung im Schema zählt
Die meisten Shopify-Produktseiten enthalten einen JSON-LD-Block (<script type="application/ld+json">), der das Produkt mit dem Vokabular von schema.org beschreibt: Product (oder ProductGroup bei Produkten mit Varianten) und ein oder mehrere Offer-Objekte mit price, priceCurrency und availability.
Maschinen lesen diesen Block, weil er einfacher ist als Ihr Design. Google Merchant Center dokumentiert zum Beispiel, dass die automatischen Artikelaktualisierungen Preis, Währung und Verfügbarkeit aus dem schema.org-Markup Ihrer Zielseiten lesen, um vorübergehende Abweichungen im Feed zu korrigieren, und dass Google ungenauen Auszeichnungen einer Website nicht mehr vertrauen kann. KI-Shopping-Agenten, die Ihre Seiten crawlen oder abrufen, können dieselben Daten nutzen. Steht im JSON-LD 39,00 und auf der Seite 29,00, bekommt jemand weiter unten in der Kette die falsche Zahl.
Googles Dokumentation zu Händlereinträgen nennt price (größer als null) und priceCurrency als Pflichtfelder des Offer; availability wird empfohlen.
So sieht ein stimmiges Offer aus
Für ein Produkt, das auf der Seite für 29,00 Euro und als lieferbar angezeigt wird, sollte das Offer genau dieselben Fakten enthalten:
"@type": "Offer""price": "29.00"(der Preis, den Kunden jetzt zahlen, nicht der Vergleichspreis; im JSON-LD mit Punkt als Dezimaltrennzeichen)"priceCurrency": "EUR"(die Währung, die auf der Seite für diesen Markt angezeigt wird, etwaCHFfür die Schweiz)"availability": "https://schema.org/InStock"(oderOutOfStock, wenn die Seite „ausverkauft“ zeigt)"url"mit der Produkt- oder Varianten-URL, unter der man kaufen kann
Bei Produkten mit Varianten sollte jede Variante ein eigenes Offer mit eigenem Preis, eigener Verfügbarkeit und SKU haben. Ist eine Variante ausverkauft und eine andere nicht, muss das Schema das abbilden.
So prüfen Sie eine Produktseite von Hand
- Testseiten wählen. Nehmen Sie ein reduziertes Produkt, ein Produkt mit mehreren Varianten zu unterschiedlichen Preisen und ein ausverkauftes Produkt. Abweichungen verstecken sich in diesen Fällen, nicht in den einfachen.
- Quelltext ansehen. Öffnen Sie die Seite, drücken Sie Strg+U (Mac: Cmd+Option+U) und suchen Sie nach
ld+json. Zählen Sie die Blöcke. Mehr als einProduct-Block ist ein Warnsignal. - Das Offer lesen. Notieren Sie in jedem Block
price,priceCurrency,availabilityundskuoderurlder Variante. - Mit der Seite vergleichen. Stimmt der sichtbare Preis, auch der Sale-Preis? Dieselbe Währung? Zeigt die Seite „ausverkauft“, während das Schema
InStocksagt? - Googles Test für Rich-Suchergebnisse unter search.google.com/test/rich-results ausführen. Er zeigt, welche strukturierten Daten Google ausliest, und meldet fehlende Pflichtfelder. Ob die Werte zum sichtbaren Preis passen, sagt er nicht; diesen Vergleich machen Sie selbst.
- Variante und Markt wechseln. Wählen Sie eine andere Variante und, wenn Sie in mehreren Ländern verkaufen, sehen Sie die Seite aus einem anderen Markt an. Erneut prüfen.
Häufige Ursachen bei Shopify
Fest codierte oder alte Theme-Blöcke
Manche Themes, oder Snippets, die ein Entwickler vor Jahren eingefügt hat, geben einen festen Preis, eine feste Währung oder immer InStock aus, egal welche Variante. Andere stammen aus der Zeit vor Shopifys Liquid-Filter structured_data. Nach Theme-Updates oder Anpassungen bleibt ein altes Snippet oft stehen und erzeugt einen zweiten, veralteten Block.
SEO-, Bewertungs- und Feed-Apps mit eigenem Schema
Schema- und Bewertungs-Apps fügen häufig eigenes Product-Markup ein. Gibt auch das Theme eines aus, haben Sie zwei Product-Blöcke, die sich widersprechen können, etwa einer mit Sale-Preis und einer mit Vergleichspreis. Eine App zu entfernen entfernt nicht immer, was sie in Theme-Dateien geschrieben hat.
Varianten
Die Standardansicht zeigt meist die erste verfügbare Variante. Ein Snippet, das immer die erste Variante liest, ist falsch, sobald Kunden über eine Varianten-URL mit anderem Preis oder Bestand kommen.
Mehrere Währungen und Shopify Märkte
Mit Shopify Märkte kann der sichtbare Preis in der Landeswährung erscheinen, etwa in Schweizer Franken. Ist im JSON-LD die Standardwährung des Shops fest eingetragen oder wird shop.currency verwendet, passen Zahl und Währungscode außerhalb Ihres Heimatmarkts nicht mehr zusammen.
Sales, Rabatte und Caching
Preise, die eine App oder ein Skript nach dem Laden ändert, können vom Preis im serverseitig erzeugten JSON-LD abweichen. Ein Sale aus einer Preis-App erscheint dann auf dem Bildschirm, aber nicht im Schema, oder umgekehrt.
Checkliste Abweichungen
| Was vergleichen | Typisches Symptom | Wo beheben |
|---|---|---|
| Preis | Schema zeigt Vergleichspreis oder alten Preis | Produktvorlage im Theme oder Einstellungen der Schema-App |
| Währung | CHF auf der Seite, EUR im Schema | Währung des Marktes verwenden, keinen festen Code |
| Verfügbarkeit | Ausverkauft auf der Seite, InStock im Schema | Snippet muss die gewählte Variante lesen |
| Anzahl Product-Blöcke | Zwei Blöcke mit unterschiedlichen Werten | Eine Quelle abschalten: Theme oder App |
| Variante | Varianten-URL zeigt Preis der ersten Variante | Ein Offer pro Variante ausgeben |
| Fehlender Block | Gar kein ld+json | Theme nutzt structured_data nicht; Entwickler oder Theme-Support fragen |
So beheben Sie es, ohne etwas kaputtzumachen
- Eine einzige Quelle. Entscheiden Sie, ob Theme oder App das Product-Schema ausgibt, und schalten Sie das andere ab.
- Shopifys eigenen Filter bevorzugen. Aktuelle Shopify-Themes nutzen
{{ product | structured_data }}, das Live-Produktdaten liest. Erweitern Sie es mit eigenem Snippet, lesen Sie Werte aus der gewählten Variante, nicht aus festem Text. - Auf einem Theme-Duplikat testen (Onlineshop > Themes), bevor Sie veröffentlichen, und dann die Prüfung oben wiederholen.
- Nach Änderungen erneut prüfen. Eine neue Bewertungs-App, ein Theme-Wechsel oder ein zusätzlicher Markt kann Monate später wieder eine Abweichung erzeugen.
Alle Produkte automatisch prüfen
Die Prüfung von Hand funktioniert für einige Seiten. Für einen ganzen Katalog skaliert sie nicht, und sie zeigt nur den heutigen Stand. AI Sales Assurance führt diesen Vergleich für Ihre Produkte durch: Es meldet fehlendes JSON-LD und JSON-LD, das der Seite widerspricht, dazu Abweichungen bei Preis, Währung, Verfügbarkeit und Varianten, und nennt den wahrscheinlichen Theme-Block oder die App als Ursache. Das Tool arbeitet nur lesend und ändert nie Ihren Shop. Kostenlosen Check starten.
Prüfen Sie, was KI-Shopping-Agenten in Ihrem Shop sehen
Kostenloser Check, nur lesend: Preise, Bestand, Varianten, strukturierte Daten und Links im Vergleich mit Ihren echten Produktseiten. Ohne Kreditkarte.
Kostenlosen Check startenHäufige Fragen
Wie prüfe ich mein Produkt-Schema bei Shopify?
Öffnen Sie den Quelltext der Seite, suchen Sie nach ld+json und geben Sie die URL in Googles Test für Rich-Suchergebnisse ein. Vergleichen Sie Preis, Währung und Verfügbarkeit im Offer mit der Seite.
Warum zeigen meine strukturierten Daten einen anderen Preis als die Seite?
Meist wegen eines fest codierten Theme-Snippets, eines zweiten Product-Blocks aus einer SEO- oder Bewertungs-App, eines Snippets, das nur die erste Variante liest, oder einer fest eingetragenen Währung.
Erkennt Googles Test für Rich-Suchergebnisse Preisabweichungen?
Nein. Er zeigt die ausgelesenen strukturierten Daten und Fehler in Pflichtfeldern, aber den Vergleich mit der sichtbaren Seite müssen Sie selbst machen.
Darf eine Seite zwei Product-Blöcke haben?
Besser nicht. Zwei Blöcke mit unterschiedlichen Werten lassen Crawler und Agenten raten, welcher stimmt. Behalten Sie eine Quelle: das Theme oder eine App.
Weitere Ratgeber
Quellen
- Google Search Central — Strukturierte Daten für Händlereinträge (Product, Offer)
- Google Merchant Center — Automatische Artikelaktualisierungen
- Google — Test für Rich-Suchergebnisse
- Shopify Community — Dawn theme duplicate structured data with a review app
- Shopify Hilfe-Center — Theme-Code bearbeiten
- Shopify Hilfe-Center — Märkte