Discussion Technical SEO AI Crawlers

Wie gehen KI-Crawler mit Infinite Scroll um? Unsere Inhalte werden nicht indexiert

FR
FrontendDev_Marcus · Frontend-Entwickler
· · 78 upvotes · 10 comments
FM
FrontendDev_Marcus
Frontend-Entwickler · 19. Dezember 2025

Wir haben für unseren Blog eine moderne React-Seite mit Infinite Scroll gebaut. Tolles Nutzererlebnis, aber unsere Inhalte erscheinen überhaupt nicht in KI-Antworten.

Google indexiert sie problemlos (nach etwas Arbeit mit SSR). Aber KI-Plattformen scheinen den Großteil unserer Inhalte zu übersehen.

Unser Setup:

  • React SPA mit Infinite Scroll
  • SSR für initialen Seitenaufruf
  • Zusätzliche Inhalte werden beim Scrollen per JavaScript geladen
  • 500+ Blogbeiträge, nur etwa 50 scheinen KI-zugänglich zu sein

Fragen:

  • Führen KI-Crawler überhaupt JavaScript aus?
  • Ist Infinite Scroll grundsätzlich inkompatibel mit KI-Sichtbarkeit?
  • Was ist der beste technische Ansatz für KI-Crawler-Zugänglichkeit?
  • Müssen wir die Paginierung komplett neu aufbauen?

Hat jemand aus dem Frontend-Bereich das schon gelöst?

10 comments

10 Kommentare

CE
CrawlerTech_Expert Experte Technischer SEO-Berater · 19. Dezember 2025

Ich erkläre kurz, wie verschiedene KI-Crawler mit JavaScript umgehen:

JavaScript-Unterstützung bei KI-Crawlern:

CrawlerJS-RenderingScroll-SimulationWartezeit
GPTBotBegrenzt/keineNeinMinimal
Google-ExtendedGut (wie Googlebot)NeinStandard
ClaudeBotBegrenztNeinMinimal
PerplexityBotVariiertNeinBegrenzt
Common CrawlKeineNeinKeine

Das Kernproblem:

Infinite Scroll erfordert:

  1. JavaScript-Ausführung
  2. Auslösen von Scroll-Events
  3. Zusätzliche HTTP-Anfragen
  4. Rendering der neuen Inhalte

Die meisten KI-Crawler scheitern an Schritt 1 oder 2.

Warum SSR nicht ausreicht:

Ihr SSR liefert die Startseite. Aber Infinite Scroll-Inhalte sind nicht „initial“ – sie laden erst bei Interaktion. SSR löst die Interaktionsabhängigkeit nicht.

Das grundlegende Problem:

Infinite Scroll ist mit den aktuellen Fähigkeiten von KI-Crawlern grundsätzlich inkompatibel. Sie brauchen eine alternative Lösung.

FM
FrontendDev_Marcus OP · 19. Dezember 2025
Replying to CrawlerTech_Expert
Heißt das, wir müssen alles umbauen? Was wird empfohlen?
CE
CrawlerTech_Expert Experte · 19. Dezember 2025
Replying to FrontendDev_Marcus

Empfohlene Ansätze (nach KI-Freundlichkeit):

Option 1: Traditionelle Paginierung (am KI-freundlichsten)

/blog/page/1
/blog/page/2
/blog/page/3
  • Jede Seite hat ihre eigene URL
  • Inhalt im initialen HTML
  • Sitemap enthält alle Seiten
  • KI-Crawler können alles erreichen

Option 2: Hybrider Ansatz

  • Infinite Scroll für Nutzer:innen
  • ABER auch paginierte URLs bereitstellen
  • Sitemap verweist auf paginierte Versionen
  • Canonical-Tag zur Duplikatvermeidung nutzen
<!-- Infinite Scroll-Seite -->
<link rel="canonical" href="/blog/page/1" />

<!-- Paginierung immer verfügbar -->
<nav>
  <a href="/blog/page/1">1</a>
  <a href="/blog/page/2">2</a>
</nav>

Option 3: Prerendering für KI-Crawler

  • KI-User-Agents erkennen
  • Vorgefertigtes HTML ausliefern
  • Vollständiger Inhalt in der Serverantwort

Alle Optionen haben Vor- und Nachteile. Option 1 ist am einfachsten und zuverlässigsten für KI. Option 2 erhält das UX und sorgt für KI-Zugänglichkeit.

RS
ReactDev_Sarah React-Entwicklerin · 19. Dezember 2025

Wir hatten genau dieses Problem. Unsere Lösung:

Hybrider Ansatz in der Praxis:

// URL-Struktur
/blog              // Infinite Scroll (Standard für Nutzer)
/blog/archive/1    // Paginiert (für Crawler zugänglich)
/blog/archive/2

Wichtige Details:

  1. Sitemap enthält nur paginierte URLs

    • KI-Crawler finden /blog/archive/* Seiten
    • Diese rendern vollständigen Inhalt serverseitig
  2. Infinite Scroll-Seite lädt denselben Inhalt

    • Nutzt die Pagination-API im Hintergrund
    • Besseres UX für Menschen
  3. Interne Links zu einzelnen Artikeln

    • Nicht zur Scroll-Position
    • Jeder Artikel hat eine eigene URL
  4. robots.txt-Hinweis:

# Crawler sollen sich auf Einzelartikel fokussieren
# Nicht auf den Infinite Scroll-Container
Sitemap: /sitemap.xml

Ergebnis:

  • UX für Menschen bleibt (Infinite Scroll)
  • KI-Crawler greifen über die Archivseiten auf alle Inhalte zu
  • Einzelne Artikel werden alle indexiert
  • Zitierquote nach Umsetzung um das 4-fache gestiegen
NK
NextJSDev_Kevin · 18. Dezember 2025

Next.js-spezifischer Ansatz:

Mit getStaticPaths + getStaticProps:

// pages/blog/page/[page].js
export async function getStaticPaths() {
  const totalPages = await getTotalPages();
  const paths = Array.from({ length: totalPages }, (_, i) => ({
    params: { page: String(i + 1) }
  }));
  return { paths, fallback: false };
}

export async function getStaticProps({ params }) {
  const posts = await getPostsForPage(params.page);
  return { props: { posts, page: params.page } };
}

Vorteile:

  • Statische Seiten für jede Paginierung
  • Voller Inhalt im HTML beim Build
  • KI-Crawler erhalten den kompletten Inhalt
  • Schnelle Ladezeiten (statisch)

Dann Infinite Scroll als Enhancement:

  • Infinite Scroll clientseitig nutzt dieselbe API
  • Progressive Enhancement-Ansatz
  • Funktioniert auch ohne JS

So bekommen Sie das Beste aus beiden Welten.

PS
Prerender_Specialist Experte · 18. Dezember 2025

Prerendering als Option:

Prerendering-Dienste für KI-Crawler:

Sie können KI-Crawler anhand des User-Agents erkennen und prerenderte Inhalte ausliefern:

// middleware
if (isAICrawler(req.headers['user-agent'])) {
  return servePrerenderedVersion(req.url);
}

KI-Crawler-Erkennung:

const aiCrawlers = [
  'GPTBot',
  'ChatGPT-User',
  'Google-Extended',
  'ClaudeBot',
  'PerplexityBot',
  'anthropic-ai'
];

function isAICrawler(userAgent) {
  return aiCrawlers.some(crawler =>
    userAgent.includes(crawler)
  );
}

Prerendering-Optionen:

  • Prerender.io
  • Rendertron
  • Eigene Lösung auf Basis von Puppeteer
  • Prerendering zur Build-Zeit

Achtung:

Nicht alle KI-Crawler geben sich eindeutig zu erkennen. Manche werden evtl. nicht erfasst. Dies ist ein ergänzender Ansatz, kein Ersatz für korrekte Paginierung.

SL
SEODevOps_Lisa · 18. Dezember 2025

Testmethodik für die KI-Crawler-Zugänglichkeit:

Manuelle Tests:

  1. JavaScript-deaktiviert-Test:

    • Blog im Browser öffnen
    • JavaScript deaktivieren
    • Welche Inhalte sind sichtbar?
    • Das entspricht der Sicht vieler Crawler
  2. Quelltext-Test:

    • Seitenquelltext anzeigen (nicht „Element untersuchen“)
    • Ist der Inhalt im HTML?
    • Oder nur JavaScript-Platzhalter?
  3. curl-Test:

    curl -A "GPTBot/1.0" https://yoursite.com/blog/
    
    • Ist im Response echter Inhalt enthalten?

Automatisierte Tests:

  1. Google Search Console:

    • URL-Prüfungstool
    • „Gerenderte Seite anzeigen“ zeigt, was Googlebot sieht
    • (Nicht KI-Crawler, aber ähnliches JS-Rendering)
  2. Lighthouse-Audit:

    • „SEO“-Kategorie prüfen
    • Crawlability-Probleme werden angezeigt

Was Sie sehen möchten:

  • Inhalt in der initialen HTML-Antwort
  • Links zu allen Seiten auffindbar
  • Kein JS für Inhaltsanzeige erforderlich
E
EcommerceDevSEO · 17. Dezember 2025

E-Commerce-Perspektive:

Wir haben 10.000+ Produkte mit „Mehr laden“-Funktion. So lösen wir es:

Kategorie-Seitenstruktur:

/category/shoes                    # Erste 24 Produkte + Mehr laden
/category/shoes?page=2            # Produkte 25-48
/category/shoes?page=3            # Produkte 49-72

Umsetzung:

  1. Startseite hat immer Paginierungslinks

    • Auch bei aktiviertem Infinite Scroll
    • Im Footer Links zu Seite 1, 2, 3…
  2. ?page=-Parameter sind canonical

    • Jede Seite ist eigener Inhalt
    • Kein Duplikat der Hauptseite
  3. Sitemap enthält alle paginierten URLs

    • Nicht nur die Infinite Scroll-URL
  4. Produkte haben eigene URLs

    • Kategorie-Paginierung dient der Auffindbarkeit
    • Produkte sind der eigentliche Inhalt

Ergebnis:

KI-Plattformen zitieren unsere Produktseiten, die sie über die paginierte Kategoriestruktur finden.

FM
FrontendDev_Marcus OP Frontend-Entwickler · 17. Dezember 2025

Das war extrem hilfreich. Hier mein Umsetzungsplan:

Ansatz: Hybride Paginierung

Phase 1: Paginierte Routen einführen (Woche 1-2)

  • /blog/archive/[page] Routen erstellen
  • SSR für vollen Inhalt im HTML
  • Paginierungsnavigation einbauen
  • Sitemap entsprechend anpassen

Phase 2: Vorhandenes Infinite Scroll updaten (Woche 3)

  • Infinite Scroll für /blog beibehalten
  • Archivseiten als Datenquelle nutzen
  • Canonical von /blog auf /blog/archive/1

Phase 3: Testen und validieren (Woche 4)

  • Mit deaktiviertem JS testen
  • curl-Test für KI-User-Agents
  • KI-Zitierquote überwachen

Technische Umsetzung:

/blog                 → Infinite Scroll (Menschen, canonical zu archive/1)
/blog/archive/1       → Paginiert (Crawler, canonical zu self)
/blog/archive/2       → Paginiert (Crawler)
/blog/[slug]          → Einzelartikel (Hauptinhalt)

Leitprinzipien:

  • Inhalte ohne JavaScript zugänglich
  • Jedes Stück Inhalt hat eine direkte URL
  • Sitemap enthält alle Inhaltsseiten
  • Infinite Scroll ist ein Enhancement, kein Muss

Vielen Dank an alle für die detaillierten technischen Hinweise.

Have a Question About This Topic?

Get personalized help from our team. We'll respond within 24 hours.

Frequently Asked Questions

Können KI-Crawler Infinite Scroll-Inhalte erfassen?
Die meisten KI-Crawler haben nur begrenzte JavaScript-Rendering-Fähigkeiten. Inhalte, die Benutzerinteraktion (Scrollen) zum Laden benötigen, sind für KI-Systeme oft unsichtbar. Serverseitiges Rendering oder hybride Ansätze werden empfohlen.
Welche Paginierung ist für KI-Crawler am besten?
Traditionelle Paginierung mit eindeutigen URLs für jede Seite ist am KI-freundlichsten. Jede Seite sollte direkt per URL erreichbar, in der Sitemap enthalten sein und kein JavaScript zur Anzeige erfordern.
Rendern KI-Crawler JavaScript?
Das JavaScript-Rendering von KI-Crawlern variiert stark. GPTBot hat begrenzte JS-Fähigkeiten. Manche Crawler sehen nur das initiale HTML. Für KI-Sichtbarkeit sollte kritischer Inhalt in der anfänglichen Serverantwort, nicht JavaScript-geladen, enthalten sein.
Wie kann ich testen, ob KI-Crawler auf meine Inhalte zugreifen können?
Deaktivieren Sie JavaScript und betrachten Sie Ihre Seite – das kommt dem nahe, was viele KI-Crawler sehen. Prüfen Sie auch die robots.txt, ob KI-Crawler nicht blockiert sind, und vergewissern Sie sich, dass der Inhalt im initialen HTML-Quelltext erscheint.

Überwachen Sie die KI-Sichtbarkeit Ihrer Inhalte

Verfolgen Sie, welche Ihrer Seiten von KI-Plattformen gefunden und zitiert werden. Identifizieren Sie Crawling-Probleme, die Ihre Sichtbarkeit beeinträchtigen.

Mehr erfahren