Schema Markup Generator: Strukturierte Daten richtig einsetzen
Schema Markup ist einer der wenigen SEO-Hebel, bei dem du als Entwickler einen direkten Vorteil hast. Während Marketing-Teams auf GUI-Tools angewiesen sind, kannst du JSON-LD direkt in den Code schreiben, in Build-Pipelines integrieren und dynamisch aus Datenbanken generieren.
Dieser Artikel ist eine praktische Referenz. Kein Theorie-Vortrag, sondern Copy-Paste-fähige Code-Beispiele für die Schema-Typen, die im Agentur-Alltag am häufigsten gebraucht werden.
Warum JSON-LD und nicht Microdata oder RDFa?
Google empfiehlt JSON-LD als bevorzugtes Format für Structured Data [Quelle: Google Search Central, Structured Data Guidelines]. Die Gründe sind praktisch:
- Trennung von Content und Markup: JSON-LD lebt im
<script>-Tag, nicht im HTML-Body - Einfacher zu pflegen: Keine Attribute über den gesamten DOM verteilt
- Dynamisch generierbar: Lässt sich aus CMS-Daten, APIs oder Build-Prozessen erzeugen
- Weniger Fehleranfällig: Keine verschachtelten
itemscope/itemprop-Attribute
<!-- JSON-LD: sauber getrennt -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Beispiel GmbH"
}
</script>
<!-- Microdata: im HTML verwoben -->
<div itemscope itemtype="https://schema.org/Organization">
<span itemprop="name">Beispiel GmbH</span>
</div>
Organization Schema
Das Basis-Schema für jedes Unternehmen. Gehört auf die Startseite und optional auf die "Über uns"-Seite.
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Dein Unternehmen GmbH",
"url": "https://example.com",
"logo": "https://example.com/images/logo.png",
"description": "Kurze Beschreibung des Unternehmens",
"foundingDate": "2020",
"address": {
"@type": "PostalAddress",
"streetAddress": "Musterstraße 1",
"addressLocality": "Berlin",
"postalCode": "10115",
"addressCountry": "DE"
},
"contactPoint": {
"@type": "ContactPoint",
"telephone": "+49-30-12345678",
"contactType": "customer service",
"availableLanguage": ["German", "English"]
},
"sameAs": [
"https://www.linkedin.com/company/beispiel",
"https://twitter.com/beispiel"
]
}
Häufige Fehler beim Organization Schema
- Logo-URL nicht absolut:
"/logo.png"funktioniert nicht. Immer die volle URL angeben. sameAsmit toten Links: Google crawlt diese URLs. Wenn sie 404 zurückgeben, schadet das.- Mehrere Organization-Schemas auf einer Seite: Nur eines pro Seite. Nutze
@idfür Referenzen.
LocalBusiness Schema
Für Kunden mit physischem Standort. Erweitert Organization um Öffnungszeiten und Geo-Koordinaten.
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Zahnarztpraxis Dr. Müller",
"image": "https://example.com/images/praxis.jpg",
"url": "https://example.com",
"telephone": "+49-89-12345678",
"priceRange": "$$",
"address": {
"@type": "PostalAddress",
"streetAddress": "Hauptstraße 42",
"addressLocality": "München",
"postalCode": "80331",
"addressCountry": "DE"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": "[TODO: echte Koordinaten eintragen]",
"longitude": "[TODO: echte Koordinaten eintragen]"
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "08:00",
"closes": "18:00"
}
],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "[TODO: echten Wert eintragen]",
"reviewCount": "[TODO: echte Anzahl eintragen]"
}
}
Spezialisierte Business-Typen
Nutze statt LocalBusiness nach Möglichkeit den spezifischsten Typ:
| Business | Schema-Typ |
|---|---|
| Restaurant | Restaurant |
| Arztpraxis | MedicalBusiness oder Physician |
| Anwaltskanzlei | LegalService oder Attorney |
| Fitnessstudio | HealthClub |
| Friseur | HairSalon |
| Hotel | Hotel |
| Autowerkstatt | AutoRepair |
Je spezifischer der Typ, desto besser kann Google die Daten für Rich Results verwenden.
Product Schema
Für E-Commerce-Kunden und Produktseiten. Kann Rich Results mit Preis und Bewertung auslösen.
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Premium SEO Audit",
"description": "Umfassender technischer SEO Audit mit 100+ Prüfpunkten",
"image": "https://example.com/images/seo-audit.png",
"brand": {
"@type": "Brand",
"name": "crawlix"
},
"offers": {
"@type": "Offer",
"price": "499.00",
"priceCurrency": "EUR",
"availability": "https://schema.org/InStock",
"url": "https://example.com/produkt/seo-audit",
"priceValidUntil": "[TODO: Datum eintragen, Format YYYY-MM-DD]"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "42"
}
}
Pflichtfelder für Product Rich Results
Google zeigt Product Rich Results nur an, wenn bestimmte Felder vorhanden sind [Quelle: Google Search Central, Product Structured Data]:
nameimageoffersmitpriceundpriceCurrencyreviewoderaggregateRating(für Sterne in den SERPs)
Ohne diese Felder wird das Schema zwar gelesen, aber es gibt keine Rich Results.
Article und BlogPosting Schema
Für Blogartikel und News-Seiten. Signalisiert Google den Content-Typ und Autor.
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "Onpage SEO Checkliste für Entwickler",
"description": "Die technische Onpage SEO Checkliste mit 100+ Prüfpunkten.",
"datePublished": "2026-03-25",
"dateModified": "2026-03-25",
"author": {
"@type": "Person",
"name": "Lukas Lavicka",
"url": "https://crawlix.io/ueber-uns"
},
"publisher": {
"@type": "Organization",
"name": "crawlix.io",
"logo": {
"@type": "ImageObject",
"url": "https://crawlix.io/logo.png"
}
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://crawlix.io/blog/onpage-seo-checkliste"
},
"image": "https://crawlix.io/images/blog/onpage-checkliste.png",
"wordCount": 2500,
"keywords": "onpage seo, seo checkliste, technical seo"
}
Article vs. BlogPosting vs. NewsArticle
Article: Generischer Artikeltyp. Immer sicher.BlogPosting: Für Blog-Inhalte. Subtyp von Article.NewsArticle: Nur für echte Nachrichten. Missbrauch kann zu Abstrafungen führen.
Faustregel: Im Zweifel Article verwenden. BlogPosting nur wenn es wirklich ein Blog ist.
FAQ Schema
FAQ-Schema kann Rich Results mit aufklappbaren Fragen direkt in den SERPs erzeugen. Seit 2023 zeigt Google FAQ Rich Results allerdings nur noch für Regierungs- und Gesundheitsseiten an [Quelle: Google Search Central Blog, August 2023]. Trotzdem sinnvoll für AI-Zitierbarkeit und Sprachsuche.
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Was kostet ein SEO Audit?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Ein professioneller SEO Audit kostet je nach Umfang zwischen 500 und 3.000 Euro. Bei crawlix starten Audits ab 499 Euro pro Domain."
}
},
{
"@type": "Question",
"name": "Wie lange dauert ein SEO Audit?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Ein automatisierter Audit kann in 24-48 Stunden erstellt werden. Manuelle Audits dauern typischerweise 1-2 Wochen."
}
}
]
}
HowTo Schema
Für Anleitungen und Tutorials. Kann Step-by-Step Rich Results auslösen.
{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "Schema Markup in Next.js implementieren",
"description": "Anleitung zur Integration von JSON-LD Schema Markup in eine Next.js Anwendung.",
"totalTime": "PT30M",
"step": [
{
"@type": "HowToStep",
"name": "JSON-LD Objekt erstellen",
"text": "Erstelle ein JavaScript-Objekt mit den Schema.org Eigenschaften für deinen Seitentyp.",
"position": 1
},
{
"@type": "HowToStep",
"name": "Script-Tag im Head einfügen",
"text": "Füge das JSON-LD als script type='application/ld+json' im Head der Seite ein.",
"position": 2
},
{
"@type": "HowToStep",
"name": "Im Rich Results Test validieren",
"text": "Prüfe das Schema mit dem Google Rich Results Test auf Fehler und Warnungen.",
"position": 3
}
]
}
BreadcrumbList Schema
Breadcrumbs helfen Google die Seitenstruktur zu verstehen und werden in den SERPs angezeigt.
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Start",
"item": "https://example.com"
},
{
"@type": "ListItem",
"position": 2,
"name": "Blog",
"item": "https://example.com/blog"
},
{
"@type": "ListItem",
"position": 3,
"name": "Schema Markup Anleitung",
"item": "https://example.com/blog/schema-markup-generator-anleitung"
}
]
}
Schema Markup in der Praxis: Framework-Integration
Next.js / React
// components/JsonLd.tsx
interface JsonLdProps {
data: Record<string, unknown>;
}
export function JsonLd({ data }: JsonLdProps) {
return (
<script
type="application/ld+json"
dangerouslySetInnerHTML={{
__html: JSON.stringify(data).replace(/</g, '\\u003c'),
}}
/>
);
}
// Nutzung in einer Page
import { JsonLd } from '@/components/JsonLd';
export default function ProductPage() {
const schema = {
"@context": "https://schema.org",
"@type": "Product",
"name": "SEO Audit Pro",
// ... weitere Felder
};
return (
<>
<JsonLd data={schema} />
<main>{/* Content */}</main>
</>
);
}
Dynamische Schema-Generierung
Für Agenturen mit vielen Kundenseiten: Schema aus CMS-Daten generieren.
// lib/schema.ts
interface BusinessData {
name: string;
street: string;
city: string;
zip: string;
phone: string;
lat: number;
lng: number;
}
export function generateLocalBusinessSchema(data: BusinessData) {
return {
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": data.name,
"telephone": data.phone,
"address": {
"@type": "PostalAddress",
"streetAddress": data.street,
"addressLocality": data.city,
"postalCode": data.zip,
"addressCountry": "DE"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": data.lat,
"longitude": data.lng
}
};
}
Schema validieren: Die drei Tools
1. Google Rich Results Test
URL: search.google.com/test/rich-results
- Zeigt, welche Rich Results möglich sind
- Unterscheidet zwischen Fehlern und Warnungen
- Prüft nur Google-spezifische Anforderungen
2. Schema.org Validator
URL: validator.schema.org
- Prüft gegen die vollständige Schema.org Spezifikation
- Strenger als der Google-Test
- Findet auch Fehler die Google ignoriert
3. crawlix Schema-Audit
Mit dem kostenlosen Schema-Check kannst du deine strukturierten Daten schnell validieren. Jeder crawlix-Audit enthält eine vollständige Schema-Analyse:
- Welche Schema-Typen gefunden wurden
- Fehlende Pflichtfelder
- Validierungsfehler im JSON-LD
- Empfehlungen für zusätzliche Schema-Typen basierend auf dem Seitentyp
- Fertigen JSON-LD Code zum Kopieren
Das spart den manuellen Durchlauf durch drei verschiedene Tools. Der Schema-Report ist Teil jedes Standard-Audits.
Die 7 häufigsten Schema-Fehler
-
Fehlender
@context: Ohne"@context": "https://schema.org"ist das JSON-LD kein gültiges Schema. -
Falsche Verschachtelung:
addressmuss ein eigenes@type: PostalAddressObjekt sein, kein String. -
Veraltete Eigenschaften:
schema.orgwird regelmäßig aktualisiert. Prüfe die aktuelle Spezifikation. -
Markup für nicht sichtbaren Content: Google warnt vor Schema-Daten die nicht im sichtbaren Seiteninhalt vorkommen. Der Schema-Inhalt sollte den sichtbaren Content widerspiegeln.
-
Falsche Rating-Werte:
ratingValuemuss zumbestRating/worstRatingpassen. Default ist 1-5. -
Fehlende Bilder: Viele Schema-Typen brauchen ein
image-Feld für Rich Results. -
Mehrere
@context-Deklarationen: Bei mehreren Schemas auf einer Seite: Jedes braucht seinen eigenen@context, oder nutze ein@graph-Array.
Das @graph Pattern für mehrere Schemas
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://example.com/#org",
"name": "Beispiel GmbH",
"url": "https://example.com"
},
{
"@type": "WebPage",
"@id": "https://example.com/about/#page",
"name": "Über uns",
"isPartOf": {
"@id": "https://example.com/#website"
},
"about": {
"@id": "https://example.com/#org"
}
}
]
}
Schema-Typen Priorität für Agenturen
Nicht jeder Kundentyp braucht jedes Schema. Diese Prioritätsmatrix hilft bei der Planung:
| Kundentyp | Must-Have | Nice-to-Have |
|---|---|---|
| Lokales Geschäft | LocalBusiness, BreadcrumbList | FAQ, Review |
| E-Commerce | Product, BreadcrumbList, Organization | FAQ, HowTo |
| Blog/Magazin | Article/BlogPosting, BreadcrumbList | FAQ, HowTo |
| SaaS/Software | Organization, Product, FAQ | HowTo, SoftwareApplication |
| Dienstleister | Organization, Service, FAQ | HowTo, BreadcrumbList |
| Arztpraxis | MedicalBusiness, LocalBusiness | FAQ, MedicalCondition |
Weiterführende Artikel
- Onpage SEO Checkliste: Alle 100+ Prüfpunkte die ein professioneller Audit abdeckt
- Technical SEO Audit erklärt: Die 8 Bereiche eines technischen Audits
- SEO Report erstellen: Wie du Schema-Findings im Kundenreport präsentierst
SEO als neues Standbein für Ihre Agentur
Professionelle SEO-Audits anbieten ohne eigenes SEO-Team. Mit Code-Snippets und 4-Phasen-Umsetzungsplan.
Audit-Details ansehen