Unser Merch-Shop bestand die SEO-Prüfung mit 13 von 13 Punkten. Title, Canonical, Description, strukturierte Daten — alles korrekt. Für Google war die Seite trotzdem praktisch leer.
65 Produkte, 7 Kategorien, 20 Motive. Nichts davon stand im ausgelieferten HTML. Der Katalog wurde zur Laufzeit von einer Cloud Function geholt und per JavaScript in die Seite geschrieben.
Der Test, der es sofort zeigt
Ein Produktname aus der Datenbank, gesucht im ausgelieferten HTML — mehr braucht es nicht:
curl -s https://example.de/shop | grep -c 'Koi Parallax'
→ 0Null Treffer heißt: Was der Browser nach dem Laden anzeigt, hat mit dem, was ausgeliefert wurde, nichts zu tun. Google bekommt ein Regal mit ordentlichem Schild und ohne Ware.
„Google rendert doch JavaScript"
Das stimmt — und ist trotzdem kein Gegenargument. Google rendert in einem zweiten Durchgang, der später kommt und nicht garantiert ist. Zwischen dem ersten Abruf und dem Rendern können Tage liegen. Für ein Sortiment, das sich ändert, ist das der Unterschied zwischen indexiert und unsichtbar.
Dazu kommt: Andere Systeme rendern gar nicht. Sozial-Netzwerk-Vorschauen, Preisvergleiche, viele KI-Crawler lesen das rohe HTML. Was dort nicht steht, existiert für sie nicht.
Warum die Prüfung nichts merkt
SEO-Werkzeuge bewerten, was da ist: Ist ein Title gesetzt? Stimmt das Canonical? Sind die strukturierten Daten valide? Alles Fragen nach vorhandenen Elementen. Keines der Werkzeuge fragt, ob der eigentliche Inhalt der Seite — das Sortiment — überhaupt vorkommt.
Ein leeres Regal mit ordentlichem Schild besteht jede Schild-Prüfung.
Die Lösung ist nicht besseres Markup
Der naheliegende Reflex — mehr strukturierte Daten, sauberere Produkt-Schemas — behebt nichts. Das Markup war bereits korrekt. Es beschrieb nur Produkte, die im HTML nicht standen.
Was hilft: eine statische Seite pro Produkt, erzeugt aus derselben Datenquelle, aus der auch die dynamische Ansicht liest. Dann kommen neue Produkte automatisch mit, und im HTML steht, was die Seite tatsächlich anbietet. Bei uns wurden daraus 91 Seiten — vorher waren null Produkte auffindbar.
Die interaktive Ansicht bleibt bestehen. Sie ist die Oberfläche für Menschen; die statischen Seiten sind das, was Maschinen lesen.
Was wir daraus mitnehmen
Vor jeder SEO-Bewertung eines Shops, Katalogs oder einer Galerie steht dieser eine Befehl: einen echten Datensatznamen im ausgelieferten HTML suchen. Ist die Antwort null, ist die Seite leer — egal, wie viele Punkte die Prüfung vergibt.