Methode und Ergebnis stammen aus unserem Test vom Mai und Juni 2018. Den heutigen Stand bei Google beschreibt der Abschnitt Was sich seitdem geändert hat.
- Google übernimmt ein per JavaScript gesetztes Canonical beim Rendern und empfiehlt das Canonical im Quelltext. Steht im Quelltext schon eins, darf JavaScript es nicht auf eine andere URL ändern.
- Im Mai 2018 hieß es in einem Google-Vortrag noch, Canonicals im gerenderten HTML würden nicht beachtet. Wir haben das geprüft. Ein Skript im Google Tag Manager setzte auf vier Kategorie- und Autorenseiten ein Canonical auf die Blog-Übersicht, nur im gerenderten HTML. Zwei ähnliche Seiten blieben als Kontrolle unverändert.
- Google hat alle vier Testseiten kanonisiert, nach 10, 23, 24 und 34 Tagen. Die Search Console zeigte die Seiten trotzdem mit einem anderen Status.
Der Anlass
Auf der Google I/O im Mai 2018 gab es einen Vortrag zu JavaScript-SEO. Darin hieß es, Google suche Canonical-Tags nicht im gerenderten HTML. Das passte nicht zu unserem Test mit dem Google Tag Manager aus dem Jahr davor. Dort hatte ein per Tag Manager eingefügtes Canonical gewirkt.
Dieser frühere Befund beruhte allerdings auf einer einzigen URL. Bei Canonicals ist das ein bekanntes Problem. Ein Canonical funktioniert nur zwischen sehr ähnlichen Seiten, und die kanonisiert Google oft auch ohne Canonical. Ein einzelner Treffer kann also Zufall sein. Deshalb haben wir den Test einen Tag nach dem Vortrag mit mehr Seiten und einer Kontrollgruppe neu aufgesetzt.
Uns ging es um die Frage, wie Google Websites behandelt, die auf clientseitiges JavaScript angewiesen sind. Ob du Canonicals per JavaScript setzen solltest, ist eine andere Frage. Die Antwort darauf steht weiter unten.
Aufbau des Tests
Am 11. Mai 2018 fügte der Google Tag Manager auf vier Seiten ein Canonical auf die Blog-Übersicht ein. Der Quelltext dieser Seiten enthielt kein Canonical auf die Übersicht. Das Skript sah sinngemäß so aus.
| Seite | Rolle | Stand am 11.05.2018 |
|---|---|---|
| Englische Kategorie „SEO experiments“ | Test, Canonical auf die Blog-Übersicht | nicht kanonisiert |
| Englische Kategorie „SEO for website relaunches“ | Test, Canonical auf die Blog-Übersicht | nicht kanonisiert |
| Deutsche Kategorie „SEO für Website-Relaunches“ | Test, Canonical auf die deutsche Blog-Übersicht | nicht kanonisiert |
| Deutsche Autorenseite von Michael Weber | Test, Canonical auf die Blog-Übersicht | von Google bereits auf die englische Autorenseite kanonisiert (fehlendes hreflang) |
| Deutsche Autorenseite von Eoghan Henn | Kontrolle, kein Canonical | – |
| Englische Autorenseite von Michael Weber | Kontrolle, kein Canonical | – |
Die Kontrollseiten sollten zeigen, ob Google solche Seiten auch ohne unser Canonical auf die Übersicht zusammenlegt. Wäre das passiert, hätte der Test nichts bewiesen. Den Stand haben wir damals mit der Suchabfrage info: geprüft, die die von Google gewählte URL anzeigte.
Ergebnis
| Datum | Tage nach dem Einfügen | Seite kanonisiert |
|---|---|---|
| 21.05.2018 | 10 | Englische Kategorie „SEO for website relaunches“ |
| 03.06.2018 | 23 | Englische Kategorie „SEO experiments“ |
| 04.06.2018 | 24 | Deutsche Kategorie, auf die deutsche Blog-Übersicht |
| 13.06.2018 | 34 | Deutsche Autorenseite von Michael Weber |
Alle vier Testseiten landeten auf dem Ziel des per JavaScript eingefügten Canonicals. Keine dieser Seiten war vorher je so kanonisiert worden, soweit wir wissen.
Indexierung beantragen hat kaum geholfen
Am 11. Mai haben wir für alle Testseiten in der Search Console „Abrufen und rendern“ mit „Indexierung beantragen“ genutzt. Am 22. Mai folgten die Blog-Übersichten mit allen verlinkten Seiten, am 1. Juni noch einmal die drei Seiten, die bis dahin nicht kanonisiert waren. Bei neuen URLs wirkt das sonst fast sofort. Hier blieb der erste Antrag ohne erkennbare Wirkung. Der Antrag vom 1. Juni hat die Änderungen am 3. und 4. Juni womöglich angestoßen. Vielleicht muss Google eine Seite auch mehrmals rendern, bevor es ein eingefügtes Canonical übernimmt.
Die Search Console zeigte etwas anderes
Im damaligen Bericht zur Indexabdeckung standen die kanonisierten Testseiten als „Eingereichte URL nicht als kanonisch ausgewählt“. Erwartet hätten wir „Alternative Seite mit richtigem kanonischen Tag“. Unsere Erklärung war, dass der Bericht nach den offiziellen Regeln arbeitete. Er übersah Canonicals, die nur im gerenderten HTML stehen, obwohl die Suche sie nutzte.
Unsere Schlussfolgerung
- Google hat Canonicals genutzt, die nur im gerenderten HTML standen, entgegen der Aussage aus dem Vortrag.
- Bis zur Übernahme vergingen bei einigen Seiten mehr als drei Wochen.
- „Indexierung beantragen“ hat das Rendern nicht erkennbar beschleunigt.
- Die Search Console hat die eingefügten Canonicals in ihren Berichten übergangen.
- Die Aussage aus dem Vortrag beruhte womöglich auf einem Missverständnis oder einem Fehler.
Was hat sich seitdem geändert?
Google beschreibt das Verhalten heute selbst. Laut der Dokumentation zu JavaScript-SEO übernimmt die Google Suche ein per JavaScript eingefügtes Canonical beim Rendern. Empfohlen wird das weiterhin nicht. Google rät, das Canonical im HTML zu setzen. Setzt du es per JavaScript, soll es dieselbe URL nennen wie das Canonical im Quelltext. Geht das nicht, lässt du es im Quelltext weg. Auf der Seite darf am Ende nur ein Canonical stehen. Mehrere oder widersprüchliche Canonicals führen laut Google zu unerwarteten Ergebnissen.
Die Werkzeuge von damals gibt es so nicht mehr. Die von Google gewählte kanonische URL zeigt heute die URL-Prüfung der Search Console, neben dem Canonical, das du angegeben hast. Der Bericht zur Indexabdeckung heißt jetzt „Seitenindexierung“. Wie er heute mit Canonicals aus dem gerenderten HTML umgeht, haben wir nicht neu getestet. KI-Crawler wie GPTBot und ClaudeBot führen laut Vercel (Dezember 2024) kein JavaScript aus und sehen ein solches Canonical gar nicht. Die Grundlagen stehen im Ratgeber Canonical.
So prüfst du deine Canonicals
- Setze das Canonical im Quelltext, mit absoluter URL und nur einmal im Head.
- Prüfe, ob ein Skript, ein Plugin oder ein Tag im Tag Manager ein zweites Canonical einfügt oder das vorhandene ändert.
- Vergleiche Quelltext und gerendertes HTML. Das folgende Skript zeigt beide Werte.
- Kontrolliere in der URL-Prüfung, welche URL Google als kanonisch gewählt hat.
Häufige Fehler
- Im Quelltext steht ein Canonical auf die Seite selbst, und JavaScript ändert es auf eine andere URL.
- Ein Tag im Tag Manager fügt ein Canonical hinzu, und das alte bleibt stehen.
- Ein Skript schließt den Head zu früh. Das Canonical landet dann im Body und zählt nicht.
- Ein Ergebnis wird nach wenigen Tagen bewertet, obwohl Google für das Rendern länger braucht.
Häufige Fragen
Beachtet Google ein Canonical, das per JavaScript gesetzt wird?
Ja. In unserem Test von 2018 hat Google alle vier Testseiten nach dem eingefügten Canonical kanonisiert. Heute bestätigt die Google-Dokumentation, dass die Suche ein eingefügtes Canonical beim Rendern übernimmt.
Darf JavaScript ein vorhandenes Canonical ändern?
Google rät davon ab. Das Canonical per JavaScript soll dieselbe URL nennen wie das im Quelltext. Ist im Quelltext keines, darf JavaScript es setzen.
Kann ich Canonicals mit dem Google Tag Manager setzen?
Technisch ja, das zeigt der Test. Als Dauerlösung taugt es wenig, weil die Angabe erst nach dem Rendern wirkt und KI-Crawler ohne Rendering sie nicht sehen.
Wie lange dauert es, bis Google ein JavaScript-Canonical übernimmt?
In unserem Test 10 bis 34 Tage. Das ist eine Messung von 2018 auf weniger wichtigen Seiten.
Wo sehe ich, welches Canonical Google gewählt hat?
In der URL-Prüfung der Search Console unter „Von Google ausgewählte kanonische URL“.
Quellen
Abgerufen am 15.10.2026. Ist eine Angabe veraltet oder fehlt etwas, schreib uns.
- Google, JavaScript-SEO-Grundlagen: https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics · Stand 04.03.2026
- Google, Kanonische URL angeben: https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls · Stand 10.07.2026
- Search-Console-Hilfe, URL-Prüftool: https://support.google.com/webmasters/answer/9012289 · Abruf 15.10.2026
- Search-Console-Hilfe, Bericht Seitenindexierung: https://support.google.com/webmasters/answer/7440203 · Abruf 15.10.2026
- Vercel, The rise of the AI crawler: https://vercel.com/blog/the-rise-of-the-ai-crawler · 17.12.2024