Files
onepager/docs/geo-seo-guideline.md
mAi fdac496a6f mAi: #10 - Anti-AI-Text-Lint im Build
tools/anti-ai-lint.py: Python-Linter (stdlib + yq) prueft jede
build/<domain>/index.html gegen die Blacklist in
tools/anti-ai-blacklist.yaml. HTML wird via html.parser auf sichtbaren
Text reduziert (Skripte/Styles werden ignoriert), dann werden Vokabel-
Substrings (DE+EN, case-insensitive) und Regex-Patterns gematcht.
Severity warn = Build geht durch, fail = Build bricht ab.

Whitelist-Mechanismen:
- HTML-Kommentar im Markup: <!-- anti-ai-allow: term1, term2 -->
- Per-Site in site.yaml: anti_ai_allow: [term1, term2]

Integration in build.sh als Schritt 4/4, mit --skip-lint fuer
Notfaelle. Dockerfile installiert python3 zusaetzlich; nur im
Builder-Stage, kein Effekt aufs Caddy-Image.

Tests via tools/test-anti-ai-lint.sh: synthetische AI-Fixture wird
korrekt geflagged, Whitelists unterdruecken Hits, fail-Severity
triggert exit 1, neutraler Text exit 0.

Initial-Lauf auf 59 bestehenden Sites: 2 warn (killusion.de
"revolutionaer" in ironischem Kontext, kilofant.de "robust"),
0 fail. Cleanup ist Folge-Issue.

README + docs/geo-seo-guideline.md aktualisiert mit der konkreten
Tool-Position.
2026-04-30 02:50:50 +02:00

32 KiB
Raw Blame History

GEO + SEO Guideline für m's Web-Projekte

Stand: 2026-04-29. Interne Arbeitsgrundlage. Keine Marketing-Aussage.

Ziel: Konkrete, belegte Empfehlungen, was bei neuen und bestehenden Sites gemacht werden soll, damit sie (a) klassisch gefunden werden und (b) als Quelle in LLM-Antworten auftauchen. Implementierung ist nicht Teil dieses Dokuments jede Empfehlung wird später als eigenes Issue umgesetzt.

Inhalt

  1. Worum es geht
  2. GEO grundsätzlich
  3. GEO konkret die Hebel
  4. SEO 2026 Baseline
  5. Übersetzung auf m's Stacks
  6. Checkliste pro neuer Site
  7. Maintenance
  8. Quellen

1. Worum es geht

Zwei Disziplinen, ein gemeinsames Ziel:

  • SEO in der klassischen Google-Trefferliste auftauchen.
  • GEO (Generative Engine Optimization) als zitierte Quelle in LLM-Antworten auftauchen (ChatGPT, Claude, Perplexity, Gemini, Google AI Overviews).

Warum jetzt: Bei Suchanfragen, für die Google AI Overviews zeigt, ist die Klickrate auf organische Treffer um ~61 % gefallen, und 83 % dieser Anfragen enden ohne einen einzigen Klick auf irgendeine Website 1 . Das verschiebt den Schwerpunkt von "ranke top 3" auf "werde von der KI genannt".

Wichtigste empirische Beobachtung: 88 % der von KI zitierten URLs ranken nicht in Googles Top 10 für die jeweilige Frage 2 . GEO ist also nicht ein Spezialfall von SEO. Beide laufen parallel und teilen viele Signale (Inhaltsqualität, Schema, EEAT), aber GEO honoriert andere Strukturen.

Konsequenz: Beides bedienen, kein Stack ist zu klein dafür.


2. GEO grundsätzlich

Was hat empirisch funktioniert (Princeton GEO-Paper, KDD 2024, n = GEO-bench Multi-Domain Queries):

Methode Visibility-Lift
Statistics Addition (Zahlen einsetzen) bis +41 % auf Position-Adjusted Word Count
Quotation Addition (Direktzitate von Quellen) starke Verbesserung über alle Metriken
Citation Addition (Quellenangaben) besonders in faktenlastigen Domains
Authoritative Tone besonders bei historischen/Erklärinhalten
Fluency Optimization marginal
Keyword Stuffing marginal bis negativ

Quelle: Aggarwal et al., 2024 3 . Bis zu +40 % Sichtbarkeit gegenüber Baseline durch Kombination.

Die Hebel sind nicht universell. Citation-Optimierung hilft bei Sachfragen, Statistik-Addition bei Recht und Verwaltung, Authoritative Style bei Geschichte/Erklärung. Pro Site/Topic prüfen, welche Domain-Klasse zutrifft.

LLMs zitieren Quellen sehr unterschiedlich:

  • ChatGPT-Citations dominiert von Wikipedia (zwischen 26 % und 48 % je nach Studie und Kategorie) 2 4 .
  • Perplexity holt im Januar 2026 ~24 % aller Citations von Reddit 5 .
  • YouTube hat Reddit Q1 2026 als meistzitierte Quelle in LLM-Antworten überholt (~16 % vs. ~10 %) 6 .
  • Gemini bevorzugt offizielle Sites und News.
  • ChatGPT nutzt Bings Echtzeit-Index, Claude größtenteils sein Trainings-Set + Search-Bot, Perplexity crawlt kontinuierlich 4 .

Daraus folgt: Eigene Domain-Authority allein reicht nicht. Off-Site-Präsenz (Wikipedia, Reddit, YouTube) ist relevant.


3. GEO konkret die Hebel

3.1 Top-Third-Regel

44,2 % aller von ChatGPT zitierten Passagen kommen aus dem ersten Drittel der Seite (n = 18 012, p ≈ 0) 7 . Die Verteilung ist eine "Ski-Rampe": vorne hoch, hinten flach.

Konsequenz für Seitenaufbau:

  • Erstes sichtbares Element nach dem H1: eine nüchterne, präzise Definition des Themas oder Produkts. Kein Marketing-Lead, keine Begrüßung, keine Vision Statement.
  • H1 sollte die Kernfrage benennen, nicht den Markennamen flexen.
  • Erste 100200 Wörter: was, wer, wann, warum. Mit Zahlen wo möglich.
  • Lange Hero-Sections mit Animation und drei Buzzwords sind GEO-toxisch die KI sieht da nichts Zitierfähiges.

Negativbeispiel (ein typischer onepager-Hero):

{{name}}  die nächste Stufe der digitalen Selbstdarstellung
{{tagline mit drei Adjektiven}}

Besser:

{{name}}: {{rolle/funktion}} mit Sitz in {{ort}}, tätig seit {{jahr}}.
Schwerpunkte: {{drei konkrete Themen}}.

3.2 Zahlen und Zitate, nicht Adjektive

Aus dem Princeton-Paper: Statistik-Addition lieferte den größten Einzeleffekt. Das deckt sich mit m's Beispiel "660 000 Schweizer Entscheide wird zitiert, 'umfangreiche Datenbank' nicht."

Regeln:

  • Jede Behauptung mit messbarem Inhalt bekommt eine Zahl. Nicht "groß" sondern "1,2 Mio. Datensätze". Nicht "etabliert" sondern "seit 2014".
  • Relative Behauptungen (mehr/weniger/größer) brauchen einen Vergleichswert.
  • Direktzitate von Originalquellen (Gerichten, Behörden, Studien) im Volltext einbinden, nicht paraphrasieren. Mit Quellenangabe.
  • Quellennachweise sind keine Fußnoten-Kosmetik LLMs gewichten Aussagen mit verifizierbarer Quelle höher.

3.3 Schema.org / JSON-LD

Ist umstritten hier der Stand:

  • BrightEdge: +44 % AI-Citations bei Sites mit Schema + FAQ-Markup 8 .
  • Search/Atlas-Studie Dezember 2024: keine Korrelation zwischen Schema-Coverage und Citation-Rate 8 (zitiert in derselben Quelle als Gegenbefund).
  • Data World: GPT-4 geht von 16 % auf 54 % korrekte Antworten, wenn der Inhalt strukturiert vorliegt 9 .
  • Google empfiehlt JSON-LD seit Mai 2025 explizit für AI-optimierte Inhalte 9 .
  • SearchVIU (Oktober 2025) bestätigt, dass ChatGPT, Claude, Perplexity und Gemini Schema beim direkten Seitenabruf parsen 9 .

Pragmatische Linie: Schema ist Pflicht für content-relevante Seiten, aber kein Ersatz für gute Inhalte. Man verzichtet darauf nicht, aber man erwartet von ihm allein keine Wunder.

Welche Typen lohnen sich:

Typ Wann Wofür
Person Author-/About-Seiten E-E-A-T-Anker
Organization Firmen-Sites, Brand-Hubs Entity-Konsolidierung
Article / BlogPosting Editorial, Blog Datierung, Author-Bindung
FAQPage Antwortlisten LLM-Verständnis (Google-SERP-Feature ist seit 2023 stark eingeschränkt, der Schema-Wert für LLMs bleibt)
Product Produktseiten B2B/Commerce
BreadcrumbList Tiefe Sitemaps Pfad-Verständnis
WebSite mit SearchAction Hauptseiten Sitelinks-Suchbox

JSON-LD ist Pflichtformat. Microdata und RDFa nicht mehr verwenden.

Person-Schema-Skelett für Author-Pages:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Person",
  "name": "Matthias Siebels",
  "url": "https://msbls.de/",
  "image": "https://msbls.de/assets/portrait.jpg",
  "jobTitle": "Patentanwalt, Software-Entwickler",
  "worksFor": {
    "@type": "Organization",
    "name": "flexsiebels",
    "url": "https://flexsiebels.de/"
  },
  "sameAs": [
    "https://www.linkedin.com/in/...",
    "https://github.com/...",
    "https://www.wikidata.org/wiki/Q..."
  ]
}
</script>

sameAs ist der wichtigste Single-Punkt damit verbindet die KI denselben Entity über Domains hinweg. Wikidata-Eintrag erstellen sobald genug öffentliche Belege existieren.

3.4 E-E-A-T und Author-Identität

Googles offizielles Framework, das auch LLM-Citation-Algorithmen nachweislich abbilden 10 . Trustworthiness ist 2025 das wichtigste der vier 11 .

Praktische Anker pro Site:

  • Identifizierbarer Author mit Klarnamen, Foto, Lebenslauf, Verifikations-Links (Schema.org Person + sameAs).
  • Impressum / Kontakt klar erreichbar (haben wir shared/impressum.js).
  • Veröffentlichungsdatum + letzte Änderung sichtbar (datePublished, dateModified).
  • Editorial Transparency: bei AI-generierten Inhalten Hinweis auf den Prozess (haben wir shared/ai-disclosure.js und msbls.de/ki).
  • HTTPS, gültige Zertifikate, kein Mixed Content (Caddy macht das ohnehin).

Konkretes Vorgehen für m's Domain-Cluster:

  • msbls.de ist die zentrale Author-Identität für alles unter flexsiebels (siehe Memory: msbls = Marke unter flexsiebels-Umbrella). Eine vollständige Author-Page dort, mit Person-Schema, Wikidata-sameAs, Liste der relevanten Projekte.
  • Alle Sub-Sites (ichbinotto, mai-otto, lexsiebels, heygoldi etc.) verlinken über worksFor/creator zurück auf diese kanonische Identität.

3.5 Zentrale JSON-Faktendatei

m's Idee aus der Issue: eine Single-Source-of-Truth-Datei mit Produktfakten, von der Templates und KI-Bots gleichermaßen lesen.

Empfohlener Aufbau:

  • Pro Stack/Site eine Datei facts.json (oder products.json, team.json) am Repo-Root.
  • Rendert in Build/Render-Pipeline in JSON-LD und in HTML-Text.
  • Wird zusätzlich als application/json an einer stabilen URL (z. B. /facts.json) ausgeliefert LLM-Crawler und eigene Tools können sie direkt lesen.

Beispiel-Skelett:

{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "flexsiebels",
  "founded": "2014",
  "founder": { "@type": "Person", "name": "Matthias Siebels" },
  "numberOfEmployees": 1,
  "address": "...",
  "products": [
    { "@type": "Product", "name": "youpc", "description": "UPC case database, 1600+ judgments", "url": "https://youpc.org" },
    { "@type": "Product", "name": "paliad", "description": "...", "url": "https://paliad.de" }
  ]
}

Wert: jede neue Site, jede Author-Page, jede Subdomain referenziert dieselbe kanonische Faktenmenge. Konsistente Aussagen über Domains hinweg sind ein starkes Trust-Signal für LLM-Entity-Konsolidierung.

3.6 Anti-AI-Text-Filter

Wikipedias Maintainer-Community hat 20242026 die zuverlässigsten Marker für AI-Text dokumentiert 12 . Wir wollen den Eindruck vermeiden sowohl gegenüber menschlichen Lesern als auch gegenüber EEAT-Algorithmen, die "Originalität" prüfen.

Vokabel-Blacklist (häufige Cluster):

delve, tapestry, testament, intricate, garnered, bolstered, enduring,
robust, comprehensive, meticulous, interplay, landscape, pivotal,
underscore, additionally, furthermore, moreover, crucial,
showcasing, highlighting, enhance, align with, ecosystem,
seamless, leverage, unleash, navigate, dive into, in the realm of

Mehrere dieser Wörter im selben Absatz sind das stärkste Tell.

Syntax-Marker:

  • "Ist/sind" wird ersetzt durch "fungiert als / dient als / markiert / weist auf / kennzeichnet". → Echtes "ist" zulassen.
  • "Nicht nur X, sondern auch Y" als Standard-Phrasenformel. → Sparsam.
  • Drei-Adjektiv-Reihen ("schnell, sicher und skalierbar"). → Eines reicht.
  • Unnötige Synonyme nur um Wiederholung zu vermeiden. → Wiederholen ist okay.

Struktur-Marker:

  • Title Case in Überschriften. → Sentence case oder UPPERCASE, nie Mixed Title Case.
  • "Header: Beschreibung"-Bullet-Listen mechanisch über die ganze Seite. → Nur wenn der Inhalt das wirklich ist.
  • Em-Dashes statt Komma/Klammer-/Doppelpunkt. → Sparsam, gezielt.
  • Zwanghaftes Fettsetzen jedes "Schlüsselbegriffs". → Selten und mit Grund.

Inhalts-Marker:

  • "Ein Meilenstein in...", "ein Beweis für...", "in der sich entwickelnden Landschaft von...", "hat Spuren hinterlassen". → Nicht.
  • Vage Attribution an "Experten", "Beobachter", "Branchenberichte" ohne Namen. → Quelle benennen oder Aussage streichen.
  • Standard-Schluss-Sektion "Herausforderungen und Perspektiven" mit "Trotz seiner [positiven Wörter] steht [Subjekt] vor Herausforderungen ... bleibt aber zuversichtlich". → Streichen.

Praktische Umsetzung:

  • Lint-Skript im Build: für onepager implementiert in tools/anti-ai-lint.py mit Vokabel-Blacklist in tools/anti-ai-blacklist.yaml. Läuft am Ende von build.sh über alle build/<domain>/index.html. Severity warn (Build geht durch) vs. fail (Build bricht ab). Whitelist via <!-- anti-ai-allow: term -->-Kommentar oder anti_ai_allow:-Liste in site.yaml. Notfall-Override: build.sh --skip-lint.
  • Bei AI-generierten Drafts: bewusst gegen die Blacklist redigieren.
  • Vor Veröffentlichung laut lesen. Wenn es klingt wie ein Pressemitteilungs-Bot, ist es einer.

3.7 Off-Site und Multi-Source

Brand-Search-Volumen korreliert mit LLM-Citations stärker (r ≈ 0,33) als klassische Backlinks 13 . Das heißt: erwähnt zu werden auch ohne Link schlägt verlinkt zu werden mit niedrigem Search-Volumen.

Praktische Hebel:

  • Wikipedia / Wikidata: wenn ein Projekt oder Begriff es rechtfertigt, einen Eintrag oder ein Wikidata-Item anlegen. Wikipedia ist die meistzitierte Quelle in ChatGPT.
  • Reddit / Hacker News / Lobsters: organische Posts in einschlägigen Subreddits/Threads, in denen die Lösung als Antwort auf eine konkrete Frage erwähnt wird. Kein Drop-and-Run-Marketing wird abgestraft und nicht zitiert.
  • YouTube: für Themen mit visuellem Anteil (UPC-Hearings, Code-Walkthroughs, Demos) ist YouTube 2026 die meistzitierte LLM-Quelle 6 . Auch kurze, gut betitelte Videos zählen.
  • GitHub / Gitea (öffentlich): technische Themen werden über öffentlichen Code zitiert. Public Repos mit ordentlichem README sind stille Zitatmagneten.
  • Fachportale, Verbandsseiten, Veranstalter-Seiten: Wenn dort Erwähnungen mit Klarnamen + Domain auftauchen, wird das Profil verfestigt.

Dies ist langfristig. Keine Ad-hoc-Aktion, sondern ein Punkt auf jeder Quartals-Routine: gibt es eine plausible Erwähnung, die gerade fehlt?

3.8 llms.txt Realitätscheck

m's Issue-Beispiel nennt llms.txt. Hier die nüchterne Lage:

  • Spezifikation von Jeremy Howard (Answer.AI), September 2024 14 .
  • Adoption laut SE Ranking: 10,13 % von 300 000 Domains 15 .
  • Kein einziger der großen Anbieter (OpenAI, Anthropic, Google, Meta, Mistral) bestätigt offiziell, dass llms.txt als Retrieval- oder Ranking-Signal benutzt wird 15 16 .
  • ALM Corp hat llms.txt in ein XGBoost-Citation-Modell geworfen: Entfernen der Variable verbesserte die Modellgenauigkeit sprich: kein erklärbarer Effekt 16 .

Empfehlung:

  • Für Doku-/API-/Content-heavy Sites (youpc, paliad, msbls/ki, lexsiebels) machen, weil:
    • kostet ~30 Minuten Arbeit
    • schadet nicht
    • wird zumindest von einigen Tools (Cursor, Mintlify-Hosted Docs) tatsächlich konsumiert
    • signalisiert Engagement an den nächsten Standard, falls einer der großen Anbieter doch noch andockt
  • Für die onepager-Satire-Sites (Wortspiel-Domains): überspringen. Aufwand vs. Nutzen lohnt nicht.
  • Niemals als alleinige GEO-Strategie verkaufen. Die echten Hebel sind Inhalt, Schema, EEAT.

Mini-Spec: Markdown-Datei an /llms.txt (Root). H1 = Site-Name, Blockquote = Kurzbeschreibung, dann Listen mit - [Titel](URL): Notiz. Optionale ## Optional-Sektion für Inhalte, die bei knapper Context-Window weggelassen werden dürfen.

Beispiel llms.txt (für youpc.org):

# youpc.org  Unified Patent Court Case Database

> Database of UPC and EPO judgments. 1600+ decisions across all UPC divisions
> since 2023, fully searchable, with structured data extraction (holdings,
> legal principles, citation graphs).

## Core resources

- [About / Methodology](https://youpc.org/about): scope, sources, extraction methodology
- [All judgments](https://youpc.org/cases): full list with filters by division, judge, year
- [Divisions overview](https://youpc.org/divisions): jurisdiction map and judges per division
- [Topics index](https://youpc.org/topics): patent law issues with leading cases per topic

## Optional

- [Author / Editor](https://msbls.de/): credentials of the editor
- [Disclosure on AI use](https://msbls.de/ki): which parts of the workflow involve LLMs

llms-full.txt (analoge Datei mit eingeschlossenen Volltexten) nur dann erzeugen, wenn der Site-Inhalt klein genug ist, dass das in ein Context-Fenster passt sonst ist es Larping.

3.9 Crawler-Steuerung

Die wichtigsten User-Agents 2026 17 18 :

Agent Anbieter Zweck Block lohnt?
GPTBot OpenAI Training Wenn man nicht trainieren lassen will
OAI-SearchBot OpenAI ChatGPT-Search-Index Niemals blocken (sonst keine Citations)
ChatGPT-User OpenAI User-getriggerter Live-Fetch Niemals blocken
ClaudeBot Anthropic Training Wenn man nicht trainieren lassen will
Claude-User Anthropic User-getriggerter Live-Fetch Niemals blocken
Claude-SearchBot Anthropic Claude-Search-Index Niemals blocken
PerplexityBot Perplexity Index Niemals blocken
Perplexity-User Perplexity Live-Fetch Niemals blocken
Google-Extended Google Gemini-Training Wenn man nicht trainieren lassen will
Googlebot Google Klassischer Google-Index Niemals blocken
CCBot Common Crawl Training-Datenbasis für viele LLMs Optional blocken

Veraltet, nicht mehr verwenden in robots.txt: Claude-Web, anthropic-ai das sind tote Strings, ein Block dort blockt nichts mehr.

m's Default für die eigenen Domains: alle Bots erlauben. Das Material soll zitiert werden das ist der Sinn der Übung. Keine Site hat kommerziellen Trainings-Schutz-Bedarf.

Beispiel robots.txt (Standardposition):

User-agent: *
Allow: /

Sitemap: https://example.de/sitemap.xml

Falls spezifisch das Trainings-Set nicht beliefert werden soll (für eine Site, deren Inhalt sensibel oder kommerziell ist), getrennte Direktiven:

User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: Google-Extended
Disallow: /

# Wichtig: Search-Bots NICHT blocken
User-agent: OAI-SearchBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /

4. SEO 2026 Baseline

Was nach wie vor zählt und was sich geändert hat.

Helpful Content Update: Seit 20242025 in den Core-Algorithmus integriert, kein eigenständiges Update mehr 19 . Das System läuft kontinuierlich. Praktisch: Inhalt, der wie für Suchmaschinen geschrieben wirkt, verliert.

E-E-A-T: Trustworthiness ist 2025 die wichtigste der vier Säulen. Klare Angaben zu Author, Quellen, Korrekturpolitik, Veröffentlichungsdatum 11 .

Core Web Vitals (75. Perzentil) 20 :

Metrik Gut Ausreichend Schlecht
LCP ≤ 2,5 s 2,54,0 s > 4,0 s
INP ≤ 200 ms 200500 ms > 500 ms
CLS ≤ 0,1 0,10,25 > 0,25

INP (eingeführt März 2024 als Ersatz für FID) ist 2026 die meistgerissene Metrik 43 % der Sites scheitern dort 20 . Heißt: JavaScript, das auf den Main-Thread blockt, kostet messbar. Bei Onepagern ist das eher unproblematisch (wenig JS); bei Next.js-Stacks der Hebel.

Was nicht mehr relevant ist:

  • FAQ-Rich-Snippets in Google-SERPs sind seit 2023 stark eingeschränkt (nur noch für autoritative Health-/Government-Quellen). Schema-Markup trotzdem behalten wegen LLMs.
  • HowTo-Rich-Snippets desktop-only.
  • Keyword-Density als Metrik tot.
  • Meta-Keywords seit Ewigkeiten tot.

Was synergetisch mit GEO funktioniert:

  • Saubere Heading-Hierarchie (H1 → H2 → H3) hilft beiden.
  • Klare Frage-Antwort-Struktur (H2 = Frage, Absatz = Antwort) wird sowohl in Google-AI-Overviews als auch in LLM-Antworten zitiert.
  • Internal Linking zwischen thematisch verwandten Seiten verstärkt Topical Authority für beide.
  • Sitemap.xml weiterhin Pflicht für Discovery.
  • Mobile-First-Indexierung ist seit 2023 Standard. Mobile-Rendering muss vollständig sein, nicht nur reduziert.

5. Übersetzung auf m's Stacks

5.1 onepager (Bash + Caddy)

Architektur-Recap: sites/<domain>/ mit site.yaml + index.html. render.sh ersetzt Platzhalter im gewählten Template. generate-caddyfile.sh generiert Caddy-Routen pro Host. Custom-Sites mit template: custom werden roh kopiert.

Was jetzt geht ohne Refactor:

  • Pro Site eine llms.txt und robots.txt direkt in sites/<domain>/ ablegen. Build-Script kopiert sie nach build/<domain>/. Caddy bedient das automatisch.
  • Pro kommerzieller / persönlicher Site (ichbinotto, mai-otto, lexsiebels, heygoldi, smartin3, martinsiebels) ein JSON-LD-Block direkt in index.html einfügen, statisch.
  • Satire-Sites (kAInco, kIlemma, orAKIl etc.): bewusst kein Schema, kein llms.txt. Sie sind keine Quellen, sie sind Wortspiele. Das ehrlich lassen.

Was lohnt als Template-Erweiterung:

  • templates/base.html um Schema-Slot erweitern: {{schema_jsonld}}. render.sh füllt ihn aus site.yaml (schema: Block).
  • site.yaml Schema-Beispiel:
    schema:
      type: Person
      sameAs:
        - https://msbls.de/
        - https://github.com/...
    
  • render.sh Template-Erweiterung: datePublished / dateModified aus Git-Metadaten ableiten.
  • Top-Third-Disziplin pro Template: tagline + erste section müssen sachlich sein, nicht poetisch. Templates sind hier neutral die Disziplin ist beim Inhalt.

Top-Third anwenden: person-dark/person-light/product-dark haben heute Hero mit Name + Tagline. Tagline ist der erste zitierfähige Satz muss eine Definition sein, nicht Stimmung.

Beispiel sites/lexsiebels/site.yaml (heute):

tagline: "Wo Recht und Code zusammenfinden"

Besser:

tagline: "Patentanwalt mit Schwerpunkt UPC-Verfahren und Software-Patente, Sankt Augustin, seit 2014."

Caddyfile: kein Eingriff nötig, alle Header (HSTS, Cache-Control) macht Caddy schon.

5.2 flexsiebels.de (Fresh + Preact)

Vorteil: SSR liefert vollständiges HTML beim ersten Request LLMs sehen den fertigen Inhalt, nicht eine leere SPA-Hülle. Das ist gegenüber CSR-only-Stacks ein Riesenvorsprung.

Was umsetzen:

  • <Head>-Komponente um JSON-LD erweitern. Eine wiederverwendbare <JsonLd type={...} data={...} />-Komponente, die das richtige Schema rendert.
  • Pro Author/Über-Seite: Person-Schema mit sameAs-Block.
  • Pro Article: Article-Schema mit datePublished, dateModified, author.
  • /static/llms.txt und /static/robots.txt als statische Files.
  • routes/_app.tsx: globale Meta-Tags (description, og:image) einheitlich.
  • INP achten: keine teuren Hydration-Listener auf nicht-interaktiven Bereichen. Fresh ist hier ohnehin sparsam (Islands-Architektur).

Author-Hub: flexsiebels.de/matthias (oder /team/matthias) als zentrale Author-Page mit vollem Person-Schema, von der alle anderen Sites über worksFor/creator/sameAs zeigen.

5.3 msbls.de (nginx static)

Status: statisch ausgeliefert, /ki ist Transparenzseite (siehe Memory: Issue #2).

Maßnahmen:

  • /about (oder /matthias) als kanonische Author-Page anlegen. Vollständiges Person-Schema, alle sameAs. Diese URL wird zur Schema-Ankerseite für alle anderen Domains.
  • /llms.txt und /robots.txt an Root.
  • /ki mit Article-Schema markieren.
  • nginx-Config: expires 7d für CSS/JS, expires 30d für Fonts/Bilder. Cache-Control korrekt setzen.
  • Sitemap.xml automatisch generieren (statisches Template oder tree-basiert).

5.4 paliad.de (Next.js + Go)

Kontext: kommerzieller B2B-Stack. Hier ist GEO am direktesten ROI-relevant.

Maßnahmen:

  • Next.js Metadata API systematisch nutzen (generateMetadata pro Route).
  • JSON-LD über <Script type="application/ld+json" /> in jedem Seiten-Layout.
  • Pro Produkt: Product-Schema. Pro Case Study: Article-Schema mit Organization als Publisher.
  • app/(marketing)/layout.tsx: Organization-Schema fest einbinden.
  • Top-Third-Disziplin auf jeder Marketing-Seite: erste 200 Wörter sind sachliche Produktbeschreibung. Nicht "Revolutioniere deine ...".
  • Citation-Tracking einrichten (xSeek, Profound oder selbstgebauter Crawler) paliad ist klein genug, dass jede LLM-Citation zählt.
  • INP-Audit: Welche Routen blocken den Main-Thread? Next.js Image, loading="lazy", dynamische Imports prüfen.
  • next-sitemap oder eigener Sitemap-Generator.

5.5 youpc.org (Next.js, content-heavy)

Goldmine. Legal-Daten sind GEO-ideal: faktenlastig, zitierbar, mit klaren Zahlen. Princeton-Paper sagt: für Recht/Verwaltung wirkt Statistik-Addition am stärksten das passt zu youpc fast 1:1.

Maßnahmen:

  • Pro Judgment-Page: vollständiges Schema mit Article + about: Court, judge, parties, patent. LegalForceStatus und mainEntityOfPage setzen.
  • Top-Third-Regel: jede Case-Page beginnt mit Fakten-Block (Aktenzeichen, Datum, Division, Parteien, Holding in 1 Satz), erst dann der Volltext / die Analyse.
  • Zahlen sichtbar: "1600+ Entscheidungen", "X Divisions", "Y Jahre Erfahrung". Diese Zahlen aufs Hero, in llms.txt, in Schema.
  • llms.txt mit Index aller Hub-Seiten (Topics, Divisions, Authors).
  • Author-Schema: Matthias als editor/author, sameAs zu msbls.de.
  • Sitemap.xml: vollständig, segmentiert (cases, judges, divisions je eigene Sitemap).
  • Strukturierte FAQ-Pages pro Topic: "Wie hat die LD München Anspruchsauslegung X behandelt?" mit FAQPage-Schema.
  • HTMX-Caveat: Inhalt, der nur über HX-Request geliefert wird, ist für viele Crawler unsichtbar. SSR-Fallback prüfen (Memory-Eintrag bestätigt: youpc Impressum braucht HX-Request-Header). Für Content-Pages den HX-Trick nicht nutzen, oder zusätzlich SSR.
  • Reddit-Strategie pilotieren: bei UPC-relevanten Diskussionen in r/patents, r/lawyers etc. mit Klarnamen Antworten geben, die auf youpc verweisen. Sparsam, Substanz first.
  • YouTube-Strategie evaluieren: kurze Erklärvideos zu Leitentscheidungen. 2026 die meistzitierte LLM-Quelle.

6. Checkliste pro neuer Site

Vor dem Launch:

  • H1 ist die Kernfrage / das Kernthema, nicht der Markenname allein
  • Erste 100200 Wörter: nüchterne Definition mit Zahlen, kein Marketing-Lead
  • Mindestens eine konkrete Zahl pro Hauptaussage
  • Person/Organization/Article/Product Schema (JSON-LD) eingebaut, je nach Typ
  • sameAs-Links auf existierende Identity-Anker (msbls.de, LinkedIn, Wikidata)
  • datePublished und dateModified sichtbar im HTML und in Schema
  • Author-Page existiert und ist verlinkt (oder eindeutige Autor-Referenz im Schema)
  • Impressum + AI-Disclosure verlinkt (für onepager: shared-Scripts haben das)
  • robots.txt an Root, mit Sitemap-Hinweis, alle Bots erlauben
  • sitemap.xml an Root
  • llms.txt an Root (außer reine Satire-Sites)
  • <title> und <meta description> gesetzt, beide unter 60/160 Zeichen
  • Open-Graph-Tags + Twitter-Card-Tags
  • Mobile-Rendering vollständig (alles, was Desktop sieht)
  • Anti-AI-Lint: kein Vokabel-Cluster aus der Blacklist
  • Anti-AI-Struktur-Check: keine "Challenges and Future Prospects"-Schlusssektion, kein "in der sich entwickelnden Landschaft"
  • HTTPS, gültiges Zertifikat (Caddy / Dokploy macht das)

Nach dem Launch:

  • Lighthouse-Audit: alle Core Web Vitals grün im Lab
  • PageSpeed Insights mit echten Felddaten nach 28 Tagen erneut prüfen
  • Google Search Console eingerichtet, Sitemap eingereicht
  • Bing Webmaster Tools eingerichtet (wegen ChatGPT-Index)
  • In facts.json der Stack-Familie eingetragen, falls relevant
  • Verlinkung von der zentralen Author-Page (msbls.de) gesetzt

7. Maintenance

Monatlich:

  • LLM-Visibility-Stichprobe: 510 typische Anfragen in ChatGPT/Claude/Perplexity manuell stellen, prüfen ob Sites zitiert werden.
  • Google Search Console: neue Crawl-Fehler, gefallene Klicks, neue Top-Anfragen.
  • Core Web Vitals (PageSpeed Insights, Felddaten): hat eine Site neu unter "good" gerutscht?

Quartalsweise:

  • llms.txt aktualisieren (neue Hub-Pages aufnehmen, gelöschte entfernen).
  • Schema-Markup-Validierung über alle Sites (Google Rich Results Test, Schema.org Validator).
  • Veraltete sameAs-Links prüfen (LinkedIn-Wechsel, gelöschte Profile).
  • Wikipedia-/Wikidata-Status der Hauptidentitäten/Brands prüfen.

Jährlich:

  • Anti-AI-Vokabel-Blacklist aktualisieren (Modell-Drift, neue Trigger-Wörter).
  • Crawler-User-Agent-Liste prüfen (alle 612 Monate ändern Anbieter ihre Bot-Namen, siehe das Anthropic-Drei-Bot-Update).
  • Author-Pages auffrischen: Bilder, Position, Projekte aktuell?
  • Tote Off-Site-Erwähnungen (Forum-Posts, alte Profile) bereinigen.

Bei jeder größeren Änderung:

  • dateModified setzen, nicht das Veröffentlichungsdatum überschreiben.
  • Sitemap-Lastmod aktualisieren.
  • LLM-Prompt-Tests ein paar Tage später wiederholen, um Indexierung zu prüfen.

8. Quellen


Dokument-Eigentümer: m. Letzte Recherche: 2026-04-29 (Curie, Issue #8). Nicht im Scope: Implementierung. Folge-Issues werden pro Site/Stack einzeln aufgesetzt.


  1. ALM Corp AI Overviews and Zero-Click Searches: Adapting Your SEO Strategy for 2026. https://almcorp.com/blog/ai-overviews-zero-click-searches-seo-strategy-2026/ ↩︎

  2. The Digital Bloom 2025 Organic Traffic Crisis: Zero-Click & AI Impact Report. https://thedigitalbloom.com/learn/2025-organic-traffic-crisis-analysis-report/ ↩︎

  3. Aggarwal, Murahari, Rajpurohit, Kalyan, Narasimhan, Deshpande GEO: Generative Engine Optimization. KDD 2024 / arXiv:2311.09735. https://arxiv.org/abs/2311.09735 ↩︎

  4. Discovered Labs AI Citation Patterns: How ChatGPT, Claude, and Perplexity Choose Sources. https://discoveredlabs.com/blog/ai-citation-patterns-how-chatgpt-claude-and-perplexity-choose-sources ↩︎

  5. ALM Corp Reddit Is Now the #2 Most Cited Source in AI Search. https://almcorp.com/blog/reddit-ai-search-citations-geo-for-brands/ ↩︎

  6. GEORaiser YouTube Overtakes Reddit as #1 AI Citation Source in 2026. https://georaiser.com/blog/youtube-overtakes-reddit-ai-citations ↩︎

  7. ALM Corp ChatGPT Citations: 44 % Come From the First Third of Content. https://almcorp.com/blog/chatgpt-citations-study-44-percent-first-third-content/ ↩︎

  8. Search Engine Land How schema markup fits into AI search — without the hype. https://searchengineland.com/schema-markup-ai-search-no-hype-472339 ↩︎

  9. Digidop Structured data: SEO and GEO optimization for AI in 2026. https://www.digidop.com/blog/structured-data-secret-weapon-seo ↩︎

  10. upGrowth AI Citation Algorithm: How LLMs Pick Sources [2026]. https://upgrowth.in/citation-algorithm-chatgpt-perplexity-gemini-ai-overviews-2026/ ↩︎

  11. TG (We Are TG) What's New with Google E-E-A-T in 2025? https://www.wearetg.com/blog/google-eeat/ ↩︎

  12. Wikipedia Signs of AI writing. https://en.wikipedia.org/wiki/Wikipedia:Signs_of_AI_writing ↩︎

  13. The Digital Bloom 2025 AI Visibility Report: How LLMs Choose What Sources to Mention. https://thedigitalbloom.com/learn/2025-ai-citation-llm-visibility-report/ ↩︎

  14. Howard, Jeremy llms.txt proposal. Answer.AI, 2024-09-03. https://llmstxt.org/ ↩︎

  15. aeo.press The State of llms.txt in 2026. https://www.aeo.press/ai/the-state-of-llms-txt-in-2026 ↩︎

  16. ALM Corp Does llms.txt Actually Matter for AI Search? https://almcorp.com/blog/does-llms-txt-matter-data-analysis/ ↩︎

  17. AICarma The Complete Robots.txt Guide for AI Crawlers: 2026 Strategy & Templates. https://aicarma.com/blog/robots-txt-for-ai/ ↩︎

  18. ALM Corp ClaudeBot, Claude-User & Claude-SearchBot: Anthropic's Three-Bot Framework. https://almcorp.com/blog/anthropic-claude-bots-robots-txt-strategy/ ↩︎

  19. Saffron Edge Google SEO Updates 20242025: Get Your 2026 SEO Plan. https://www.saffronedge.com/blog/google-seo-updates/ ↩︎

  20. corewebvitals.io What Are the Core Web Vitals? LCP, INP & CLS Explained (2026). https://www.corewebvitals.io/core-web-vitals ↩︎