Warum können Parameter einen Grund für Duplicate Content darstellen?

In vielen Fällen, in denen eine Seite mit internem Duplicate Content zu kämpfen hat, können URL Parameter Schuld an einem Großteil der Duplikate sein.

Was sind Parameter

Parameter sind Anweisungen die an die eigentliche URL einer Seite angehängt werden, um den Inhalt auf eine bestimmte Art zu beeinflussen. Einer der häufigsten Anwendungsfälle ist das Sortieren einzelner Produkte in einem Onlineshop nach Farbe, Größe und anderen Merkmalen.

Ein Beispiel dafür könnte folgende URL sein.

https://shop.domain.de/schuhe/herrenschuhe/marke.html?farbe=schwarz&groesse=42&material=leder

In diesem Beispiel weiss das System jetzt, dass die Seite marke.html nur mit den Daten für schwarze Lederschuhe in Größe 42 ausgeliefert werden soll.

Parameter lassen sich daran erkennen, dass der erste Parameter einer Kette mit einem Fragezeichen (?) eingeleitet wird und alle weiteren Parameter mit dem kaufmännischen Und (&) verbunden sind. Zudem lassen sich Parameter in beliebiger Reihenfolge zusammensetzen.

Weitere, häufige Anwendungsfälle für Parameter sind interne Suchen, SessionIDs sowie die Anzeige der Druckversion einer Seite.

Warum können Parameter Duplicate Content erzeugen?

Das Konzept einer URL sieht vor, dass es sich dabei um eine eindeutige Adresse einer Ressource auf einem Server handelt. Ein Beispiel hierfür ist der Unterschied zwischen https://www.domain.de/hallo-welt.html und https://www.domain.de/Hallo-welt.html – hierbei handelt es sich, rein technisch gesehen, um zwei unterschiedliche URLs, da zwischen Groß- und Kleinschreibung unterschieden wird.

Dies bedeutet für unsere Shopseite von oben, dass wir unsere Filter unterschiedlich zusammenwürfeln könnten, und dann auf all diesen URLs die gleichen Informationen vorfinden würden:

https://shop.domain.de/schuhe/herrenschuhe/marke.html?farbe=schwarz&groesse=42&material=leder
https://shop.domain.de/schuhe/herrenschuhe/marke.html?farbe=schwarz&material=leder&groesse=42
https://shop.domain.de/schuhe/herrenschuhe/marke.html?groesse=42&farbe=schwarz&material=leder
https://shop.domain.de/schuhe/herrenschuhe/marke.html?groesse=42&material=leder&farbe=schwarz
https://shop.domain.de/schuhe/herrenschuhe/marke.html?material=leder&farbe=schwarz&groesse=42
https://shop.domain.de/schuhe/herrenschuhe/marke.html?material=leder&groesse=42&farbe=schwarz

Für Google sind alle URLs einzigartig, der Inhalt ist jedoch immer derselbe. Ein klassischer Fall von Duplicate Content.

Die Anzahl der möglichen URLs ist dabei die Fakultät (n!) der genutzten Filter. Würden wir also einen weiteren Filter auswählen, zB typ=halbschuh, könnten wir schon 24 (1x2x3x4) verschiedene URL Kombinationen erstellen, die alle die gleichen Ergebnisse liefern. Bei 5 Filtern sind es dann 120 URLs mit identischem Inhalt.

Was kann ich dagegen tun?

Es gibt verschiedene Wege, Duplicate Content durch Parameter zu umgehen. Diese unterscheiden sich im Aufwand und in der möglichen Umsetzung voneinander und wir möchten eine kleine Auswahl vorstellen. Beachte hierbei bitte, dass alle Anpassungen einen mehr oder minder großen Eingriff in die Funktionsweise der Seite darstellen. Die Umsetzung sollte daher gut durchdacht werden. Viele der Möglichkeiten sind zudem sehr technisch und benötigen Entwicklerressourcen.

Möglichkeit 1: keine unnötigen Parameter nutzen

Dies ist eine technisch aufwendigere, dafür jedoch saubere Möglichkeit. In den meisten Fällen lassen sich Parameter, besonders bei SessionIDs, komplett vermeiden, und auch Druckversionen der Seite lassen sich per CSS erstellen, ohne dass eine neue URL erstellt werden muss.

Möglichkeit 2: Parameter sortieren

Diese Möglichkeit lässt sich besonders bei vielen Filtern in Betracht ziehen.

Ihr gebt eurem System eine spezifische Parameterreihenfolge vor und euer Server setzt die URLs, bei neuen Parametern, so zusammen, dass es immer nur maximal eine URL pro Filterkombination geben kann.

Für unser Beispiel von oben könnte dies so aussehen, dass die Parameter-Reihenfolge immer aus Farbe > Größe > Material > Typ bestehen soll. Wenn dann bei der URL https://shop.domain.de/schuhe/herrenschuhe/marke.html?farbe=schwarz&material=leder der „Größe“ Filter zusätzlich ausgewählt wird, erstellt das System die URL https://shop.domain.de/schuhe/herrenschuhe/marke.html?farbe=schwarz&groesse=42&material=leder.

Möglichkeit 3: Google seine Parameter erklären

Google bietet über die Search Console (ehemals Webmaster Tools) die Möglichkeit an, URL Parameter für Google zu kategorisieren.

Google hat hierzu ein eigenes Hilfedokument geschrieben, welches man sich zu Herzen nehmen sollte. Das URL-Parameter-Tool kann ein zweischneidiges Schwert sein, da es bei falscher Benutzung dazu führen kann, dass Google Seiten nicht mehr indexiert, die in den Index gehören.

Wenn Ihr diesen Weg nutzt und eure Domain im Optimizer analysiert, bietet es sich an auch in den Optimizer Einstellungen, unter Projekt-Management > Crawler, die gewünschten Parameter auszuschließen.

Möglichkeit 4: rel=“canonical“

Diese Möglichkeit ist, in vielen Fällen, eine der beiden am einfachsten umsetzbaren Strategien, wenn auch nicht die sauberste. Der Grund dafür liegt darin, dass es für die allermeisten Content Management Systeme Plugins gibt, die das Setzen von rel=“canonical“ Auszeichnungen ermöglichen, wodurch die Änderungen nicht erst durch die IT umgesetzt werden müssen. Zudem ist diese Auszeichnung für alle großen Suchmaschinen auslesbar.

Hier wählt ihr für die entsprechenden Filterkombination eine kanonische Version aus und alle anderen URLs werden mit dem Canonical-Tag versehen.

Wenn wir also https://shop.domain.de/schuhe/herrenschuhe/marke.html?farbe=schwarz&groesse=42&material=leder als kanonische Version auserkohren haben, bekommen die 5 anderen URLs, mit den identischen Filtern, dasselbe Canonical-Tag in den <head> Bereich des HTML Quellcodes:

<link rel="canonical" href="https://shop.domain.de/schuhe/herrenschuhe/marke.html?farbe=schwarz&groesse=42&material=leder">

Möglichkeit 5: Noindex

Die zweite Herangehensweise, die über Plugins in den meisten Content Management Systemen genutzt werden kann ist das setzen des

<meta robots="noindex">

Tags im <head> der Seite. Hiermit gebt ihr Google (und anderen Suchmaschinen) zu verstehen, dass dieses Dokument nicht mit in den Index übernommen werden soll. Ihr könnt euch also überlegen, welche Seiten für Nutzer wichtig sind, aber im Google Index nichts zu suchen haben.

Wird dem robots meta-tag keine weitere Answeisung beigefügt, verhält es sich so als ob die Anweisung „follow“ zusätzlich eingetragen wurde. Dies bewirkt, dass Suchmaschinen den Links auf dem jeweiligen Dokument, während des Crawls, weiterhin folgen, auch wenn das Dokument selbst nicht in den Index übertragen wird.

<meta robots="noindex, follow">

Für unsere Beispielfilter würde dies bedeuten, dass Google zwar den weiterführenden Links auf den gefilterten Seiten folgt, die Filterseiten selbst jedoch nicht im Index hat.

Canonical und Noindex

Google rät dazu, diese beiden Angaben nicht miteinander zu kombinieren.

Fazit

URL Parameter können schnell zu einer unübersichtlichen Anzahl an doppelten Inhalten mit exakt dem gleichen Content führen. Der Umgang mit Parametern ist dabei nicht immer trivial und, abhängig vom genutzten Content Management System, kann es sein, dass man viele Einstellungen nicht ohne Programierkenntnisse vornehmen kann.

In diesen Fällen bietet Google, über die Google Search Console, eine praktikable Möglichkeit die Parameter einer Domain genauer zu definieren. Es ist jedoch notwendig sich genau mit dem URL-Parameter-Tool auseinanderzusetzen da man sich damit leider recht leicht selber in den Fuß schießen kann.

In den meisten Fällen ist es daher einfacher, entweder mit der rel=“canonical“ oder der robots=“noindex“ Anweisung zu arbeiten. Diese bitte nicht zusammen nutzen, da ihr Google damit verwirren könnt.

Related Topics

SEO-Themen von A bis Z