Website-Check: Befunde erklärt

Produktdaten: Was Google für Händlereinträge und Produkt-Snippets braucht

Produktdaten sind der Teil deines Markups, aus dem Google Preis, Verfügbarkeit, Varianten und Sterne für das Suchergebnis zieht. Fehlt er oder widerspricht er sich, bleibt von deiner Produktseite ein blauer Link mit zwei Zeilen Text — während der Wettbewerber „Auf Lager“ und einen Preis zeigt.

Hasan Kalkan Informatiker, SEO seit 2012 29 Min. Lesezeit

Kurz gesagt

  • 01Google unterscheidet zwei Ausbaustufen: Produkt-Snippets für Seiten mit Produktinfos und Händlereinträge für Seiten, auf denen man kaufen kann. Händlereinträge verlangen mehr Felder und zeigen dafür Preis und Verfügbarkeit.
  • 02Varianten gehören in eine ProductGroup: eine Gruppen-ID für die Familie, je Variante eine eigene Kennung, die unterscheidenden Merkmale und eine Adresse, die genau diese Ausführung vorauswählt.
  • 03Rot sind die Befunde, bei denen Pflichtangaben fehlen oder sich Angaben widersprechen. Die zuerst, dann die gelben — sonst wirkt die Feinarbeit nicht.

Welche davon betreffen deine Website?

Der Website-Check prüft genau diese Befunde an deiner Domain, meist in unter 40 Sekunden, ohne Anmeldung, und verlinkt jeden Treffer hierher.

Diese Seite erklärt die Befunde, die der Website-Check im Bereich Produktdaten ausgibt. Der Check ruft eine Produktseite ab, liest die JSON-LD-Blöcke im Quelltext und vergleicht sie mit dem, was Google für Händlereinträge, Produkt-Snippets und Produktvarianten dokumentiert. Jeder Befund hat hier seinen eigenen Abschnitt: Das Ergebnis des Website-Checks verlinkt bei jedem Befund genau hierher.

Wichtig zum Einordnen: Google beschreibt zwei Klassen von Produktdaten. Produkt-Snippets sind für Seiten gedacht, auf denen man das Produkt nicht direkt kaufen kann, Händlereinträge für Seiten, auf denen Kunden bei dir kaufen. Wer die Pflichtfelder für Händlereinträge liefert, ist damit in der Regel auch für Produkt-Snippets geeignet.

Produkt-SnippetHändlereintrag
Für welche SeiteProduktseite ohne direkte Kaufmöglichkeit, z. B. ein TestberichtSeite, auf der man bei dir kauft
AngebotOffer oder AggregateOffer, auch Bewertungen allein reichenOffer verlangt, der Händler ist der Verkäufer
Zusätzliche MöglichkeitenMehr Optionen für Bewertungen, etwa Vor- und NachteileDetailangaben wie Größen, Versand und Rückgabe

Quelle für die Einordnung: Google Search Central, „Introduction to Product structured data“ und „Merchant listing structured data“ (abgerufen 23.09.2026).

So liest du die Befunde: Rot heißt, eine Pflichtangabe fehlt oder zwei Angaben widersprechen sich — daran scheitert die ganze Darstellung. Gelb heißt, ein empfohlenes Feld fehlt: die Seite bleibt geeignet, zeigt aber weniger. Jeder Abschnitt hier sagt dir, was der Befund bedeutet, warum er zählt, wie du ihn behebst und woraus die Anforderung stammt.

Kein Product-Markup auf der Seite: Google kennt Preis und Verfügbarkeit nicht

Befund-Kennung: kein_markup, kein_produkt

Was das heißt

Der Check ruft deine Produktseite einmal ab und sucht im Quelltext nach strukturierten Produktdaten. Findet er gar nichts, steht im Ergebnis „Kein strukturiertes Produkt-Markup gefunden“. Findet er JSON-LD, aber keinen Typ Product oder ProductGroup, heißt der Befund „JSON-LD vorhanden, aber kein Product“ — und listet auf, welche Typen stattdessen da sind, häufig nur Organization und BreadcrumbList. Beide sind rot markiert.

Warum es zählt

Preis, Verfügbarkeit und Sterne im Suchergebnis kommen aus strukturierten Daten auf der Seite oder aus einem Merchant-Center-Feed — Google beschreibt beide Wege und empfiehlt, beides zu liefern. Ohne Markup und ohne Feed bleibt von deiner Produktseite ein blauer Link mit zwei Zeilen Text. Für KI-Antworten gilt anderes: „Structured data isn't required for generative AI search“, schreibt Google — es hilft aber weiter für Rich Results.

So behebst du es

Einen JSON-LD-Block mit Product in die Produktseite legen, mit name, image und offers als Pflichtfeldern für Händlereinträge.

  • Shopify, Shopware, WooCommerce, JTL-Shop: Erst prüfen, ob dein Theme das Markup schon ausgibt und ob es nur unvollständig ist — in unseren Audits ist doppeltes Markup aus Theme plus SEO-Plugin ein häufiger Grund für Widersprüche. Was die beiden großen Systeme im Standard liefern: Shopify SEO, Shopware SEO.
  • Werte immer aus dem Shop-System ziehen, nicht von Hand pflegen. Sonst steht im Markup der Preis von letztem Jahr.
  • Danach im Rich-Results-Test prüfen und den Check erneut laufen lassen.

Quelle

Google Search Central: „Introduction to Product structured data“ (abgerufen 23.09.2026), Google Search Central: „Merchant listing (Product, Offer) structured data“ (abgerufen 23.09.2026), Google Search Central: „AI optimization guide“ (abgerufen 23.09.2026)

Fehler im JSON-LD: Google liest den ganzen Block nicht

Befund-Kennung: jsonld_fehler

Was das heißt

Im Ergebnis steht „… JSON-LD-Block(s) mit Syntaxfehlern“ mit der Zahl der betroffenen Blöcke. Der Check versucht, den Block zu lesen, und zählt ihn als Fehler, wenn das nicht gelingt — typische Ursachen sind ein Komma zu viel vor der schließenden Klammer oder ein Anführungszeichen mitten im Produktnamen, das nicht maskiert ist.

Warum es zählt

JSON-LD ist entweder ganz lesbar oder ganz kaputt. Ein einzelnes falsches Zeichen macht nicht ein Feld ungültig, sondern den kompletten Block — Preis, Bilder, Varianten, alles. Google nennt für solche Fälle in der Fehlersuche den Bericht „Nicht parsbare strukturierte Daten“ in der Search Console. Das ist der unangenehmste Befund dieser Kategorie, weil die Daten vorhanden sind und trotzdem nichts davon ankommt.

So behebst du es

  • Den Block aus dem Quelltext kopieren und im Rich-Results-Test prüfen; er zeigt die Zeile, an der es hakt.
  • Die häufigste Ursache ist Text, der aus der Datenbank in das Template gesetzt wird: Produktnamen mit Anführungszeichen, Beschreibungen mit Zeilenumbrüchen.
  • Deshalb im Template nie selbst JSON zusammenschreiben, sondern die JSON-Funktion deines Systems verwenden — in PHP json_encode, in Liquid der Filter json. Die maskiert Sonderzeichen selbst.
  • Nach dem Fix eine Handvoll Produkte unterschiedlicher Art prüfen, nicht nur das eine, das aufgefallen ist.

Quelle

Google Search Central: „Intro to how structured data markup works“ (abgerufen 23.09.2026), Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026) (Abschnitt „Troubleshooting“ mit dem Bericht „Unparsable structured data“)

Markup nur als Microdata: funktioniert, ist aber schwer zu pflegen

Befund-Kennung: nur_microdata

Was das heißt

Der Befund „Produkt-Markup nur als Microdata“ erscheint, wenn der Check im HTML ein itemtype mit schema.org/Product findet, in den JSON-LD-Blöcken aber weder Product noch ProductGroup steht. JSON-LD darf dabei durchaus vorhanden sein — oft ein Organization-Block —, nur die Produktdaten fehlen dort. Microdata ist die ältere Schreibweise, bei der die Daten mitten im sichtbaren HTML hängen. Der Check prüft ausschließlich JSON-LD und sagt dir das im Ergebnis — er kann deine Microdata also nicht im Detail bewerten.

Warum es zählt

Für Google sind beide Formate zulässig. Die Empfehlung ist aber klar: „In general, Google recommends using JSON-LD for structured data if your site's setup allows it, as it's the easiest solution for website owners to implement and maintain at scale“. In der Praxis sehen wir bei Microdata öfter halbe Produktdaten, weil ein Template-Umbau ein itemprop verliert, das niemand vermisst. Ein eigener Block fällt auf, wenn er fehlt. Bei Shopware ist Microdata der Normalfall: Der Storefront liefert die Produktdaten im Template statt als JSON-LD — Shopware SEO.

So behebst du es

  • Auf einen JSON-LD-Block umstellen, der im head oder am Ende des body steht und vollständig aus den Produktdaten des Shops gefüllt wird.
  • Übergangsweise beides parallel zu betreiben ist möglich, führt aber leicht zu zwei verschiedenen Preisen auf einer Seite. Nach unserer Erfahrung lieber sauber wechseln und die alten itemprop-Attribute entfernen.
  • Nach dem Wechsel den Check erneut laufen lassen: jetzt bekommst du zu jedem Feld eine Rückmeldung statt nur diesen Hinweis.

Quelle

Google Search Central: „Intro to how structured data markup works“ (abgerufen 23.09.2026). Einschätzung zur Pflege: Erfahrungswert aus unseren Audits — keine Google-Vorgabe.

Mehrere Produkte auf einer Seite: dafür gibt es kein Produkt-Snippet

Befund-Kennung: mehrere_produkte

Was das heißt

Im Ergebnis steht „… Produkte auf einer Seite“ mit der gefundenen Anzahl. Der Check hat mehrere getrennte Product-Knoten im Markup gefunden, die nicht als Varianten eines Produkts verknüpft sind. Das passiert auf Kategorie- und Listenseiten, und es passiert bei Varianten, die jede für sich als eigenes Produkt ausgezeichnet werden.

Warum es zählt

Google ist hier eindeutig: „Product rich results only support pages that focus on a single product (or multiple variants of the same product).“ Als Beispiel für das, was nicht geht, nennt die Dokumentation „shoes in our shop“. Solange mehrere unverbundene Produkte auf der Seite stehen, bleibt das Suchergebnis ohne Preis und Sterne, sofern kein Merchant-Center-Feed die Daten liefert — obwohl das Markup technisch fehlerfrei ist.

So behebst du es

  • Sind es Varianten desselben Artikels, gehören sie in eine ProductGroup mit hasVariant. Das ist der eigentliche Fix, siehe Varianten fehlen.
  • Ist es eine Kategorie- oder Suchergebnisseite, bekommt sie kein Product-Markup. Google empfiehlt ausdrücklich, das Markup auf Produktseiten zu konzentrieren statt auf Listen.
  • Häufige Falle in Shops: Cross-Selling-Bereiche wie „Ähnliche Artikel“ liefern eigenes Produkt-Markup mit. Das ist in unseren Audits der häufigste Grund für diesen Befund — solche Bausteine ohne Markup ausgeben.

Quelle

Google Search Central: „Merchant listing (Product, Offer) structured data“ (abgerufen 23.09.2026) und Google Search Central: „Product snippet (Product, Review, Offer) structured data“ (abgerufen 23.09.2026) (Abschnitt „Technical guidelines“). Cross-Selling als Ursache: Erfahrungswert aus unseren Audits — keine Google-Vorgabe.

Marke fehlt: ein Kernfeld des Händlereintrags ist leer

Befund-Kennung: marke

Was das heißt

Der Befund „Marke fehlt“ erscheint, wenn im Product kein brand mit einem Namen steht. Er ist als Warnung markiert, nicht als Fehler: die Seite bleibt für ein Suchergebnis mit Produktdaten geeignet, aber ein empfohlenes Feld fehlt.

Warum es zählt

Google formuliert es als Empfehlung: „Include the brand of the product in the name property of the Brand type if known. Include at most one brand name.“ Die Marke ist zusammen mit GTIN und Artikelnummer das, worüber Google dein Angebot demselben Produkt zuordnet, das andere Händler auch verkaufen. Ohne diese Zuordnung steht dein Angebot allein da, statt im Vergleich sichtbar zu sein.

So behebst du es

Ein Feld, meist ein Einzeiler im Template:

"brand": { "@type": "Brand", "name": "Hersteller" }
  • Shopify: Marke steht üblicherweise im Feld „Anbieter“ (vendor) des Produkts.
  • Shopware, WooCommerce, JTL: Hersteller ist ein eigenes Feld beziehungsweise ein Attribut am Artikel — dort pflegen und ins Markup durchreichen.
  • Bei Eigenmarken den eigenen Shopnamen als Marke eintragen, nicht das Feld leer lassen.
  • Nur eine Marke pro Produkt, keine Aufzählung aus Hersteller und Serie.

Quelle

Google Search Central: „Merchant listing (Product, Offer) structured data“ (abgerufen 23.09.2026)

Beschreibung fehlt: Google muss sich den Text selbst suchen

Befund-Kennung: beschreibung

Was das heißt

Je nachdem, wo der Text fehlt, meldet der Check „Beschreibung fehlt“ für das Produkt oder „Beschreibung der Produktgruppe fehlt“ für die ProductGroup. Gemeint ist immer das Feld description im Markup — nicht die Meta-Description und nicht der Fließtext auf der Seite.

Warum es zählt

Google nennt das Feld ausdrücklich empfohlen: „While the product description is not mandatory, it is strongly recommended to provide a description of the product in this property.“ Für Varianten steht in der Varianten-Dokumentation zusätzlich, dass die Beschreibung der Variante genauer sein soll als die der Gruppe und idealerweise die unterscheidenden Worte wie Farbe, Größe oder Material enthält. Fehlt das Feld, muss Google sich einen Text von der Seite nehmen — in unseren Audits landet dann oft der Versandhinweis im Ergebnis statt der Produktnutzen.

So behebst du es

  • description mit zwei bis drei Sätzen füllen, die die entscheidenden Merkmale nennen: Material, Maße, Einsatzzweck.
  • Den Text aus dem Produktdatenfeld des Shops ziehen und HTML-Tags entfernen, sonst stehen <p>-Reste im Markup.
  • Bei Varianten: an der ProductGroup die gemeinsame Beschreibung, an der Variante die konkrete („… in Dunkelblau, Größe 44“).
  • Nicht die Meta-Description hineinkopieren — die ist auf Klickanreiz geschrieben, nicht auf Produktbeschreibung.

Wie du den Text aus dem Attributsatz baust, in einer Shop- und einer Feed-Fassung, und wie du jede Angabe gegen die Quelle prüfst: Produktbeschreibungen schreiben.

Quelle

Google Search Central: „Merchant listing (Product, Offer) structured data“ (abgerufen 23.09.2026), Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026). Beobachtung zum ersatzweise gewählten Text: Erfahrungswert aus unseren Audits — keine Google-Vorgabe.

Keine Artikelnummer, keine GTIN: Google kann das Produkt nicht zuordnen

Befund-Kennung: kennung

Was das heißt

Der Befund „Keine Produktkennung“ erscheint, wenn im Markup weder sku noch gtin (in einer der Formen gtin8, gtin12, gtin13, gtin14) noch mpn steht. Der Check meldet ihn als Warnung — das Produkt ist im Markup dann nur über seinen Namen identifizierbar.

Warum es zählt

Google schreibt: „Include all applicable global identifiers“ und empfiehlt, die jeweils spezifischste GTIN zu verwenden, weil sie das Produkt am genauesten abbildet. Über die GTIN erkennt Google, dass dein Artikel dasselbe Produkt ist, das auch andere anbieten — das ist die Grundlage dafür, in Produktübersichten und im Shopping-Bereich überhaupt zugeordnet zu werden. Die Artikelnummer (sku) ist zusätzlich die Klammer zwischen Markup, Feed und Warenwirtschaft.

So behebst du es

  • gtin13 für die EAN aus dem Herstellerdatenblatt und sku für die eigene Artikelnummer ergänzen; bei Ersatzteilen zusätzlich mpn.
  • Shopify: Feld „Barcode“ der Variante ist die GTIN, „SKU“ die Artikelnummer.
  • Shopware: „EAN“ und „Produktnummer“ am Artikel. WooCommerce: SKU unter „Inventar“, GTIN je nach Version als eigenes Feld oder Attribut. JTL: „EAN/GTIN“ und Artikelnummer aus der Wawi.
  • Eigenprodukte ohne EAN: nur sku setzen und das GTIN-Feld weglassen, statt eine Nummer zu erfinden.

Quelle

Google Search Central: „Merchant listing (Product, Offer) structured data“ (abgerufen 23.09.2026)

Keine Bewertungen im Markup: keine Sterne im Suchergebnis

Befund-Kennung: bewertung

Was das heißt

„Keine Bewertungen im Markup“ heißt: im Product steht weder aggregateRating noch ein einzelnes review. Der Check meldet das als Warnung und nicht als Fehler, denn Bewertungen sind ein empfohlenes Feld — und ohne echte Bewertungen im Shop gibt es hier auch nichts zu melden.

Warum es zählt

Die Sterne im Suchergebnis entstehen aus diesen Feldern. Google setzt dafür Regeln, die du kennen solltest, bevor du das Feld füllst: „Don't aggregate reviews or ratings from other websites“ und „Don't include fake or undisclosed incentivized reviews on your page or in your structured data markup“. Verstöße kann Google mit einer manuellen Maßnahme belegen. Die Bewertung muss außerdem auf der Seite sichtbar sein, nicht nur im Markup stehen.

So behebst du es

  • Erst echte Bewertungen einsammeln, dann auszeichnen. Ohne Bewertungen bleibt der Befund offen, und das ist in Ordnung.
  • Sobald Bewertungen vorliegen: aggregateRating mit ratingValue und ratingCount oder reviewCount ausgeben, aus derselben Quelle, die auch auf der Seite angezeigt wird.
  • Bewertungen von Portalen nicht in dein Produkt-Markup übernehmen. Wenn ein Bewertungsdienst das Markup selbst liefert, prüfen, ob dort deine eigenen Bewertungen stehen.
  • Die Sternanzeige ist kein Selbstzweck: Sie wirkt nur, wenn die Bewertungen zum Produkt gehören und auf der Seite lesbar sind.

Quelle

Google Search Central: „Review snippet (Review, AggregateRating) structured data“ (abgerufen 23.09.2026), Google Search Central: „Merchant listing (Product, Offer) structured data“ (abgerufen 23.09.2026)

Bewertung unvollständig: die Sterne bleiben trotzdem aus

Befund-Kennung: bewertung_felder

Was das heißt

Der Befund „aggregateRating unvollständig“ erscheint, wenn die Bewertung im Markup steht, aber ein Pflichtfeld fehlt — meist die Anzahl. Typisch ist ein Block mit ratingValue allein, ohne ratingCount und ohne reviewCount. Die Daten sind also da, nur nicht vollständig.

Warum es zählt

Google verlangt für AggregateRating den Durchschnittswert und mindestens eine Anzahl: „At least one of ratingCount or reviewCount is required.“ Fehlt sie, entstehen keine Sterne — der Aufwand, Bewertungen zu sammeln und auszugeben, verpufft an einem fehlenden Zahlenfeld. Das ist der Befund mit dem besten Verhältnis von Aufwand zu Wirkung in dieser Kategorie.

So behebst du es

"aggregateRating": {
  "@type": "AggregateRating",
  "ratingValue": 4.6,
  "reviewCount": 37
}
  • ratingValue mit Punkt als Dezimaltrennzeichen ausgeben, nicht mit Komma.
  • Google geht bei Zahlen von einer Fünf-Punkte-Skala aus; wenn du anders zählst, bestRating und worstRating mitgeben.
  • Die Zahl muss zu dem passen, was auf der Seite steht. Unterschiedliche Werte in Markup und Seite sind in unseren Audits ein häufiger Grund, warum Sterne wieder verschwinden.

Quelle

Google Search Central: „Review snippet (Review, AggregateRating) structured data“ (abgerufen 23.09.2026). Abgleich Markup und Seite: Erfahrungswert aus unseren Audits — keine Google-Vorgabe.

Varianten fehlen in der Produktgruppe: Google sieht kein Sortiment

Befund-Kennung: varianten

Was das heißt

Der Befund „Keine Varianten (hasVariant)“ erscheint, wenn eine ProductGroup im Markup steht, in der keine einzige Variante aufgeführt ist. Auf Shops mit getrennten Variantenseiten kann das richtig sein — dann muss aber jede Variantenseite per isVariantOf auf die Gruppe zeigen. Fehlt beides, kennt Google nur eine leere Hülle.

Warum es zählt

Die ProductGroup ist der Rahmen, mit dem Google Größen und Farben als ein Sortiment versteht statt als fremde Produkte. Google beschreibt zwei Muster: eine Seite, auf der alle Varianten wählbar sind, und mehrere Seiten, die sich gegenseitig kennen. Mit gruppierten Varianten wird die Seite zusätzlich für die Darstellung mit Variantenangaben in Händlereinträgen geeignet.

So behebst du es

  • Eine Seite für alle Varianten: hasVariant an der ProductGroup füllen, je Ausführung ein Product mit eigener Kennung, eigenen Merkmalen und eigenem Angebot.
  • Getrennte Variantenseiten: auf jeder Seite die ProductGroup wiederholen und das eigene Product per isVariantOf darauf verweisen lassen.
  • In Shopify, Shopware, WooCommerce und JTL sind Varianten im System längst gepflegt — die Aufgabe liegt fast immer im Template, das nur das erste Angebot ausgibt.
  • Bei Sortimenten mit sehr vielen Kombinationen zuerst eine Produktfamilie umbauen und im Rich-Results-Test prüfen, dann ausrollen.

Welche Texte die beiden Bauweisen verlangen — ein Text für die ganze Gruppe oder eigene Substanz je Seite: Produktbeschreibungen schreiben.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026)

Nur Verweise auf andere Variantenseiten: die eigenen Daten fehlen

Befund-Kennung: varianten_verweise

Was das heißt

Im Ergebnis steht „Nur … Verweise auf Varianten anderer Seiten“. Der Check hat in hasVariant nur Einträge gefunden, die aus einer Adresse bestehen — ohne Artikelnummer, ohne Merkmale, ohne Angebot. Die Seite zeigt also auf ihre Geschwister, beschreibt aber die Variante nicht, die man hier tatsächlich kaufen kann.

Warum es zählt

Für Shops mit getrennten Variantenseiten verlangt Google, dass jede Seite für sich vollständig ist: „each page must have full and self-contained markup for the entities defined on that page (meaning, off-page entities shouldn't be necessary to fully understand the markup on the page itself)“. Verweise allein erfüllen das nicht. Google müsste alle Nachbarseiten gelesen und im Kopf behalten haben, um diese Seite zu verstehen.

So behebst du es

  • Auf jeder Variantenseite die dort wählbaren Varianten voll ausschreiben: sku, Merkmale wie color und size, offers mit Preis und Währung.
  • Die Verweise auf die anderen Seiten dürfen bleiben — sie ergänzen die vollen Daten, sie ersetzen sie nicht.
  • Die ProductGroup mit Name und Gruppen-ID auf jeder dieser Seiten wiederholen; laut Google hat sie im Mehr-Seiten-Muster keine eigene kanonische Adresse.
  • Prüfen, ob dein Shop das Muster überhaupt braucht: Wenn alle Ausführungen auf einer Seite wählbar sind, ist das Ein-Seiten-Muster der einfachere Weg.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026)

Keine Gruppen-ID: Google erkennt die Varianten nicht als eine Familie

Befund-Kennung: gruppe_id

Was das heißt

Der Befund „Keine Gruppen-ID“ ist rot und erscheint, wenn weder die ProductGroup ein productGroupID hat noch die Varianten ein inProductGroupWithID. Der Text nennt dir, wenn vorhanden, auch die Zahl der Varianten ohne eigene Gruppenangabe.

Warum es zählt

Google verlangt die Kennung ausdrücklich: „Each product group must have a unique ID in its corresponding structured data markup, specified with the inProductGroupWithID property in variant Product properties or the productGroupID property in the ProductGroup property.“ Diese eine Nummer ist der Klebstoff der Produktfamilie. Ohne sie zerfällt das Sortiment für Google in lauter Einzelartikel, die zufällig ähnlich heißen.

So behebst du es

{
  "@type": "ProductGroup",
  "name": "Winterjacke Aachen",
  "productGroupID": "44E01",
  "hasVariant": [ ... ]
}
  • Als Wert die Eltern-Artikelnummer verwenden — in Shopware und JTL die Nummer des Vaterartikels, in Shopify die Produkt-ID beziehungsweise der Handle, in WooCommerce die SKU des variablen Produkts.
  • Es reicht, die ID an der ProductGroup zu setzen. Alternativ trägt sie jede Variante als inProductGroupWithID.
  • Aus unseren Audits: denselben Wert auch im Merchant-Center-Feed als Item-Group-ID verwenden, damit Feed und Seite dieselbe Familie beschreiben. Das steht nicht in der Varianten-Dokumentation, hat uns aber Abweichungen zwischen Feed und Seite erspart.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026). Hinweis zum gleichen Wert im Merchant-Center-Feed: Erfahrungswert aus unseren Audits — keine Google-Vorgabe.

Zwei verschiedene Gruppen-IDs: Variante und Gruppe widersprechen sich

Befund-Kennung: gruppe_id_konflikt

Was das heißt

„Gruppen-ID der Variante widerspricht der ProductGroup“ erscheint, wenn beide Angaben vorhanden sind, aber unterschiedliche Werte haben: die ProductGroup nennt zum Beispiel die Vaterartikelnummer, die Variante eine eigene Nummer. Der Check wertet das als Fehler, weil er hier nicht raten kann, was gilt.

Warum es zählt

Google lässt beide Wege zu, verlangt aber Übereinstimmung: Wenn die Kennung für die ProductGroup und für die Varianten angegeben ist, „they must match“. Bei zwei Werten muss Google entscheiden, welcher Familie die Variante gehört — und kann sie auch der falschen zuordnen. In unseren Audits entsteht das fast immer dadurch, dass zwei Quellen gleichzeitig arbeiten: das Theme und ein zusätzliches Markup-Plugin.

So behebst du es

  • Eine Quelle festlegen: entweder das Theme oder das SEO-Plugin gibt das Produkt-Markup aus, nicht beide.
  • Beide Felder auf denselben Wert setzen — die Artikelnummer des Vaterartikels, nicht die der Variante.
  • Am einfachsten ist es, inProductGroupWithID in den Varianten weglassen, wenn die ProductGroup ein productGroupID trägt. Ein Feld, ein Wert, kein Widerspruch.
  • Danach im Quelltext nach dem Feldnamen suchen: kommt er mehr als einmal vor, ist noch eine zweite Ausgabe aktiv.

Zwei Markup-Quellen nebeneinander gehören in beiden großen Systemen zu den Standardfunden: Shopify SEO, Shopware SEO.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026). Doppeltes Markup als Ursache: Erfahrungswert aus unseren Audits — keine Google-Vorgabe.

Produktgruppe ohne Namen: die einzige Pflichtangabe fehlt

Befund-Kennung: gruppe_name

Was das heißt

Der Befund „ProductGroup ohne Namen“ ist rot: im Markup steht eine ProductGroup, aber ohne name. Das ist kein Randfeld — es ist die einzige Pflichtangabe, die Google für die Produktgruppe nennt.

Warum es zählt

In der Liste der erforderlichen Eigenschaften der ProductGroup steht allein name: „The name of the ProductGroup (for example, 'Wool winter coat')“. Google ergänzt, dass die Namen der Varianten spezifischer sein sollen als der Gruppenname, zum Beispiel „Wool winter coat - green, size small“. Fehlt der Gruppenname, ist die Gruppe für Google unbenannt — und damit unbrauchbar, auch wenn alle Varianten sauber darunter hängen.

So behebst du es

  • Den Namen des Vaterartikels einsetzen, so wie er als Überschrift auf der Seite steht, ohne Größen- und Farbzusatz.
  • Bei den Varianten den Namen konkret machen: Produktname plus die Merkmale, nach denen sie sich unterscheiden.
  • In der Praxis liegt der Wert schon im System: Shopify „Titel“ des Produkts, Shopware und JTL Name des Vaterartikels, WooCommerce Titel des variablen Produkts. Meist fehlt nur die Zeile im Template.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026)

variesBy fehlt: unklar, wodurch sich die Varianten unterscheiden

Befund-Kennung: varies_by

Was das heißt

Der Befund „variesBy fehlt“ ist eine Warnung. Im Markup sind Varianten vorhanden, aber die Gruppe sagt nicht, worin sie sich unterscheiden — ob es also um Größe, Farbe, Material oder Muster geht. Der Check prüft danach auch, ob die Varianten die angekündigten Merkmale wirklich tragen; ohne variesBy fällt dieser Abgleich weg.

Warum es zählt

variesBy ist Googles Weg, die unterscheidenden Eigenschaften zu benennen: „Aspects by which the variants in the ProductGroup vary, (for example, size or color)“. Damit kann Google die Ausführungen sinnvoll gruppieren und in Händlereinträgen mit Variantenangaben anzeigen. Ohne dieses Feld bleibt eine Liste ähnlicher Produkte, deren Unterschied Google selbst erraten müsste.

So behebst du es

"variesBy": [
  "https://schema.org/color",
  "https://schema.org/size"
]
  • Die Werte als vollständige schema.org-Adresse angeben, nicht als Kurzname und nicht als deutsches Wort.
  • Nur die Merkmale nennen, die sich tatsächlich unterscheiden. Bei einem Schuh in einer Farbe und acht Größen steht dort nur die Größe.
  • Die Merkmale müssen dann auch in jeder Variante stehen, siehe Varianten ohne Merkmale.
  • In den Shop-Systemen entsprechen sie den Variantenachsen (Shopify „Optionen“, Shopware „Eigenschaften“, WooCommerce „Attribute“, JTL „Variationen“) — dort ist die Information schon hinterlegt.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026)

variesBy nennt etwas, das Google nicht unterstützt

Befund-Kennung: varies_by_wert

Was das heißt

„variesBy mit nicht unterstütztem Wert“ listet die Werte auf, die der Check nicht zuordnen kann — zum Beispiel „Länge“, „variant“ oder ein eigenes Attribut aus dem Shop. Der Befund ist eine Warnung: die übrigen Werte gelten weiter, der nicht unterstützte wird verworfen.

Warum es zählt

Google unterstützt für variesBy genau sechs Eigenschaften: color, size, suggestedAge, suggestedGender, material und pattern, jeweils als schema.org-Adresse. Alles andere ist kein Fehler im Sinne von kaputt, aber es leistet nichts. Wer seine Varianten nach einer eigenen Achse sortiert, muss sie auf eine dieser sechs abbilden — oder die Angabe weglassen.

So behebst du es

  • Eigene Achsen auf die unterstützten Eigenschaften übersetzen: „Farbvariante“ wird color, „Stoff“ wird material, „Dessin“ wird pattern.
  • Passt die Achse auf keine der sechs — etwa Länge oder Leistung — dann variesBy für diese Achse weglassen und die Eigenschaft als normales Produktmerkmal ausgeben.
  • Die Adresse genau so übernehmen, wie Google sie auflistet: color, size, material und pattern klein, suggestedAge und suggestedGender mit großem Binnenbuchstaben. Kleingeschrieben wären die beiden ungültig.
  • Nach der Korrektur prüfen, ob die Varianten dieselben Merkmale tragen — sonst wandert der Befund nur eine Zeile weiter.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026)

Varianten ohne eigene Kennung: Google kann sie nicht auseinanderhalten

Befund-Kennung: variante_kennung

Was das heißt

Im Ergebnis steht „… von … Varianten ohne eigene Kennung“ mit beiden Zahlen. Der Check hat Varianten gefunden, die keine sku und keine gtin tragen. Der Befund ist rot, weil die Kennung laut Google keine Empfehlung, sondern eine technische Voraussetzung ist.

Warum es zählt

In den Richtlinien für Varianten steht: „Each variant must have a unique ID in its corresponding structured data markup (for example, using the sku or gtin properties).“ Ohne diese Kennung sind zwei Varianten für Google dasselbe Ding in zwei Zeilen. Preis und Verfügbarkeit lassen sich dann nicht der richtigen Ausführung zuordnen — und genau das ist der Grund, warum die Gruppierung überhaupt gemacht wird.

So behebst du es

  • Je Variante sku aus der Warenwirtschaft ausgeben, zusätzlich gtin13, wenn eine EAN je Ausführung existiert.
  • Die Werte stehen in allen gängigen Systemen an der Variante, nicht am Vaterartikel: Shopify SKU und Barcode der Variante, Shopware Produktnummer der Variante, WooCommerce SKU der Variation, JTL Artikelnummer des Variationskindes.
  • Nicht die Nummer des Vaterartikels in alle Varianten schreiben — daraus wird der nächste Befund, siehe doppelte Kennungen.
  • Keine Kennungen aus der Datenbank-ID erfinden, wenn die echte Artikelnummer existiert: sie soll zu Feed und Rechnung passen.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026)

Zwei Varianten mit derselben Kennung: Google hält sie für eine

Befund-Kennung: variante_kennung_doppelt

Was das heißt

Der rote Befund „Varianten teilen sich eine Kennung“ nennt die Anzahl der Kennungen, die mehrfach vorkommen. Typischer Fall: das Template gibt in jeder Variante die Artikelnummer des Vaterartikels aus, oder dieselbe EAN steht bei allen Größen.

Warum es zählt

Google verlangt je Variante eine eindeutige Kennung — dieselbe Regel wie oben, hier von der anderen Seite: „Each variant must have a unique ID in its corresponding structured data markup“. Doppelte Kennungen sind schlimmer als fehlende, weil sie eine falsche Information transportieren. Google darf daraus schließen, dass es ein Produkt mit mehreren Preisen gibt, und zeigt am Ende den falschen.

So behebst du es

  • Im Template prüfen, ob die Ausgabe wirklich in der Variantenschleife steht und nicht auf das Produkt zugreift.
  • EANs nur dort ausgeben, wo sie je Ausführung gepflegt sind. Steht überall dieselbe, das Feld weglassen und nur die sku je Variante liefern.
  • Kurzer Selbsttest: Quelltext öffnen, nach "sku" suchen, Werte vergleichen. Wenn sie gleich sind, ist der Fehler gefunden.
  • Nach dem Fix denselben Prüfschritt auf ein Produkt mit vielen Kombinationen anwenden, dort fällt es am ehesten wieder auf.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026)

GTIN im falschen Format: die Nummer wird verworfen

Befund-Kennung: variante_gtin_format

Was das heißt

Der Befund „… Variante(n) mit ungültiger GTIN“ zählt die Varianten, deren GTIN nicht dem erwarteten Format entspricht. Der Check rechnet die Prüfziffer nach und sieht sich die Länge an: gültig sind 8, 12, 13 oder 14 Stellen, nur Ziffern. Häufige Ursachen sind eine abgeschnittene führende Null, ein Leerzeichen oder eine Nummer in URL-Form.

Warum es zählt

Google verlangt für die GTIN die numerische Form und nennt die URL-Form ausdrücklich als nicht unterstützt; außerdem empfiehlt Google die spezifischste GTIN-Eigenschaft, die zum Produkt passt. Eine Nummer mit falscher Prüfziffer ist keine GTIN, sondern eine Ziffernfolge — Google kann dein Angebot damit nicht dem Produkt zuordnen, das andere Händler auch führen. Der Rest des Markups bleibt gültig, dieser Teil fällt weg.

So behebst du es

  • Die GTIN unverändert aus der Warenwirtschaft übernehmen, ohne Leerzeichen, Bindestriche oder Präfixe.
  • Führende Nullen erhalten: das Feld als Text ausgeben, nicht als Zahl. Genau hier entstehen aus 13 Stellen zwölf.
  • Die passende Eigenschaft wählen: gtin13 für die EAN, gtin12 für UPC, gtin14 für Umkartons.
  • Fehlt die echte Nummer, das Feld weglassen. Eine falsche GTIN ist schlechter als keine.

Quelle

Google Search Central: „Merchant listing (Product, Offer) structured data“ (abgerufen 23.09.2026), Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026)

Leerzeichen in der SKU: sieht harmlos aus, ist aber unzulässig

Befund-Kennung: variante_sku_format

Was das heißt

Der Befund „… Variante(n) mit Leerzeichen in der SKU“ ist eine Warnung und zählt die betroffenen Varianten. Der Check schaut nur auf das Format, nicht auf den Inhalt — er kann dir nicht sagen, ob der Wert überhaupt deine echte Artikelnummer ist. Das ist die zweite Frage, die du bei diesem Befund prüfen solltest.

Warum es zählt

Für die sku nennt Google eine klare Formatregel: „The sku value must not contain any whitespace characters (as defined by the Unicode whitespace property)“, empfohlen werden ausschließlich ASCII-Zeichen. Über diese Formatfrage hinaus ist der Befund für uns ein Hinweis auf die Datenpflege: Wenn in der SKU ein Leerzeichen und ein Zusatz wie „Gr. 44“ steht, kommt der Wert meist aus einem Textfeld statt aus der Artikelnummer — und dann passt er nicht zu Feed, Warenwirtschaft und Rechnung.

So behebst du es

  • Leerzeichen entfernen und stattdessen Bindestrich oder Unterstrich verwenden, in der Datenquelle und nicht erst im Template.
  • Prüfen, woher der Wert kommt: Steht dort wirklich die Artikelnummer, oder eine zusammengesetzte Bezeichnung? Im zweiten Fall auf das Artikelnummer-Feld umstellen.
  • Umlaute und Sonderzeichen vermeiden, damit der Wert in Feeds und Exporten unverändert bleibt.
  • Denselben Wert überall verwenden: Markup, Merchant-Center-Feed und Warenwirtschaft sollen dieselbe Nummer nennen.

Quelle

Formatregel: Google Search Central: „Merchant listing (Product, Offer) structured data“ (abgerufen 23.09.2026). Einschätzung zur Datenherkunft: Erfahrungswert aus unseren Audits — keine Google-Vorgabe.

Varianten ohne Farbe und Größe: das Unterscheidungsmerkmal fehlt

Befund-Kennung: variante_eigenschaft

Was das heißt

Im Ergebnis steht „… Varianten ohne die Merkmale aus variesBy“. Die Gruppe kündigt also an, dass sich die Ausführungen zum Beispiel in Farbe und Größe unterscheiden, aber in den Varianten selbst fehlen die Felder color oder size. Der Check meldet das als Warnung und nennt die Zahl der betroffenen Varianten.

Warum es zählt

Google formuliert die Merkmale in den Varianten nicht als Pflicht, zeigt sie aber in jedem Beispiel der Dokumentation und empfiehlt, die Beschreibung der Variante mit den unterscheidenden Worten wie Farbe, Größe oder Material zu füllen. Aus unserer Sicht ist der Nutzen einfach: Wenn die Variante nicht sagt, welche Ausführung sie ist, bleibt vom gruppierten Sortiment nur eine Aufzählung von Artikelnummern.

So behebst du es

  • In jeder Variante die Felder ausgeben, die in variesBy genannt sind — bei Kleidung typischerweise color und size, dazu passend material oder pattern.
  • Die Werte so schreiben, wie der Kunde sie im Shop sieht („Dunkelblau“, „44“), nicht als interne Codes.
  • Ein Wert je Feld. Für Größenangaben mit Systemen (EU, UK) sieht Google ein eigenes Objekt vor; im Zweifel den sichtbaren Text verwenden.
  • Die Merkmale liegen in allen gängigen Systemen an der Variante — der Fix sitzt fast immer im Template, nicht in den Daten.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026), Google Search Central: „Merchant listing (Product, Offer) structured data“ (abgerufen 23.09.2026). Bewertung des Nutzens: Erfahrungswert aus unseren Audits — keine Google-Vorgabe.

Varianten ohne eigene Adresse: Google kann sie nicht einzeln aufrufen

Befund-Kennung: variante_url

Was das heißt

„… Varianten ohne eigene URL“ heißt: der Check hat in den Varianten weder am Angebot noch am Produkt eine Adresse gefunden. Er prüft dabei beide Stellen, weil Google beide zulässt. Ohne Adresse weiß Google nicht, wie man genau diese Ausführung aufruft.

Warum es zählt

Die Richtlinie ist deutlich: „The site must have the ability to preselect each variant directly with a distinct URL (using URL query parameters)“ — und diese Vorauswahl muss das richtige Bild, den richtigen Preis, die richtige Verfügbarkeit zeigen und den Artikel in den Warenkorb legen lassen. Im Markup ist die Adresse nicht Pflicht, aber sie ist der direkte Weg, Google diese Adressen zu zeigen, statt zu hoffen, dass es sie findet.

So behebst du es

  • Erst im Shop prüfen: Öffnet eine Adresse wie /winterjacke?farbe=blau&groesse=44 die Seite mit vorausgewählter Ausführung? Wenn nicht, ist das die eigentliche Aufgabe, und sie liegt im Shop, nicht im Markup.
  • Dann je Variante die url ausgeben, am offers-Objekt oder am Product, mit genau dieser vorauswählenden Adresse.
  • Bei getrennten Variantenseiten ist es die jeweilige Produktseite.
  • Die Gruppen-Adresse bleibt die Basisadresse ohne Variantenparameter; laut Google gibt es im Ein-Seiten-Muster nur eine kanonische Adresse für die Gruppe.

Wie die Systeme Variantenadressen bauen — Shopify über ?variant=, Shopware über eigene SEO-URLs je Variante samt Canonical-Einstellung: Shopify SEO und Shopware SEO.

Quelle

Google Search Central: „Product variant structured data (ProductGroup, Product)“ (abgerufen 23.09.2026)

In welcher Reihenfolge du das abarbeitest

Aus der Praxis hat sich diese Reihenfolge bewährt: erst überhaupt Markup ausgeben und lesbar machen, dann die Pflichtfelder, dann die Varianten, dann die Kür.

  1. Markup vorhanden und fehlerfrei lesbar — Product-Markup, JSON-LD-Fehler, ein Produkt je Seite.
  2. Pflicht- und Kernfelder — Name, Bild, Angebot, dazu Kennung, Marke, Beschreibung.
  3. Varianten sauber gruppieren — Gruppen-ID, hasVariant, Kennung je Variante, Adresse je Variante.
  4. Feinschliff — variesBy, Merkmale je Variante, Bewertungsfelder.

Und ein Hinweis, der viel Zeit spart: Bau die Korrektur an einem Produkt fertig, prüf sie im Rich-Results-Test und im Website-Check, und roll sie erst dann über das Template auf das Sortiment aus. Ein Fehler im Template ist ein Fehler auf allen Produktseiten.

Prüf deine Domain. Der Website-Check holt deine Seite ab, prüft Produktdaten, Markup, Technik, Inhalt, Vorschau, Indexierung und KI-Sichtbarkeit und nennt jeden Befund mit Namen. Das Ergebnis des Website-Checks verlinkt bei jedem Befund genau hierher, damit du nicht nur weißt, was fehlt, sondern auch, was du damit machst.

Kurz beantwortet.

Brauche ich Product-Markup, damit meine Produkte in KI-Antworten auftauchen?

Nicht als Voraussetzung. Google schreibt im KI-Leitfaden: „Structured data isn't required for generative AI search“ — eine Seite muss indexiert und snippet-berechtigt sein. Für Rich Results in der Suche bleibt das Markup wichtig, und Google nennt für Shops zusätzlich Merchant Center und Unternehmensprofil als Hebel, damit Produkte in KI-Antworten und in den übrigen Suchergebnissen sichtbar werden (abgerufen 23.09.2026).

Was ist der Unterschied zwischen Produkt-Snippet und Händlereintrag?

Google unterscheidet zwei Klassen von Produktdaten: Produkt-Snippets für Seiten, auf denen man das Produkt nicht direkt kaufen kann, und Händlereinträge für Seiten, auf denen Kunden bei dir kaufen. Händlereinträge verlangen mehr Felder — unter anderem ein echtes Angebot mit Preis — und ermöglichen dafür Angaben wie Verfügbarkeit, Versand und Rückgabe. Wer die Felder für Händlereinträge liefert, ist in der Regel auch für Produkt-Snippets geeignet.

Muss ich alle roten Befunde zuerst beheben?

Ja, die roten zuerst. Sie betreffen Pflichtangaben oder Widersprüche: kein Product-Markup, kaputtes JSON-LD, fehlende Gruppen-ID, doppelte Variantenkennungen. Solange einer davon offen ist, wirken die Verbesserungen an den gelben Punkten nicht, weil Google die Daten gar nicht oder falsch zuordnet.

Wie lange dauert es, bis Google die Korrekturen sieht?

Das steuert Google, nicht du. Die Dokumentation sagt nur, dass es nach dem Veröffentlichen mehrere Tage dauern kann, bis eine Seite gefunden und gecrawlt wird; nach einer Änderung empfiehlt Google, die Seite mit der URL-Prüfung zu testen, ein erneutes Crawlen anzufordern und eine Sitemap bereitzustellen (Google Search Central, „Merchant listing (Product, Offer) structured data“, abgerufen 23.09.2026). Erfundene Zeitangaben gibt es hier von mir nicht — prüf nach dem Fix den Rich-Results-Test und danach die Search Console.

Sollen wir uns deine Produktseiten gemeinsam ansehen?

20 Minuten, datenbasiert, unverbindlich. Ich schaue mir vorher an, was dein Shop ausgibt — du bekommst keine Folien, sondern die Liste der Felder, die fehlen.

Kostenlosen Check anfragen