Schema & GEO

JSON-LD Schema für SaaS: Welches Markup du auf jeder Seite brauchst

JSON-LD structured data ist einer der wichtigsten GEO-Faktoren. KI-Systeme nutzen Schema-Markup um dein Unternehmen, dein Produkt und deinen Content korrekt zu klassifizieren. Ohne Schema bist du eine unbekannte Webseite. Mit vollständigem Schema bist du eine klar definierte Entität.

18 Minuten Lesezeit
Zuletzt aktualisiert: Juni 2026

Was ist JSON-LD und warum ist es für GEO entscheidend?

Es gibt drei Formate für structured data: Microdata (Attribute direkt im HTML-Element), RDFa (ähnlich wie Microdata, aber komplexer) und JSON-LD (separater script-Tag im Head). Google empfiehlt ausdrücklich JSON-LD weil es vom eigentlichen Content-HTML getrennt ist, leichter zu lesen und zu debuggen ist und bei dynamisch generiertem Content keine Probleme mit der HTML-Struktur verursacht. KI-Crawler wie GPTBot, ClaudeBot und PerplexityBot folgen denselben Empfehlungen.

Der direkte GEO-Effekt: Wenn ChatGPT gefragt wird "Welche Tools helfen bei SEO-Audits?" liest es schema.org-Daten aus indexierten Seiten. Ein SaaS mit vollständigem SoftwareApplication-Schema, das featureList, applicationCategory und offers enthält, wird als konkretes Tool mit definierten Eigenschaften erkannt. Eines ohne Schema ist nur eine generische Webseite. KI-Systeme bevorzugen klar klassifizierte Entitäten gegenüber unstrukturiertem Text.

Für den Google Knowledge Graph ist Organization-Schema der Einstiegspunkt. Wenn du dort als Unternehmen eingetragen werden möchtest, muss das Schema konsistent über alle Seiten hinweg denselben Namen, dieselbe URL und dasselbe Logo referenzieren. Inkonsistenzen — unterschiedliche Firmennamen in verschiedenen Blöcken — schwächen das Signal und verlangsamen die Knowledge-Graph-Aufnahme. Offiziell dokumentiert ist das JSON-LD-Format unter schema.org und developers.google.com.

Organization Schema: Wer du bist

Organization Schema gehört auf die Homepage und idealerweise als globales Schema in dein Layout. Es ist das einzige Schema das nicht seitenspezifisch ist — es beschreibt das Unternehmen als Ganzes. Wenn Nutzer bei ChatGPT fragen "Was macht Pantra?" zieht das KI-System die description und featureList aus Organization- und SoftwareApplication-Schema. Ohne diese Felder muss es den Fliesstext interpretieren, was zu Ungenauigkeiten führt.

Organization Schema — app/layout.tsx oder Homepage
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Pantra",
  "url": "https://pantra.io",
  "logo": {
    "@type": "ImageObject",
    "url": "https://pantra.io/pantra-logo-transparent.png",
    "width": 400,
    "height": 100
  },
  "description": "GEO-, SEO- und Security-Audit-Tool fuer Indie Hacker, SaaS Founder und Agenturen",
  "foundingDate": "2025",
  "sameAs": [
    "https://twitter.com/pantraio"
  ],
  "contactPoint": {
    "@type": "ContactPoint",
    "contactType": "customer support",
    "email": "support@pantra.io"
  }
}

Die Pflichtfelder sind @context, @type, name und url. Optional aber stark empfohlen: logo (mit expliziten Dimensionen für das Google Knowledge Panel), description (klar, sachlich, 1-2 Sätze), foundingDate (für Vertrauen und Autorität), sameAs (Social-Media-Profile — verknüpft die Entität über Plattformen), contactPoint (für lokale und Unternehmens-Suchen). Das sameAs-Array ist besonders wertvoll: es sagt Google und KI-Systemen dass alle verlinkten Profile dieselbe Entität sind, was das Vertrauen erhöht.

Für SaaS mit physischer Adresse (Firmensitz, nicht nur Remote) empfiehlt sich zusätzlich ein address-Objekt mit PostalAddress. Für B2B-SaaS mit spezifischen Industriezuordnungen kann naics oder industry ergänzt werden. Halte Organization-Schema einfach und konsistent — dasselbe Schema über alle Seiten hinweg (z.B. in app/layout.tsx) statt leicht variierte Versionen pro Seite.

SoftwareApplication Schema: Was dein Produkt tut

SoftwareApplication ist der wichtigste Schema-Typ für SaaS-Sichtbarkeit in KI-Suchen. Wenn ein Nutzer bei Perplexity fragt "Welches Tool prüft meine GEO-Sichtbarkeit?" liest Perplexity SoftwareApplication-Schema aus allen indexierten Tools und vergleicht featureList, description und applicationCategory. Ein Tool ohne dieses Schema fehlt in dieser Auswahl komplett.

SoftwareApplication Schema — Homepage oder Pricing-Page
{
  "@context": "https://schema.org",
  "@type": "SoftwareApplication",
  "name": "Pantra",
  "url": "https://pantra.io",
  "applicationCategory": "BusinessApplication",
  "operatingSystem": "Web",
  "description": "GEO-, SEO- und Security-Audit-Tool mit KI-Sichtbarkeitsanalyse",
  "offers": {
    "@type": "Offer",
    "price": "79",
    "priceCurrency": "CHF",
    "priceValidUntil": "2027-01-01"
  },
  "featureList": [
    "GEO Audit fuer KI-Sichtbarkeit",
    "SEO Audit mit 14 Checks",
    "Security Audit",
    "Daily Monitoring",
    "Automatische Fix-Empfehlungen"
  ]
}

Die applicationCategory bestimmt wie dein Tool klassifiziert wird. schema.org definiert folgende Werte: BusinessApplication, DesignApplication, DeveloperApplication, EducationalApplication, GameApplication, MultimediaApplication, ProductivityApplication, SecurityApplication, UtilitiesApplication. Wähle den spezifischsten zutreffenden Wert — BusinessApplication für allgemeine SaaS-Tools, SecurityApplication für Security-spezifische Tools, DeveloperApplication für Developer-Tools.

aggregateRating ist verlockend, aber heikel. Es darf nur eingebunden werden wenn du verifizierbare Bewertungen von echten Nutzern auf einer erkennbaren Review-Plattform hast — G2, Capterra, Trustpilot oder ähnliches. Erfundene Zahlen verstoßen gegen die Google-Richtlinien und können zu Manual Actions führen. Warte bis du mindestens 10 verifizierte Reviews hast bevor du aggregateRating hinzufügst. Für priceValidUntil gilt dasselbe: setze es nicht auf ein vergangenes Datum — Google markiert veraltete Preise als falsch.

FAQPage Schema: Der wichtigste Schema-Typ für GEO

FAQPage-Schema funktioniert als direkter Datenfeed für KI-Suchen. Wenn ein Nutzer bei ChatGPT fragt "Wie funktioniert GEO?" sucht das System nach FAQPage-Schema-Einträgen mit passenden Fragen. Die acceptedAnswer wird dann direkt extrahiert und zitiert — mit oder ohne explizite Verlinkung zur Quellseite. Das ist ein fundamentaler Unterschied zu klassischem SEO: GEO-Zitierung geschieht auf Basis des Markups, nicht des Rankings.

FAQPage Schema — mit 3 vollständigen Q&A-Paaren
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Was ist GEO Optimierung?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "GEO (Generative Engine Optimization) ist die Optimierung einer Website
um in KI-Suchmaschinen wie ChatGPT, Perplexity und Google AI Overviews
zitiert zu werden. Im Unterschied zu klassischem SEO zielt GEO nicht auf
Google-Rankings sondern auf direkte KI-Empfehlungen."
      }
    },
    {
      "@type": "Question",
      "name": "Wie lange dauert ein Pantra-Audit?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Ein Pantra-Audit dauert typischerweise 5-15 Sekunden und laeuft
synchron im HTTP-Request ohne Warteschlange."
      }
    },
    {
      "@type": "Question",
      "name": "Welche KI-Plattformen analysiert Pantra?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Pantra misst die Sichtbarkeit auf ChatGPT, Perplexity AI, Claude
(Anthropic) und Google AI Overviews — die vier grossen KI-Such-
plattformen 2025."
      }
    }
  ]
}

Best Practices für FAQPage-Schema: Antworten sollten mindestens 30 Wörter haben — kurze Antworten wie "Ja." werden von KI-Systemen kaum zitiert. Formuliere Fragen so wie echte Nutzer sie stellen würden, nicht als SEO-Keyword-Konstrukte. Vermeide Antworten die nur aus internen Links bestehen. HTML in Antwort-Texten ist erlaubt aber wird von KI-Systemen meist ignoriert — schreibe Klartext.

Ein häufiger Fehler ist das Abweichen zwischen Schema-Inhalt und sichtbarem Seiteninhalt. Wenn dein FAQ-Schema Fragen enthält die auf der Seite nicht sichtbar sind, wertet Google das als Spam. Das Schema muss immer den tatsächlich sichtbaren Content widerspiegeln. Umgekehrt gilt: jede sichtbare FAQ auf der Seite sollte im Schema auftauchen.

HowTo Schema: Schritt-für-Schritt-Anleitungen für KI

HowTo-Schema ist besonders wertvoll für SaaS-Blogs mit Tutorial-Content. Wenn ein Nutzer bei Perplexity fragt "Wie erstelle ich eine llms.txt?" sucht das System nach HowTo-Schema mit passenden Schritten. Die step-Liste wird dann direkt als nummerierte Anleitung ausgegeben. Das ist ein direkter Traffic-Kanal: KI-Nutzer die deine Anleitung als Antwort erhalten, klicken häufiger auf die Quelle als bei regulären Suchresultaten.

HowTo Schema — Beispiel: llms.txt erstellen
{
  "@context": "https://schema.org",
  "@type": "HowTo",
  "name": "Wie du eine llms.txt erstellst",
  "description": "llms.txt in 8 Schritten erstellen fuer maximale KI-Sichtbarkeit",
  "totalTime": "PT15M",
  "step": [
    {
      "@type": "HowToStep",
      "position": 1,
      "name": "Text-Editor oeffnen",
      "text": "Oeffne VS Code, Notepad oder einen beliebigen Text-Editor."
    },
    {
      "@type": "HowToStep",
      "position": 2,
      "name": "Firmenname als H1 schreiben",
      "text": "Beginne die Datei mit # Dein Firmenname als erste Zeile."
    },
    {
      "@type": "HowToStep",
      "position": 3,
      "name": "Kurzbeschreibung hinzufuegen",
      "text": "Schreibe eine Kurzbeschreibung als Blockquote:
> Was dein Unternehmen tut und fuer wen."
    },
    {
      "@type": "HowToStep",
      "position": 4,
      "name": "Hauptseiten auflisten",
      "text": "Fuge die wichtigsten URLs mit kurzer Beschreibung hinzu."
    },
    {
      "@type": "HowToStep",
      "position": 5,
      "name": "Datei als llms.txt speichern",
      "text": "Speichere die Datei unter dem exakten Namen llms.txt."
    },
    {
      "@type": "HowToStep",
      "position": 6,
      "name": "In public/ Ordner ablegen",
      "text": "Lege die Datei in den public/ Ordner deines Next.js-Projekts."
    },
    {
      "@type": "HowToStep",
      "position": 7,
      "name": "Deployment pruefen",
      "text": "Prüfe nach dem Deploy ob deinedomain.com/llms.txt erreichbar ist."
    },
    {
      "@type": "HowToStep",
      "position": 8,
      "name": "Mit Pantra validieren",
      "text": "Fuehre einen GEO-Audit auf pantra.io durch um die llms.txt zu validieren."
    }
  ]
}

totalTime nutzt das ISO-8601-Dauerformat: PT15M = 15 Minuten, PT1H30M = 1 Stunde 30 Minuten, P1D = 1 Tag. Das Feld ist optional, aber nützlich da KI-Systeme und Google es in Rich Results anzeigen. Schritte sollten eigenständig verständlich sein ohne den umgebenden Kontext. Vermeide Schritte die nur aus Links bestehen — der text-Wert muss die vollständige Handlungsanweisung enthalten.

HowTo-Schema kann mit Article-Schema kombiniert werden: Wenn dein Tutorial-Blog-Post eine Schritt-für-Schritt-Anleitung ist, füge beide Schema-Typen hinzu. Article beschreibt den Artikel als publiziertes Werk (mit Autor und Datum), HowTo beschreibt die enthaltene Anleitung. Mehrere script-Tags auf derselben Seite sind vollständig korrekt und von Google explizit erlaubt.

Article Schema: Blog und Content-Pages

Ohne Article-Schema behandelt Google deine Blog-Posts wie beliebige Webseiten. Mit Article-Schema werden datePublished und dateModified erkennbar — ein wichtiges Freshness-Signal für Googles Qualitätsalgorithmus. Für KI-Overviews ist dateModified besonders relevant: veralteter Content (über 12 Monate ohne Update) wird seltener zitiert als aktueller. Halte dateModified bei jedem inhaltlichen Update aktuell.

Article / TechArticle Schema — Blog-Post oder Guide
{
  "@context": "https://schema.org",
  "@type": "TechArticle",
  "headline": "JSON-LD Schema fuer SaaS: Welches Markup du auf jeder Seite brauchst",
  "description": "Vollstaendiger Guide zu JSON-LD structured data fuer SaaS",
  "url": "https://pantra.io/learn/json-ld-schema-saas",
  "datePublished": "2026-06-01",
  "dateModified": "2026-06-25",
  "author": {
    "@type": "Organization",
    "name": "Pantra",
    "url": "https://pantra.io"
  },
  "publisher": {
    "@type": "Organization",
    "name": "Pantra",
    "url": "https://pantra.io",
    "logo": {
      "@type": "ImageObject",
      "url": "https://pantra.io/pantra-logo-transparent.png"
    }
  },
  "mainEntityOfPage": {
    "@type": "WebPage",
    "@id": "https://pantra.io/learn/json-ld-schema-saas"
  },
  "inLanguage": "de",
  "keywords": "JSON-LD, Schema.org, structured data, SaaS, GEO"
}

Wann welchen Typ nutzen: Article ist der allgemeinste Typ für redaktionellen Content. BlogPosting ist eine Unterklasse von Article, semantisch spezifischer für Blog-Einträge — funktioniert identisch, ist aber genauer für Blog-Software und Aggregatoren. TechArticle ist für technische Dokumentation und Guides — ideal für Developer-Blogs, API-Dokumentation und technische Tutorials. NewsArticle ist für journalistischen Content mit kurzer Halbwertszeit. Für SaaS-Blogs empfiehlt sich TechArticle für technische Guides und BlogPosting für allgemeine Insights.

Das inLanguage-Feld ist für mehrsprachige Sites kritisch. Es sagt Crawlern in welcher Sprache der Content ist, was für die richtige Sprachzuordnung in KI-Suchen relevant ist. Ohne inLanguage kann ein deutschsprachiger Artikel in englischsprachigen KI-Antworten erscheinen — unerwünscht für regionale Sichtbarkeit. Für deutschsprachigen Content: "de". Für Englisch: "en". Für Schweizerdeutsch-nahen Content: "de-CH".

BreadcrumbList Schema: Navigation für Crawler

BreadcrumbList hat zwei Nutzen gleichzeitig: erstens als Rich Result in Google (die URL in Suchergebnissen wird zu "pantra.io > Learn > JSON-LD Schema" statt "https://pantra.io/learn/json-ld-schema-saas") was die Klickrate typischerweise um 10-20% erhöht. Zweitens als Kontext-Signal für KI-Crawler: ein Artikel unter /learn/ wird als Lern-Content klassifiziert, einer unter /blog/ als Blog-Post. Diese Hierarchie-Information fliesst in die Einordnung des Contents ein.

BreadcrumbList Schema — diese Seite als Beispiel
{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {
      "@type": "ListItem",
      "position": 1,
      "name": "Pantra",
      "item": "https://pantra.io"
    },
    {
      "@type": "ListItem",
      "position": 2,
      "name": "Learn",
      "item": "https://pantra.io/learn"
    },
    {
      "@type": "ListItem",
      "position": 3,
      "name": "JSON-LD Schema fuer SaaS",
      "item": "https://pantra.io/learn/json-ld-schema-saas"
    }
  ]
}

Das letzte ListItem (die aktuelle Seite) kann das item-Feld weglassen — es ist optional für das letzte Element der Kette. Die position-Werte müssen aufsteigend und lückenlos sein. Der name-Wert sollte mit den sichtbaren Breadcrumb-Labels auf der Seite übereinstimmen — Abweichungen wertet Google als Diskrepanz zwischen Schema und sichtbarem Content.

Für dynamische Seiten (z.B. Glossar-Einträge, Blog-Posts) empfiehlt sich ein Schema-Generator der die BreadcrumbList serverseitig aus dem URL-Pfad generiert. In Next.js App Router funktioniert das sauber mit einer Hilfsfunktion die den pathname aufteilt und die Hierarchie rekonstruiert. Wichtig: alle item-URLs müssen tatsächlich existierende, erreichbare Seiten sein.

Welche Schema-Typen gehören auf welche Seite? Das vollständige SaaS-Setup

SCHEMA-MATRIX FÜR SAAS
SEITESCHEMA-TYPENPRIORITÄT
Homepage
OrganizationSoftwareApplicationFAQPage
Pflicht
Pricing-Seite
SoftwareApplicationOfferFAQPageBreadcrumbList
Pflicht
Blog-Post
ArticleBreadcrumbListFAQPage (optional)
Pflicht
FAQ-Seite
FAQPageBreadcrumbList
Pflicht
How-to-Guide
HowToArticleBreadcrumbList
Pflicht
Glossar-Eintrag
DefinedTermArticleBreadcrumbList
Empfohlen
Landingpage (Feature)
SoftwareApplicationFAQPageBreadcrumbList
Empfohlen
Über uns
OrganizationAboutPage
Empfohlen
Kontakt
OrganizationContactPage
Optional

Mehrere JSON-LD-Blöcke auf einer Seite sind vollständig korrekt und von Google explizit empfohlen. Verwende für jeden Schema-Typ einen separaten script-Tag — das ist lesbarer, einfacher zu debuggen und entspricht der Empfehlung von schema.org. Ein Monolith-Block mit allen Schemas funktioniert technisch, ist aber schlechte Praxis.

Mehrere JSON-LD-Blöcke — Next.js App Router (page.tsx)
export default function Page() {
  return (
    <>
      {/* Block 1: Organization */}
      <script
        type="application/ld+json"
        dangerouslySetInnerHTML={{ __html: JSON.stringify(organizationJsonLd) }}
      />
      {/* Block 2: SoftwareApplication */}
      <script
        type="application/ld+json"
        dangerouslySetInnerHTML={{ __html: JSON.stringify(softwareJsonLd) }}
      />
      {/* Block 3: FAQPage */}
      <script
        type="application/ld+json"
        dangerouslySetInnerHTML={{ __html: JSON.stringify(faqJsonLd) }}
      />
      {/* Restlicher JSX-Content */}
      <main>...</main>
    </>
  )
}

In Next.js App Router empfiehlt sich die Konvention: alle JSON-LD-Objekte als Konstanten vor der Page-Funktion definieren, dann am Anfang der JSX-Rückgabe als script-Tags ausgeben. Das dangerouslySetInnerHTML mit JSON.stringify() ist der korrekte und sichere Weg für JSON-LD in React — die "dangerous"-Warnung gilt für User-Input, nicht für eigene Schema-Objekte.

JSON-LD validieren: 3 kostenlose Tools

Der Google Rich Results Test ist das primäre Validierungstool. Er zeigt dir genau welche Schema-Typen Google erkennt, welche Rich Results deine Seite qualifiziert und welche Warnungen oder Fehler vorhanden sind. Wichtig: Er testet die öffentlich erreichbare URL oder eine eingegebene Code-Snippet. Nutze ihn nach jedem Deploy der Schema-Änderungen enthält.

Der Schema.org Validator prüft ob deine Schema-Typen und Eigenschaften gültig nach schema.org-Spezifikation sind — unabhängig von Google-spezifischen Rich-Result-Anforderungen. Nützlich um sicherzustellen dass du die richtigen Property-Namen verwendest (z.B. "featureList" nicht "features").

Der JSON-LD Playground visualisiert die semantischen Verlinkungen deines Schemas als Graph. Nützlich um zu verstehen wie Entitäten miteinander verknüpft sind und ob sameAs-Verlinkungen korrekt funktionieren. Für einfache SaaS-Schemas ist es eher ein Bildungs-Tool als ein Pflicht-Schritt in der Validierungs-Pipeline.

Häufige Fehler bei JSON-LD und wie du sie vermeidest

6 HÄUFIGE FEHLER UND IHRE FIXES
FEHLERUngültiges JSON (fehlendes Komma)

Ein einziges fehlendes Komma macht den gesamten JSON-LD-Block ungültig. Google ignoriert ihn komplett ohne Warnung.

FIXImmer JSON.stringify() verwenden oder einen JSON-Linter nutzen bevor du deployest.
FEHLERFalscher @type

Typen wie "FAQ" oder "Software" existieren nicht in schema.org. Nur exakte Typen wie "FAQPage" oder "SoftwareApplication" werden erkannt.

FIXTypen immer auf schema.org nachschlagen. Gross-/Kleinschreibung ist relevant.
FEHLERaggregateRating ohne echte Reviews

Erfundene Bewertungen im aggregateRating-Feld verstoßen gegen die Google-Richtlinien und können zu Manual Actions führen.

FIXaggregateRating nur einbinden wenn du verifizierbare Kundenbewertungen hast.
FEHLERFAQPage ohne mainEntity

FAQPage ohne das mainEntity-Array ist ein leeres Schema ohne Nutzen. Kein KI-System kann daraus Fragen extrahieren.

FIXMindestens 3 vollständige Question+Answer-Paare in mainEntity eintragen.
FEHLERJSON-LD im Body statt Head

Technisch erlaubt, aber schlechte Praxis. Einige Crawler lesen nur den Head-Bereich für Schema-Markup.

FIXJSON-LD als erstes Element der page.tsx ausgeben, vor LandingNav und Content.
FEHLERSonderzeichen nicht escaped

Anführungszeichen in Texten müssen escaped werden. Unescapte Zeichen brechen JSON-Parsing.

FIXJSON.stringify() escaped automatisch. Bei manuell geschriebenem JSON alle Anführungszeichen prüfen.

Ein besonderer Fallstrick bei Next.js: Wenn JSON-LD-Objekte TypeScript-Typen mit nicht-JSON-serialisierbaren Werten enthalten (undefined, Functions, Circular References) wirft JSON.stringify() einen Fehler der einen Build-Error verursacht. Definiere alle JSON-LD-Objekte als einfache Record-Literale oder typisiere sie explizit als Record<string, unknown>. Verwende nie undefined als Wert in JSON-LD — nutze stattdessen null oder lasse das Feld komplett weg.

Wie Pantra JSON-LD im GEO-Audit prüft

Der Pantra GEO-Audit lädt die Ziel-URL und parst alle script[type="application/ld+json"]-Tags aus dem HTML. Er prüft dann ob die folgenden Schema-Typen vorhanden sind: Organization (Pflicht, -15 GEO-Punkte wenn fehlend), FAQPage (Pflicht für GEO, -20 Punkte wenn fehlend), SoftwareApplication (für SaaS empfohlen, -10 Punkte wenn fehlend), Article/TechArticle (auf Content-Seiten, -8 Punkte wenn fehlend), BreadcrumbList (strukturell wichtig, -5 Punkte wenn fehlend).

Zusätzlich prüft Pantra die Vollständigkeit: ein Organization-Schema ohne logo oder description erhält weniger Punkte als ein vollständig ausgefülltes. FAQPage-Schema ohne mainEntity oder mit weniger als 3 Q&A-Paaren wird als "unvollständig" eingestuft. Der GEO-Score beeinflusst direkt wie sichtbar eine Site in KI-Suchen ist — ein vollständiges Schema ist der schnellste und wirkungsvollste GEO-Hebel mit dem du anfangen kannst.

Pro Finding liefert Pantra einen Fix-Vorschlag: was genau fehlt, ein kopierbares Code-Template für den jeweiligen Schema-Typ und die erwartete GEO-Score-Verbesserung nach Implementierung. Das macht JSON-LD-Implementierung auch ohne Schema-Vorwissen umsetzbar — du kopierst den Code, füllst deine Werte ein und fügst ihn als script-Tag in deine Seite ein.

WEITERFÜHRENDE GUIDES
llms.txt erstellen
Der vollständige Guide zu llms.txt für KI-Crawler
KI-Crawler in robots.txt konfigurieren
GPTBot, ClaudeBot, PerplexityBot richtig zulassen
KI-Sichtbarkeit messen
Wie du deinen GEO-Score ermittelst und trackst
Google AI Overviews optimieren
Wie du in Google AI Overviews zitiert wirst

Häufige Fragen zu JSON-LD Schema

Kann ich mehrere JSON-LD-Blöcke auf einer Seite haben?

Ja, du kannst und solltest mehrere JSON-LD script-Tags auf einer Seite verwenden. Google und KI-Crawler lesen alle JSON-LD-Blöcke unabhängig voneinander. Es ist sogar empfohlen, verschiedene Schema-Typen in separate script-Tags zu schreiben statt alles in einen einzigen Block zu quetschen. Auf einer Homepage zum Beispiel gehören Organization, SoftwareApplication und FAQPage in drei separate script-Tags.

Welcher Schema-Typ ist für GEO am wirkungsvollsten?

FAQPage ist der wirkungsvollste Schema-Typ für GEO (Generative Engine Optimization). KI-Systeme wie ChatGPT, Perplexity und Google AI Overviews extrahieren Frage-Antwort-Paare direkt aus FAQPage-Schema um Nutzerfragen zu beantworten. Danach folgen HowTo für Anleitungen und Organization für Marken-Erwähnungen. Jede Seite mit FAQ-Abschnitt sollte FAQPage-Schema enthalten.

Muss JSON-LD im Head oder Body stehen?

Google empfiehlt JSON-LD im Head-Bereich des HTML-Dokuments, akzeptiert es aber auch im Body. Für Next.js App Router platzierst du JSON-LD am besten als erstes Element in der JSX-Rückgabe, noch vor dem Layout. KI-Crawler lesen JSON-LD aus dem gesamten Dokument, aber eine Platzierung im Head signalisiert die primäre Bedeutung des Markups.

Was passiert wenn mein JSON-LD einen Fehler enthält?

Bei einem JSON-Syntaxfehler (fehlendes Komma, nicht geschlossene Anführungszeichen) ignoriert Google den gesamten JSON-LD-Block. Es gibt keine Fehlermeldung für den Nutzer, aber du verlierst alle Rich-Result-Chancen und GEO-Vorteile für diese Seite. Validiere daher immer mit dem Google Rich Results Test (search.google.com/test/rich-results) bevor du deployest.

Wie oft muss JSON-LD aktualisiert werden?

JSON-LD muss aktualisiert werden wenn sich die beschriebenen Inhalte ändern: neue Preise im SoftwareApplication-Schema, neue FAQs, geänderter Firmenname oder Logo. Für statische Typen wie Organization reicht eine einmalige Einrichtung. Für dynamische Typen wie Article sollte dateModified bei jedem Content-Update angepasst werden, damit Crawler die Aktualität erkennen.

Reicht es JSON-LD für die Homepage zu haben oder müssen alle Seiten es haben?

Jede Seite sollte page-spezifisches JSON-LD haben. Organization gehört auf die Homepage, Article auf jeden Blog-Post, FAQPage auf jede Seite mit FAQ-Abschnitt, HowTo auf jede Anleitung. KI-Crawler indexieren einzelne Seiten, nicht nur die Homepage. Ein Blog-Post ohne Article-Schema wird von Google nicht als Artikel erkannt und erscheint seltener in AI Overviews.

SCHEMA-AUDIT MIT PANTRA

Prüfe welche Schema-Typen auf deiner Website fehlen

Pantra analysiert dein JSON-LD Schema und zeigt dir genau welche Typen fehlen und welchen GEO-Score-Effekt sie hätten.

Kostenlosen Audit starten