ItemList Schema Markup ist eines der mächtigsten, aber gleichzeitig am häufigsten falsch eingesetzten Schema-Typen. Wer es richtig implementiert, kann mit Karussell-Rich-Results und strukturierten Listen die Klickrate auf bis zu dreifache Werte steigern — wer es falsch macht, riskiert manuelle Abstrafungen durch Google. Dieser vertiefte Leitfaden zeigt dir alle Einsatzbereiche, Properties und Praxisbeispiele.
ItemList ist ein Schema.org-Typ, der eine geordnete oder ungeordnete Sammlung von Elementen beschreibt. Er wird in der Google-Suche vor allem für Karussell-Rich-Results genutzt — die visuell auffälligen horizontalen Karten, die bei bestimmten Suchanfragen ganz oben erscheinen.
Wichtig zu verstehen: ItemList selbst erzeugt kein eigenständiges Rich Result. Es ist ein Wrapper-Typ, der andere Schema-Typen (Recipe, Movie, Course, Article usw.) in einer Liste zusammenfasst. Google zeigt Karussells nur dann an, wenn die enthaltenen Elemente selbst ausreichend strukturierte Daten haben.
Google unterstützt ItemList explizit in diesen Kontexten:
{
"@context": "https://schema.org",
"@type": "ItemList",
"name": "Die 10 besten DSLR-Kameras 2026",
"description": "Unsere Redaktion hat die besten DSLR-Kameras für Einsteiger und Profis getestet",
"url": "https://example.de/kameras/beste-dslr",
"numberOfItems": 10,
"itemListOrder": "https://schema.org/ItemListOrderDescending",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Canon EOS R6 Mark II",
"url": "https://example.de/kameras/canon-eos-r6-mark-ii"
},
{
"@type": "ListItem",
"position": 2,
"name": "Nikon Z6 III",
"url": "https://example.de/kameras/nikon-z6-iii"
}
]
}
| Property | Typ | Pflicht? | Beschreibung |
|---|---|---|---|
itemListElement |
ListItem | ✅ Pflicht | Die Elemente der Liste — mindestens 2, max. empfohlen: 20 |
name |
Text | Empfohlen | Name der Liste, z. B. „Beste Laptops 2026" |
description |
Text | Optional | Kurzbeschreibung der Liste |
url |
URL | Empfohlen | Kanonische URL der Listenseite |
numberOfItems |
Integer | Optional | Gesamtzahl der Elemente — auch wenn nicht alle im Markup sind |
itemListOrder |
ItemListOrderType | Optional | Reihenfolge: Ascending, Descending, Unordered |
| Property | Typ | Pflicht? | Beschreibung |
|---|---|---|---|
position |
Integer | ✅ Pflicht | Position in der Liste, beginnend bei 1 |
name |
Text | Empfohlen | Name des Eintrags — bei einfachen Listen ausreichend |
url |
URL | Empfohlen | Direkte URL zum Element (Produktseite, Artikel usw.) |
item |
Thing (beliebiger Typ) | Optional | Verschachteltes Objekt — für Rich Results oft nötig (s. Karussell-Abschnitt) |
image |
ImageObject/URL | Optional | Bild des Elements — wichtig für Karussell-Darstellung |
Das Feld itemListOrder akzeptiert drei definierte Enum-Werte:
https://schema.org/ItemListOrderAscending — aufsteigend (Platz 1 = niedrigster Wert)https://schema.org/ItemListOrderDescending — absteigend (Platz 1 = bester/höchster Wert)https://schema.org/ItemListUnordered — keine Rangfolge, Reihenfolge ist beliebigDas Google-Karussell ist die häufigste Erscheinungsform von ItemList in den Suchergebnissen. Es erscheint bei Suchanfragen wie „beste Kaffeemaschinen", „Top-Smartphones 2026" oder „Rezepte mit Zucchini". Karussell-Einträge zeigen ein Bild, einen Titel und die URL — und belegen deutlich mehr Platz als normale Suchergebnisse.
Jedes Element zeigt auf eine andere URL auf deiner Website. Das ist die Standard-Implementierung für „Best of"-Artikel:
{
"@context": "https://schema.org",
"@type": "ItemList",
"name": "Die 5 besten Noise-Cancelling-Kopfhörer 2026",
"url": "https://example.de/tests/beste-kopfhoerer",
"itemListOrder": "https://schema.org/ItemListOrderDescending",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"url": "https://example.de/tests/sony-wh-1000xm6",
"name": "Sony WH-1000XM6 — Testbericht"
},
{
"@type": "ListItem",
"position": 2,
"url": "https://example.de/tests/bose-quietcomfort-ultra",
"name": "Bose QuietComfort Ultra — Testbericht"
},
{
"@type": "ListItem",
"position": 3,
"url": "https://example.de/tests/apple-airpods-max-2",
"name": "Apple AirPods Max 2 — Testbericht"
}
]
}
Alternativ kannst du alle Informationen direkt im item-Objekt einbetten. Das ist nützlich, wenn du keine separaten Detail-Seiten hast:
{
"@context": "https://schema.org",
"@type": "ItemList",
"name": "Beste Pasta-Rezepte für Anfänger",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"item": {
"@type": "Recipe",
"name": "Spaghetti Carbonara",
"image": "https://example.de/bilder/carbonara.jpg",
"url": "https://example.de/rezepte/spaghetti-carbonara",
"cookTime": "PT25M",
"recipeYield": "2 Portionen",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "312"
}
}
},
{
"@type": "ListItem",
"position": 2,
"item": {
"@type": "Recipe",
"name": "Penne all'Arrabbiata",
"image": "https://example.de/bilder/arrabbiata.jpg",
"url": "https://example.de/rezepte/penne-arrabbiata",
"cookTime": "PT20M",
"recipeYield": "4 Portionen",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.6",
"reviewCount": "189"
}
}
}
]
}
Blog-Plattformen können mit ItemList + Article-Typ ein Nachrichten-Karussell erzeugen. Das funktioniert besonders gut für thematische Serien oder „Best of"-Zusammenstellungen:
{
"@context": "https://schema.org",
"@type": "ItemList",
"name": "SEO-Grundlagen: Alle Beiträge der Serie",
"url": "https://example.de/blog/seo-grundlagen/",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"item": {
"@type": "Article",
"headline": "Was ist SEO? Der komplette Einstieg",
"image": "https://example.de/blog/images/was-ist-seo.jpg",
"url": "https://example.de/blog/was-ist-seo",
"datePublished": "2026-01-10",
"author": {
"@type": "Organization",
"name": "Shift07"
}
}
}
]
}
Rezept- und Kurs-Websites profitieren besonders stark von ItemList-Karussells, da Google für diese Typen eigene Karussell-Formate mit Bildern, Kochzeiten und Bewertungssternen anzeigt.
Wenn du eine Kategorie-Seite wie „Vegane Desserts" hast, kannst du alle Rezepte als ItemList auszeichnen. Das gibt Google einen strukturierten Überblick über den Inhalt der Kategorie:
{
"@context": "https://schema.org",
"@type": "ItemList",
"name": "Vegane Desserts — alle Rezepte",
"url": "https://example.de/rezepte/vegane-desserts/",
"numberOfItems": 24,
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"item": {
"@type": "Recipe",
"name": "Schokoladen-Avocado-Mousse",
"image": "https://example.de/bilder/choco-avocado-mousse.jpg",
"url": "https://example.de/rezepte/schokoladen-avocado-mousse",
"totalTime": "PT15M",
"recipeCategory": "Dessert",
"suitableForDiet": "https://schema.org/VeganDiet",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.9",
"reviewCount": "87"
}
}
}
]
}
"numberOfItems": 24. Google versteht dann, dass die Liste länger ist als dargestellt.
Online-Kurse als ItemList auszuzeichnen ermöglicht Karussell-Darstellungen mit Kursname, Anbieter und Bewertung. Kombiniere Course-Objekte mit ItemList für Kursübersichtsseiten:
{
"@context": "https://schema.org",
"@type": "ItemList",
"name": "Python-Kurse für Einsteiger",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"item": {
"@type": "Course",
"name": "Python 3 für Einsteiger: Von 0 auf Profi",
"description": "Lerne Python von Grund auf — mit Projekten und Übungen",
"url": "https://example.de/kurse/python-einsteiger",
"image": "https://example.de/kurse/bilder/python-kurs.jpg",
"provider": {
"@type": "Organization",
"name": "CodeAcademy DE",
"url": "https://example.de"
},
"hasCourseInstance": {
"@type": "CourseInstance",
"courseMode": "Online",
"courseSchedule": {
"@type": "Schedule",
"repeatFrequency": "P1W"
}
}
}
}
]
}
Nachrichtenportale können mit ItemList die Top-Storys des Tages oder Themen-Zusammenfassungen auszeichnen. Google News und der Top-Storys-Karussell nutzen diese Daten für eine bessere Einordnung der Inhalte.
Für Nachrichten-Karussells muss der Typ NewsArticle verwendet werden, nicht einfach Article. Außerdem sind datePublished und author Pflichtfelder für News-Karussells:
{
"@context": "https://schema.org",
"@type": "ItemList",
"name": "Aktuelle KI-Nachrichten",
"url": "https://example.de/nachrichten/ki/",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"item": {
"@type": "NewsArticle",
"headline": "Google DeepMind stellt neues KI-Modell vor",
"image": [
"https://example.de/bilder/deepmind-model.jpg"
],
"url": "https://example.de/nachrichten/google-deepmind-neues-modell",
"datePublished": "2026-05-06T08:00:00+02:00",
"dateModified": "2026-05-06T09:30:00+02:00",
"author": [{
"@type": "Person",
"name": "Maria Müller",
"url": "https://example.de/autoren/maria-mueller"
}],
"publisher": {
"@type": "Organization",
"name": "TechNews DE",
"logo": {
"@type": "ImageObject",
"url": "https://example.de/logo-60x600.png",
"width": 600,
"height": 60
}
}
}
}
]
}
Eine wenig bekannte, aber sehr effektive Technik ist die Kombination von ItemList mit HowTo-Markup. Wenn du einen Artikel mit mehreren Anleitungen oder Methoden schreibst, kannst du die Hauptanleitungen als ItemList auszeichnen und jede Anleitung einzeln als HowTo:
{
"@context": "https://schema.org",
"@type": "ItemList",
"name": "3 Methoden zur Website-Beschleunigung",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"item": {
"@type": "HowTo",
"name": "Browser-Caching aktivieren",
"url": "https://example.de/anleitungen/browser-caching",
"totalTime": "PT15M",
"step": [
{
"@type": "HowToStep",
"text": "Öffne die .htaccess-Datei deines Webservers"
},
{
"@type": "HowToStep",
"text": "Füge die Cache-Control-Header hinzu"
}
]
}
},
{
"@type": "ListItem",
"position": 2,
"item": {
"@type": "HowTo",
"name": "Bilder in WebP konvertieren",
"url": "https://example.de/anleitungen/bilder-webp",
"totalTime": "PT30M"
}
}
]
}
Diese Kombination kann dazu führen, dass Google sowohl ein HowTo-Rich-Result als auch einen Karussell-Eintrag anzeigt — maximale Sichtbarkeit für Anleitungs-Content. Mehr zu Core Web Vitals und Ladezeit-Optimierung findest du in unserem Performance-Guide.
Eine häufige Verwirrung: BreadcrumbList ist kein Spezialfall von ItemList — beide erben zwar von Intangible, haben aber völlig unterschiedliche Funktionen in Google:
| Merkmal | BreadcrumbList | ItemList |
|---|---|---|
| Zweck | Navigation/Pfad zur aktuellen Seite | Thematische Sammlung von Elementen |
| Rich Result | Brotkrümelnavigation in Suchergebnissen | Karussell-Darstellung |
| Reihenfolge | Immer hierarchisch (Eltern → Kind) | Beliebig (Rang, Zeit, oder ungeordnet) |
| Seiten-Typ | Auf jeder Unterseite sinnvoll | Nur auf Übersichts-/Listenseiten |
| Verschachtelung | Keine weiteren Schema-Objekte | Beliebige Schema-Objekte einbettbar |
Auf einer Kategorie-Seite solltest du beide gleichzeitig verwenden: BreadcrumbList für die Navigation und ItemList für die Produktliste. Das ist ausdrücklich erlaubt und erhöht die Chancen auf mehrere Rich Results gleichzeitig. Mehr dazu im Artikel BreadcrumbList Schema Markup vertieft.
Der CollectionPage-Typ und ItemList sind das perfekte Duo für Kategorie-Seiten. CollectionPage beschreibt die Seite selbst, ItemList beschreibt den Inhalt. Kombiniere beide für maximale Klarheit für Google:
[
{
"@context": "https://schema.org",
"@type": "CollectionPage",
"name": "Alle Python-Tutorials",
"description": "Unsere vollständige Sammlung von Python-Anleitungen für alle Levels",
"url": "https://example.de/tutorials/python/",
"inLanguage": "de",
"mainEntity": {
"@id": "https://example.de/tutorials/python/#itemlist"
}
},
{
"@context": "https://schema.org",
"@type": "ItemList",
"@id": "https://example.de/tutorials/python/#itemlist",
"name": "Python-Tutorials",
"numberOfItems": 18,
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"item": {
"@type": "Article",
"name": "Python Installation und Setup — Schritt für Schritt",
"url": "https://example.de/tutorials/python/installation"
}
}
]
}
]
mainEntity wenn die ItemList der Hauptinhalt der Seite ist. Verwende hasPart wenn die Liste nur ein Teil des Seiteninhalts ist (z. B. ein Abschnitt auf einer größeren Seite).
Mehr zur CollectionPage-Implementierung findest du im Artikel CollectionPage Schema Markup für Kategorieseiten.
Schema.org und Google erwarten, dass position bei 1 beginnt, nicht bei 0. Viele automatisch generierte Implementierungen machen diesen Fehler, weil Arrays in Programmiersprachen bei 0 beginnen. Prüfe dein Markup explizit daraufhin.
Jeder Wert in position muss einzigartig sein. Zwei ListItems mit "position": 1 führen zu einer Validierungswarnung und können das Karussell verhindern.
Für Karussell-Rich-Results ist eine URL in jedem ListItem oder dem eingebetteten Item-Objekt Pflicht. Ohne URL kann Google das Element nicht verlinken und zeigt es nicht im Karussell an.
ItemList darf nur auf der Seite implementiert werden, die die Liste auch tatsächlich darstellt. Ein Online-Shop, der auf der Startseite eine ItemList mit seinen Produkten einbaut, aber die Startseite zeigt keine Produktliste — das ist spammy Markup und kann manuell abgestraft werden.
Wenn du Typ 1 (externe Links) verwendest, musst du sicherstellen, dass die verlinkten Seiten selbst vollständiges Schema Markup haben. Eine ItemList mit Links auf Produktseiten ohne Product-Markup erzeugt kein Karussell.
Google empfiehlt mindestens 3 Elemente für ein Karussell. Mehr als 50 Elemente werden meist ignoriert — bei sehr langen Listen kannst du die Top-Einträge im Markup listen und numberOfItems auf die Gesamtzahl setzen.
Nutze unsere kostenlose SEO-Analyse um zu prüfen, ob deine Website strukturierte Daten richtig implementiert hat.
Kostenlos testen →Vor dem Veröffentlichen: Gehe diese Checkliste Punkt für Punkt durch.
@type: "ItemList" gesetztitemListElement enthält mindestens 3 ListItem-Objekteposition (beginnend bei 1)url oder ein eingebettetes item-Objekt mit URLname der ItemList ist suchmaschinenfreundlich formuliertitemListOrder korrekt gesetzt (Ascending/Descending/Unordered)numberOfItems gesetzt (auch wenn nicht alle Elemente im Markup sind)description der ItemList vorhanden und keyword-relevantTeste dein Markup immer mit dem Google Rich Results Test und dem Schema.org Validator. Der Rich Results Test zeigt, ob Google das Markup als Karussell-fähig erkennt. Der Schema.org Validator prüft die formale Korrektheit der Properties.
Unsere kostenlose SEO-Analyse prüft automatisch, ob deine Website Schema Markup korrekt implementiert hat — und zeigt dir alle Fehler auf einen Blick. Für weitere Schema-Markup-Themen empfehlen wir den Artikel zu Article Schema Markup für Blog-Artikel und unseren Leitfaden zu Event Schema Markup für alle Veranstaltungstypen.
Wer ItemList für E-Commerce-Seiten nutzen möchte, sollte auch das AggregateRating Schema Markup vertieft kennen — Bewertungssterne in Karussell-Einträgen sind einer der stärksten Klickrate-Treiber.