Strukturierte Daten (JSON-LD)
Quellen: Google Search Central Dokumentation zu strukturierten Daten und Naver Search Advisor Leitfaden für strukturierte Daten (Stand: 2026-11-04). Bei Entscheidungen die Originaldokumente erneut öffnen.
Gemeinsame Grundsätze
- Nur Werte einfügen, die mit dem sichtbaren Text übereinstimmen. Unbekannte Preise, Zeiten, Bestände oder Bewertungen leer lassen und nicht erfinden (Google KI-Funktionsdokumentation empfiehlt ebenfalls "Strukturierte Daten müssen mit dem angezeigten Text übereinstimmen").
- Die Auszeichnung garantiert keine Rich Results oder Sichtbarkeit (sowohl Google als auch Naver erläutern dies).
- Das Format ist standardmäßig JSON-LD (von Google unterstützt, Naver empfiehlt Microdata oder JSON-LD).
<script type="application/ld+json">im<head>oder<body>. - Validierung: Google Rich Result Test, Schema Markup Validator (Naver-Leitfaden verweist auf Schema.org-Tools), das
seo-orchestratorSkillscripts/seo-check.mjs(prüft nur JSON-Parsing und erforderliche Eigenschaften).
Unterstützungsunterschiede (2026-11-04)
| Typ | Naver | |
|---|---|---|
| Event | Dokumentation zur Event-Suche vorhanden. ⚠️ Südkorea nicht in der Liste der unterstützten Regionen (Australien, Brasilien, Kanada, Deutschland, Indien, Lateinamerika, Spanien, Vereinigtes Königreich, USA) | Kein Leitfaden |
| Organization/Person + sameAs | Organisationsinfo | Verknüpfte Kanäle der Website (Root-Seite, name·url·sameAs erforderlich) |
| WebSite | Site Name (Startseite) | — |
| BreadcrumbList | Unterstützt | Unterstützt (name erforderlich, position optional) |
| ItemList (Karussell) | Nur bestimmte Typen | Leitfaden für Karussell (ListItem) vorhanden |
Für eine in Südkorea ausgerichtete Veranstaltungswebsite: Event-Markup kann zur genauen Datenpflege und für zukünftige Erweiterungen in anderen Regionen verwendet werden, aber aktuell wird nicht davon ausgegangen, dass Event-Rich-Results in der koreanischen Google-Suche erscheinen. Der Erfolg wird anhand der allgemeinen Suchergebnisse (Titel, Snippet) und der Search Console beurteilt.
Event (nach Google-Standard)
Regeln (Google Strukturierte Daten für Veranstaltungen):
- Markup auf der eindeutigen URL (Detailseite) jeder Veranstaltung. Nicht auf einer Liste oder Kalenderseite, die mehrere Veranstaltungen auflistet, sondern auf der Detailseite.
- Erforderlich:
name(Veranstaltungstitel. Keine Werbeaussagen wie Veranstaltungsortname, Preis, "Jetzt buchen"),startDate(ISO-8601),location(Place+name+address). - Empfohlen:
endDate,eventStatus,description(Inhalt der Veranstaltung, nicht Datum/Ort wiederholen),image(empfohlen 1.920px Breite, mindestens 720px, 16:9·4:3·1:1 mehrere),offers,organizer,performer,previousStartDate. - Datum: Wenn die Uhrzeit unbekannt ist, nur das Datum (
"2026-12-04"). Nicht mitT00:00:00auffüllen. Wenn die Uhrzeit bekannt ist, UTC-Offset angeben (2026-12-04T10:00:00+09:00). - Mehrere Tage:
startDateundendDateangeben. Wenn separate Tickets pro Tag erforderlich sind, ein Event pro Tag. - Gleichzeitig an mehreren Orten: Ein Event pro Ort.
- Freier Eintritt nur, wenn offiziell bestätigt:
offers.price: 0. Vor Verkaufsstart kannavailabilityweggelassen werden,validFromist die Verkaufsstartzeit. - Bei Statusänderung die anderen Werte unverändert lassen und nur
eventStatusändern:- Abgesagt
EventCancelled(startDate/location nicht löschen) - Verschoben/Datum unbestimmt
EventPostponed(ursprüngliches startDate beibehalten) - Neues Datum bestätigt
EventRescheduled+ neuesstartDate/endDate+ optionalpreviousStartDate
- Abgesagt
- Keine Nicht-Ereignisse (Gutscheine, Öffnungszeiten, Rabattaktionen) als Event auszeichnen. Mitgliedschafts- oder Einladungsveranstaltungen sind nicht für die Veranstaltungsumgebung vorgesehen.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Event",
"name": "<Offizieller Veranstaltungsname mit Ausgabe>",
"startDate": "<YYYY-MM-DD oder YYYY-MM-DDThh:mm:ss+09:00>",
"endDate": "<YYYY-MM-DD>",
"eventStatus": "https://schema.org/EventScheduled",
"location": {
"@type": "Place",
"name": "<Name des Veranstaltungsorts>",
"address": {
"@type": "PostalAddress",
"streetAddress": "<Straßenadresse>",
"addressLocality": "<Stadt/Bezirk>",
"addressRegion": "<Provinz/Stadt>",
"postalCode": "<Postleitzahl>",
"addressCountry": "KR"
}
},
"image": ["<https://.../16x9.jpg>", "<https://.../4x3.jpg>", "<https://.../1x1.jpg>"],
"description": "<Zusammenfassung des Veranstaltungsinhalts. Keine Wiederholung von Datum/Ort>",
"organizer": { "@type": "Organization", "name": "<Veranstalter>", "url": "<Offizielle URL des Veranstalters>" }
}
</script>
offers nur hinzufügen, wenn Preis- und Verkaufsinformationen offiziell bestätigt sind.
Listenseite
- Auf einer Listen- oder Monatsseite keine mehreren Events einfügen (Google unterstützt nur einzelne Eventseiten). Stattdessen
BreadcrumbListund bei BedarfItemListmit Detail-URLs.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "ItemList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "url": "https://example.com/events/<id-1>" },
{ "@type": "ListItem", "position": 2, "url": "https://example.com/events/<id-2>" }
]
}
</script>
WebSite (Google Site Name, nur Startseite)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "<Website-Name>",
"alternateName": ["<Abkürzung>"],
"url": "https://example.com/"
}
</script>
Den gleichen Namen wie og:site_name und <title> der Startseite verwenden. Quelle: Site Name
Organization + sameAs (Naver verknüpfte Kanäle, Root-Seite)
Von Naver für die Analyse verwendete verknüpfte Kanaldomeinen (2026-11-04): Naver Blog·SmartStore·Knowledge iN·ChzzK·Klip, Karrot·Threads·Instagram·YouTube·KakaoStory·KakaoTalk Channel·Tistory·TikTok·Facebook·X (Twitter). Sichtbarkeit ist nicht garantiert.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "<Website-Name>",
"url": "https://example.com/",
"sameAs": [
"https://cafe.naver.com/<Cafe>",
"https://pf.kakao.com/<Kanal>",
"https://x.com/<Account>"
]
}
</script>
- Nur tatsächlich betriebene Kanäle einfügen. Keine vorab eingetragenen Kanal-URLs vor der Eröffnung.
- Daum verwendet das gleiche Format (Person/Organization + sameAs) mit unterschiedlichen unterstützten Domains: YouTube, Facebook, X, Instagram, Google Play, App Store, KakaoStory, Daum Cafe, KakaoTV, Tistory, Brunch (
daum-search). Die tatsächlichen Kanäle beider Suchmaschinen können in einem Block zusammengefasst werden. - Naver Cafe ist in der obigen Liste der verknüpften Kanäle nicht explizit aufgeführt (2026-11-04). Es kann eingefügt werden, aber es wird nicht davon ausgegangen, dass Naver es als verknüpften Kanal verwendet.
- Quelle: Verknüpfte Kanäle der Website
BreadcrumbList (Google·Naver gemeinsam)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "<Name der übergeordneten Kategorie>", "item": "https://example.com/<uebergeordnet>" },
{ "@type": "ListItem", "position": 2, "name": "<Name der untergeordneten Kategorie>", "item": "https://example.com/<uebergeordnet>/<untergeordnet>" }
]
}
</script>
- Naver: Statt allgemeiner Begriffe wie "Startseite" oder "top" einen beschreibenden Namen verwenden, Reihenfolge von allgemein zu spezifisch, keine zu langen Texte, Nummern oder Sonderzeichen als Namen.
- Quelle: Naver BreadcrumbList, Google Navigationspfad