Movie und TVSeries Schema Markup sind weit mehr als zwei einfache JSON-LD-Blöcke. Wer Filmdatenbanken, Streamingportale oder Entertainment-Websites betreibt, kann mit einer tiefen Verschachtelung von MovieSeries, TVSeason, TVEpisode, TVClip und VideoObject erhebliche Vorteile in den Google-Suchergebnissen erzielen — vom Knowledge Panel über Bewertungssterne bis hin zu Trailer-Vorschauen. Dieser Artikel geht über die Grundlagen hinaus und erklärt die vollständige Typ-Hierarchie, kritische Properties und häufige Implementierungsfehler.
Den Einstieg in das Thema findest du in unserem Artikel Movie & TVSeries Schema Markup: Filme und Serien für Google optimieren. Für die technische Videoeinbindung empfehle ich zusätzlich unseren vertieften Leitfaden zum VideoObject Schema Markup mit Key Moments, seekToAction und transcript.
Die vollständige Schema.org-Hierarchie für Film und TV
Schema.org definiert eine klare Vererbungshierarchie für Medieninhalte. Das Verständnis dieser Hierarchie ist der Schlüssel zu korrekten Implementierungen:
- CreativeWork (Basistyp für alle kreativen Werke)
- ↳ Movie (Einzelfilm)
- ↳ CreativeWorkSeries (Serien-Basistyp)
- ↳ MovieSeries (Filmreihe, z.B. James Bond)
- ↳ TVSeries (TV-Serie)
- ↳ TVSeason (einzelne Staffel)
- ↳ TVEpisode (einzelne Folge)
- ↳ TVClip (Clip aus einer Folge)
Wichtig: MovieSeries ist nicht dasselbe wie TVSeries. MovieSeries bezeichnet eine Filmreihe (alle Bond-Filme zusammen), während TVSeries eine laufende Fernsehserie beschreibt. Beide erben von CreativeWorkSeries.
Movie Schema Markup: Das vollständige Beispiel
Ein einzelner Film profitiert von zahlreichen Properties, die Google für das Knowledge Panel und die erweiterten Suchergebnisse auswertet:
{
"@context": "https://schema.org",
"@type": "Movie",
"@id": "https://beispiel-filmseite.de/filme/interstellar",
"name": "Interstellar",
"alternateName": "Interstellar (2014)",
"description": "Ein Team von Astronauten reist durch ein Wurmloch nahe Saturn auf der Suche nach einem neuen Zuhause für die Menschheit.",
"datePublished": "2014-11-06",
"duration": "PT2H49M",
"inLanguage": "en",
"contentRating": "FSK 12",
"genre": ["Science-Fiction", "Drama", "Abenteuer"],
"keywords": "Interstellar, Christopher Nolan, Weltraumfilm, Quantenphysik",
"image": {
"@type": "ImageObject",
"url": "https://beispiel-filmseite.de/images/interstellar-poster.jpg",
"width": 800,
"height": 1200
},
"director": {
"@type": "Person",
"name": "Christopher Nolan",
"url": "https://beispiel-filmseite.de/personen/christopher-nolan"
},
"actor": [
{
"@type": "Person",
"name": "Matthew McConaughey"
},
{
"@type": "Person",
"name": "Anne Hathaway"
},
{
"@type": "Person",
"name": "Jessica Chastain"
}
],
"musicBy": {
"@type": "Person",
"name": "Hans Zimmer"
},
"productionCompany": {
"@type": "Organization",
"name": "Legendary Entertainment"
},
"countryOfOrigin": {
"@type": "Country",
"name": "USA"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "8.7",
"bestRating": "10",
"worstRating": "1",
"ratingCount": "2100000"
},
"trailer": {
"@type": "VideoObject",
"name": "Interstellar — Offizieller Trailer",
"description": "Der offizielle Trailer zum Science-Fiction-Film Interstellar von Christopher Nolan.",
"thumbnailUrl": "https://beispiel-filmseite.de/images/interstellar-trailer-thumb.jpg",
"uploadDate": "2014-03-19",
"contentUrl": "https://beispiel-filmseite.de/videos/interstellar-trailer.mp4",
"embedUrl": "https://www.youtube.com/embed/zSWdZVtXT7E",
"duration": "PT2M29S"
},
"url": "https://beispiel-filmseite.de/filme/interstellar"
}
Die wichtigste Property: trailer als VideoObject
Die trailer-Property ist eine der wirkungsvollsten Properties für Movie-Markup, weil Google Trailer direkt in Knowledge Panels einbinden kann. Das eingebettete VideoObject sollte mindestens enthalten: name, thumbnailUrl, uploadDate und embedUrl oder contentUrl. Die duration im ISO-8601-Format (z.B. PT2M29S für 2 Minuten und 29 Sekunden) erleichtert Google die Klassifizierung.
Für die korrekte Konvertierung von Videodauern in das ISO-8601-Format hilft unser ISO 8601 Dauer-Konverter.
MovieSeries: Filmreihen strukturiert beschreiben
Eine Filmreihe wie die James-Bond-Reihe oder das Marvel Cinematic Universe lässt sich mit MovieSeries strukturieren. Einzelne Filme verweisen dann über partOfSeries auf die übergeordnete Reihe:
{
"@context": "https://schema.org",
"@type": "MovieSeries",
"@id": "https://beispiel-filmseite.de/reihen/james-bond",
"name": "James Bond",
"description": "Die offizielle James-Bond-Filmreihe mit 25 Hauptfilmen, produziert von Eon Productions seit 1962.",
"startDate": "1962",
"genre": ["Action", "Spionage", "Thriller"],
"image": "https://beispiel-filmseite.de/images/james-bond-series.jpg",
"numberOfEpisodes": 25,
"actor": {
"@type": "Person",
"name": "Daniel Craig"
},
"url": "https://beispiel-filmseite.de/reihen/james-bond",
"hasPart": [
{
"@type": "Movie",
"@id": "https://beispiel-filmseite.de/filme/casino-royale-2006",
"name": "Casino Royale",
"datePublished": "2006-11-16",
"episodeNumber": 21
},
{
"@type": "Movie",
"@id": "https://beispiel-filmseite.de/filme/no-time-to-die",
"name": "Keine Zeit zu sterben",
"datePublished": "2021-09-30",
"episodeNumber": 25
}
]
}
Der einzelne Film referenziert die Reihe umgekehrt über partOfSeries:
{
"@context": "https://schema.org",
"@type": "Movie",
"name": "Casino Royale",
"datePublished": "2006-11-16",
"episodeNumber": 21,
"partOfSeries": {
"@type": "MovieSeries",
"@id": "https://beispiel-filmseite.de/reihen/james-bond",
"name": "James Bond"
}
}
TVSeries: Die vollständige Staffel-Episoden-Hierarchie
TV-Serien haben eine dreistufige Hierarchie: TVSeries → TVSeason → TVEpisode. Jede Ebene hat eigene wichtige Properties:
TVSeries — die übergeordnete Serie
{
"@context": "https://schema.org",
"@type": "TVSeries",
"@id": "https://beispiel-streaming.de/serien/breaking-bad",
"name": "Breaking Bad",
"description": "Ein Chemielehrer erkrankt an Lungenkrebs und beginnt gemeinsam mit einem ehemaligen Schüler Methamphetamin herzustellen.",
"startDate": "2008-01-20",
"endDate": "2013-09-29",
"numberOfSeasons": 5,
"numberOfEpisodes": 62,
"inLanguage": "en",
"genre": ["Drama", "Krimi", "Thriller"],
"contentRating": "FSK 18",
"creator": {
"@type": "Person",
"name": "Vince Gilligan"
},
"actor": [
{ "@type": "Person", "name": "Bryan Cranston" },
{ "@type": "Person", "name": "Aaron Paul" },
{ "@type": "Person", "name": "Anna Gunn" }
],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "9.5",
"bestRating": "10",
"ratingCount": "2200000"
},
"containsSeason": [
{
"@type": "TVSeason",
"@id": "https://beispiel-streaming.de/serien/breaking-bad/staffel-1",
"seasonNumber": 1,
"name": "Breaking Bad Staffel 1",
"numberOfEpisodes": 7,
"startDate": "2008-01-20"
},
{
"@type": "TVSeason",
"@id": "https://beispiel-streaming.de/serien/breaking-bad/staffel-5",
"seasonNumber": 5,
"name": "Breaking Bad Staffel 5",
"numberOfEpisodes": 16,
"startDate": "2012-07-15",
"endDate": "2013-09-29"
}
]
}
TVSeason — die einzelne Staffel
Staffelseiten profitieren von spezifischen Properties wie seasonNumber, numberOfEpisodes und partOfSeries:
{
"@context": "https://schema.org",
"@type": "TVSeason",
"@id": "https://beispiel-streaming.de/serien/breaking-bad/staffel-1",
"name": "Breaking Bad — Staffel 1",
"seasonNumber": 1,
"numberOfEpisodes": 7,
"startDate": "2008-01-20",
"endDate": "2008-03-09",
"description": "Walter White, Chemielehrer und Familienvater, erkrankt an Lungenkrebs und beginnt Methamphetamin herzustellen.",
"image": "https://beispiel-streaming.de/images/bb-staffel1.jpg",
"partOfSeries": {
"@type": "TVSeries",
"@id": "https://beispiel-streaming.de/serien/breaking-bad",
"name": "Breaking Bad"
},
"hasPart": [
{
"@type": "TVEpisode",
"@id": "https://beispiel-streaming.de/serien/breaking-bad/s01e01",
"name": "Pilot",
"episodeNumber": 1,
"datePublished": "2008-01-20"
}
]
}
TVEpisode — die einzelne Folge
TVEpisode-Markup ist besonders wertvoll auf Streaming-Plattformen, weil Google einzelne Episoden in den Suchergebnissen anzeigen kann. Die Properties partOfSeason und partOfSeries sind Pflicht für die korrekte Einordnung:
{
"@context": "https://schema.org",
"@type": "TVEpisode",
"@id": "https://beispiel-streaming.de/serien/breaking-bad/s05e14",
"name": "Ozymandias",
"alternateName": "Breaking Bad S05E14",
"episodeNumber": 14,
"description": "Walt flieht in die Wüste, nachdem sein Imperium zusammengebrochen ist — als eine der besten TV-Episoden aller Zeiten bewertet.",
"datePublished": "2013-09-15",
"duration": "PT47M",
"inLanguage": "en",
"image": "https://beispiel-streaming.de/images/bb-s05e14.jpg",
"director": {
"@type": "Person",
"name": "Rian Johnson"
},
"partOfSeason": {
"@type": "TVSeason",
"@id": "https://beispiel-streaming.de/serien/breaking-bad/staffel-5",
"seasonNumber": 5,
"name": "Breaking Bad Staffel 5"
},
"partOfSeries": {
"@type": "TVSeries",
"@id": "https://beispiel-streaming.de/serien/breaking-bad",
"name": "Breaking Bad"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "10.0",
"bestRating": "10",
"ratingCount": "280000"
},
"video": {
"@type": "VideoObject",
"name": "Breaking Bad S05E14 — Ozymandias (Stream)",
"description": "Vollständige Episode: Ozymandias aus Staffel 5 von Breaking Bad.",
"thumbnailUrl": "https://beispiel-streaming.de/images/bb-s05e14-thumb.jpg",
"uploadDate": "2013-09-15",
"duration": "PT47M",
"embedUrl": "https://beispiel-streaming.de/player/breaking-bad/s05e14"
}
}
TVClip: Ausschnitte aus Episoden strukturieren
TVClip ist ein Untertyp von Clip und speziell für kurze Ausschnitte aus TV-Episoden gedacht. Er eignet sich für Highlight-Szenen, Behind-the-Scenes-Material oder Blooper-Reels. Die wichtigste Property ist partOfEpisode, die den Clip mit der übergeordneten Folge verknüpft:
{
"@context": "https://schema.org",
"@type": "TVClip",
"name": "Ozymandias — Die finale Szene",
"description": "Die emotionale Schlussszene aus Breaking Bad S05E14, in der Walter seine Familie für immer verliert.",
"duration": "PT4M30S",
"thumbnailUrl": "https://beispiel-streaming.de/clips/bb-ozymandias-finale.jpg",
"contentUrl": "https://beispiel-streaming.de/clips/bb-ozymandias-finale.mp4",
"startOffset": 2580,
"endOffset": 2850,
"partOfEpisode": {
"@type": "TVEpisode",
"@id": "https://beispiel-streaming.de/serien/breaking-bad/s05e14",
"name": "Ozymandias"
},
"partOfSeries": {
"@type": "TVSeries",
"@id": "https://beispiel-streaming.de/serien/breaking-bad",
"name": "Breaking Bad"
}
}
Die Properties startOffset und endOffset geben die Position des Clips in Sekunden innerhalb der Gesamtepisode an. Diese Information nutzt Google für Key Moments in den Suchergebnissen — ähnlich wie beim VideoObject Schema Markup.
aggregateRating: Bewertungssterne für Filme und Serien
Bewertungssterne in den Suchergebnissen sind einer der größten Traffic-Treiber für Filmseiten. Google zeigt sie allerdings nur unter bestimmten Bedingungen an:
- Das
aggregateRating-Objekt mussratingValue,bestRatingundratingCountenthalten - Die Bewertungen müssen von echten Nutzern stammen — erfundene Ratings verstoßen gegen Googles Richtlinien
- Die Seite muss eindeutig auf den Film oder die Serie bezogen sein
ratingValuemuss numerisch und zwischenworstRatingundbestRatingliegen
Ein häufiger Fehler ist das Weglassen von ratingCount. Google verlangt eine Mindestanzahl an Bewertungen, um Sterne anzuzeigen. Eine einzige Bewertung reicht in der Regel nicht aus.
Google Knowledge Panel: Was wird ausgewertet?
Das Google Knowledge Panel für Filme und Serien aggregiert Informationen aus verschiedenen Quellen — darunter Wikidata, IMDb und Schema.org-Markup auf deiner Seite. Dein Markup erhöht die Chance, dass Google deine Seite als maßgebliche Quelle erkennt und in das Panel einbindet. Besonders hilfreich sind:
sameAs— Verweise auf Wikidata, IMDb oder Wikipedia für denselben Film@id— Eine stabile, eindeutige URL als Identifiertrailer— Google kann Trailer direkt im Knowledge Panel abspielenimage— Hochwertiges Poster-Bild mit korrektem Seitenverhältnis
{
"@type": "Movie",
"name": "Interstellar",
"sameAs": [
"https://www.wikidata.org/wiki/Q13417189",
"https://www.imdb.com/title/tt0816692/",
"https://de.wikipedia.org/wiki/Interstellar_(Film)"
]
}
Häufige Implementierungsfehler und wie du sie vermeidest
Fehler 1: partOfSeason ohne partOfSeries
TVEpisode-Markup sollte immer beide Referenzen enthalten: partOfSeason und partOfSeries. Nur mit partOfSeason kann Google die Staffelzugehörigkeit sehen, aber nicht die übergeordnete Serie. Das führt zu unvollständiger Einordnung in der Knowledge Graph.
Fehler 2: duration im falschen Format
Die Laufzeit muss immer im ISO-8601-Format angegeben werden: PT2H49M für 2 Stunden und 49 Minuten, oder PT47M für 47 Minuten. Minuten und Stunden ohne das P-T-Präfix (2h49min) werden von Google nicht erkannt. Nutze unseren ISO 8601 Dauer-Konverter für die schnelle Umrechnung.
Fehler 3: episodeNumber auf Serienebene statt Episodenebene
Die Property episodeNumber gehört auf TVEpisode, nicht auf TVSeries. Auf TVSeries-Ebene ist numberOfEpisodes die korrekte Property für die Gesamtanzahl der Episoden.
Fehler 4: Gleiche @id für verschiedene Entitäten
Jede Entität — Serie, Staffel, Episode — braucht eine eindeutige @id. Eine häufige Verwechslung ist die Verwendung der URL der Seite als @id für mehrere Entitäten. Die @id dient als stabiler Identifier im Knowledge Graph und sollte eine kanonische URL sein, die langfristig gültig bleibt.
Validierung und Testing
Bevor du Movie- oder TVSeries-Markup live schaltest, empfehle ich folgende Schritte:
- Rich Results Test von Google: Zeigt an, ob dein Markup für Rich Results qualifiziert ist und welche Properties Google erkennt
- Schema Markup Validator (validator.schema.org): Prüft auf strukturelle Fehler und unbekannte Properties
- Google Search Console: Nach dem Live-Gang überwacht die Search Console den Status deiner Rich Results und meldet Probleme
Für eine vollständige technische SEO-Prüfung deiner Seite nutze die kostenlose SEO-Analyse von Shift07 — sie prüft unter anderem strukturierte Daten, Core Web Vitals und fehlende Meta-Tags.
Checkliste: Movie & TVSeries Schema Markup
- Movie:
name,description,datePublished,duration,director,actorgesetzt? - Movie:
trailerals VideoObject mitembedUrlundthumbnailUrlvorhanden? - Movie:
aggregateRatingmitratingValue,bestRating,ratingCountvollständig? - MovieSeries:
hasPartmit allen Filmen der Reihe? Einzelne Filme referenzieren mitpartOfSeries? - TVSeries:
numberOfSeasons,numberOfEpisodes,containsSeasongesetzt? - TVSeason:
seasonNumber,partOfSeries,hasPartmit Episodenliste? - TVEpisode:
episodeNumber,partOfSeasonUNDpartOfSeriesgesetzt? - Alle Entitäten haben eindeutige, stabile
@id-URLs? durationimmer im ISO-8601-Format (PT2H49M)?sameAsVerweise auf Wikidata/IMDb/Wikipedia für Knowledge Panel?
Fazit
Movie und TVSeries Schema Markup entfaltet seinen vollen Wert erst, wenn die komplette Typ-Hierarchie korrekt implementiert ist. Die Verknüpfung von TVSeries, TVSeason und TVEpisode über containsSeason, hasPart und partOfSeries ermöglicht Google ein vollständiges Bild deines Inhalts — und damit bessere Chancen auf Knowledge Panels, Bewertungssterne und Trailer-Vorschauen.
Für deine praktische Implementierung steht dir unser Movie & TVSeries Schema Generator zur Verfügung — du kannst damit vollständige JSON-LD-Blöcke für Filme, Serien und Episoden ohne Programmierkenntnisse erstellen. Wer tiefer in das Thema Video-Markup einsteigen möchte, findet in unserem Artikel zum VideoObject Schema Markup vertieft alle Details zu seekToAction, transcript und Key Moments.