SEO & GEO Analyzer — Manual
Alle Funktionen des SEO & GEO Analyzers: Eingabe, Architektur, beide Scores mit allen Gewichtungen, jeder Tab, Expert Mode, Export und Grenzen.
Zurück zur Übersicht: SEO & GEO Analyzer · Tool live öffnen: www.jpkc.com/tools/seo/
Dieses Manual beschreibt den SEO & GEO Analyzer vollständig: was beim Analysieren einer URL passiert, wie die beiden Scores im Detail entstehen, was jeder einzelne Bereich des Berichts prüft und welche technischen Grenzen gelten. Die Oberfläche des Tools ist auf Englisch — die Tab- und Button-Bezeichnungen werden hier deshalb in ihrer englischen Original-Schreibweise genannt (mit deutscher Erläuterung), damit du dich im echten Interface zurechtfindest.
URL-Eingabe und Ablauf
Der Analyzer ist ein Einzelseiten-Analyzer: pro Durchlauf wird genau eine URL untersucht, kein Crawl über die ganze Domain. Du fügst oben in das Eingabefeld (https://example.com/page) eine http(s)-Adresse ein und klickst auf Analyze oder drückst Enter. Fehlt das Schema, setzt das Tool https:// davor. Sammelprüfungen über mehrere URLs (Statuscodes, Sitemaps, strukturierte Daten) gibt es nur im optionalen Expert Mode.
Rund um das Eingabefeld:
- Globus-Symbol links: Sobald etwas im Feld steht, wird es zum ✕ und leert das Feld per Klick.
- Open URL in new tab (Pfeil-Symbol, ab Tablet-Breite): öffnet die eingegebene Adresse in einem neuen Tab.
- Verlauf: Das Feld merkt sich die letzten 10 analysierten URLs im
localStoragedeines Browsers und bietet sie als Dropdown an; über Clear history löschst du die Liste. Auch importierte Analysen landen dort. - Sperrzeit: Zwischen zwei Analysen liegen mindestens 3 Sekunden (im Expert Mode entfällt das).
Solange noch keine Analyse gelaufen ist, sind die Daten-Tabs ausgegraut; SEO Guide, GEO Guide und Export / Import sind immer bedienbar.
Ab dem Klick läuft ein hybrider Prozess in vier Schritten:
- Serverseitiger Abruf (PHP-Proxy). Dein Browser darf eine fremde Seite aus Sicherheitsgründen nicht direkt laden (CORS), deshalb holt ein serverseitiger Proxy die Daten per cURL: die Seite selbst (finales HTML, Response- und Roh-Header, SSL-Zertifikat, Redirect-Kette, Timing), die
robots.txtund diellms.txt. Diese drei Abrufe laufen parallel. Endet die Redirect-Kette auf einem anderen Host, lädt das Toolrobots.txtundllms.txtanschließend vom Ziel-Host nach — dort gelten die Regeln für die analysierte Seite.robots.txtundllms.txtwerden pro Adresse 10 Minuten imlocalStoragezwischengespeichert; eine gerade geänderte Datei siehst du im Standard-Modus also erst nach Ablauf dieser Frist. - Parsing im Browser. Das abgerufene HTML wird lokal in deinem Browser per
DOMParserzerlegt. Die eigentliche Analyse passiert also auf deinem Rechner, nicht auf dem Server. - Datenaufbereitung. Aus dem geparsten Dokument werden die einzelnen Datengruppen extrahiert: Meta-Daten, Links, Bilder, strukturierte Daten, Performance-Werte, Barrierefreiheit, Content und semantische Struktur.
- Bewertung und Anzeige. Aus diesen Daten werden der SEO- und der GEO-Score berechnet, und der Bericht rendert in seine Tabs.
Expert Mode (optional)
Es gibt einen optionalen Expert Mode mit einem lokalen Proxy: Statt über den JPKCom-Server holt dann ein selbst betriebener lokaler Proxy auf http://127.0.0.1:<port> die Seite (Open-Source-Projekt proxy-jpkcom-dev-tools (öffnet in neuem Tab)). Eingeschaltet wird er über den Schalter Expert im Kopf des Tools, das Zahnrad daneben öffnet die Einstellungen. Die Einrichtung des lokalen Proxys ist fortgeschritten und für den normalen Betrieb nicht nötig.
Was der Expert Mode zusätzlich freischaltet:
- Keine Rate-Limits — weder die 3-Sekunden-Sperre zwischen Analysen noch die Wartezeit beim URL Status Check.
- Frische
robots.txtundllms.txtbei jeder Analyse, ohne den 10-Minuten-Cache. - Größere Seiten: Die 5-MB-Grenze des Server-Proxys entfällt.
- Markdown-Content-Negotiation: Der lokale Proxy schickt einen eigenen
Accept: text/markdown-Header mit und prüft so, ob die Zielseite Markdown ausliefert — etwas, das der serverseitige Proxy nicht kann. Dieses Signal ist deshalb Expert-Mode-exklusiv und rein informativ (GEO-Check Markdown via Content Negotiation). - HTTP/3-Erkennung: Kündigt der Server HTTP/3 an, zeigt die Kachel HTTP Version im Overview zusätzlich „+ HTTP/3“.
- Check all — Sammel-Statusprüfung aller URLs einer Tabelle (Links, Bilder, Ressourcen), siehe Check all.
- Crawl Sitemaps und Discover Sitemap im Robots Analysis-Tab sowie der Multi-Page Check für strukturierte Daten im Structured Data-Tab.
Auch der lokale Proxy sperrt private, interne und Loopback-Adressen. Eine Seite auf localhost oder im Intranet analysierst du also auch im Expert Mode nicht.
Architektur: serverseitiger Abruf, Analyse im Browser
Wichtig für Verständnis und Datenschutz: Die analysierte Seite wird vom JPKCom-Server abgerufen, nicht von deinem Browser. Die Zielseite sieht also einen Request vom JPKCom-Server (mit dessen User-Agent), nicht deine IP-Adresse.
Die beiden serverseitigen Endpunkte (ein Fetch-Proxy und ein token-basierter interner Endpunkt zur Authentifizierung) sind kein öffentliches API, das du selbst aufrufen kannst — sie werden ausschließlich vom JavaScript des Tools genutzt und sind gegen Missbrauch gehärtet. Praktisch relevant sind vor allem die daraus folgenden Betriebsfakten:
- SSRF-Schutz: Jeder Redirect-Hop wird erneut geprüft und auf die geprüfte IP-Adresse festgelegt; private, lokale und interne IP-Adressen werden blockiert. Nur HTTP und HTTPS sind als Protokolle erlaubt.
- Redirect-Kette: maximal 10 Hops, Schleifen werden erkannt. Jeder Hop wird per
HEADabgefragt; antwortet ein Server darauf mit 405 oder 501, fragt der Proxy mitGETnach. - Zeitbudget: Kette und Seitenabruf teilen sich 26 Sekunden; ein einzelner Hop darf höchstens 10 s dauern, der Abruf der Zielseite höchstens 20 s.
robots.txtundllms.txthaben je 10 s. Ist das Budget aufgebraucht, endet die Kette mit dem Hinweis „Stopped: time budget used up“. - Größenlimit: maximal 5 MB Body. Größere Seiten werden während der Übertragung gekappt (ohne halbes UTF-8-Zeichen am Schnitt); der Overview zeigt dann einen gelben Hinweis, dass nur der Anfang analysiert wurde und Links, Wörter und strukturierte Daten weiter unten fehlen, zusätzlich erscheint eine Meldung.
- Rate-Limits: Der Proxy nimmt pro IP-Adresse höchstens 120 Anfragen pro Minute an. Der URL Status Check (prüft auf Wunsch den HTTP-Status einer einzelnen URL) ist zusätzlich auf 1 Anfrage pro 2 Sekunden pro IP begrenzt; darüber kommt ein HTTP 429 zurück.
- Verbindungsdaten: Die angezeigte IP-Adresse ist die der tatsächlich genutzten Verbindung.
Diese Grenzen erklären auch das Degradieren: Nicht-2xx-Seiten werden trotzdem analysiert, fallen aber niedrig aus; lässt sich das HTML nicht parsen, sind DOM-abhängige Auswertungen leer und die meisten On-Page-Prüfungen schlagen fehl. Fehlende robots.txt/llms.txt (404) lassen nur die jeweiligen Prüfungen fehlschlagen, der Lauf geht weiter.
Alles, was die Seite selbst liefert — Titel, Überschriften, JSON-LD, Link-Ziele —, wird vor der Anzeige maskiert. Links aus der analysierten Seite werden nur als http(s)- oder relative Adresse klickbar, andere Schemata wie javascript: werden entschärft.
Das Score-System
Der Analyzer berechnet zwei voneinander unabhängige Scores — den SEO-Score und den GEO-Score — beide normiert auf 0–100 und je als runde Anzeige (Gauge) dargestellt.
Wie ein Score entsteht
Beide Scores funktionieren nach demselben Mechanismus: Jeder Score ist die Summe gewichteter Einzelprüfungen. Jede Prüfung ist ein Objekt aus Kategorie, Name, maximalen Punkten (points), erreichten Punkten (earned), Status und einer Notiz. Der Endwert ist:
score = Math.round(totalEarned / totalMax * 100)Es gibt keinen separaten Gewichtungs-Wert — der ganzzahlige points-Wert ist die Gewichtung. Das Maximum (maxScore) ist dynamisch, weil manche Prüfungen nur unter Bedingungen überhaupt hinzukommen (z. B. nur bei vorhandenen hreflang-Einträgen). Deshalb wird ein Score immer als Prozentwert ausgegeben, nie nur als rohe Punktzahl. Gespeichert wird der Score nirgends: Er entsteht bei jeder Anzeige neu aus den Analysedaten, auch nach einem Import.
Status-Werte: pass, partial, fail — beim GEO-Score zusätzlich info für rein informative 0-Punkte-Prüfungen, die den Score nicht verändern.
Gauge-Bänder und Buchstabennote
Zur schnellen Einordnung gibt es zwei Skalen, identisch für SEO und GEO:
- Gauge-Farbe: Score ≥ 80 → grün, Score ≥ 50 → gelb, sonst rot.
- Buchstabennote: ≥ 90 → A, ≥ 80 → B, ≥ 60 → C, ≥ 40 → D, sonst F.
Unter jeder Gauge stehen die Buchstabennote und die Rohpunkte („x / y points“), die GEO-Gauge trägt zusätzlich die Unterzeile „GEO Readiness Score — How well is this page prepared for AI citation?“.
SEO-Score — alle Prüfungen
Das SEO-Maximum liegt mit allen bedingten Prüfungen bei 121 Punkten, ohne die fünf bedingten Prüfungen bei 107 — ausgegeben wird immer /100. Die Prüfungen nach Kategorie (in Klammern die maximalen Punkte):
Technical
- HTTPS (5) — 5 Punkte bei HTTPS, sonst 0.
- Valid SSL Certificate (4) — 4 Punkte, wenn das Zertifikat gültig ist.
- HTTP 200 Status (5) — Statuscode 200–299.
- Redirects ≤ 1 (3) — ≤ 1 Hop → 3, ≤ 2 → 1 (partial), sonst 0.
- HTTP/2+ (2) — HTTP/2 oder /3 → 2, sonst 0/partial.
- TTFB < 500 ms (4) — < 200 ms → 4, < 500 ms → 2 (partial), sonst 0.
- Security Headers ≥ 4 (3) — ≥ 4 → 3, ≥ 2 → 1, sonst 0; geprüft wird ein Set von 8 Headern (HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, Cross-Origin-Opener-Policy, Cross-Origin-Resource-Policy).
- No Mixed Content (3, bedingt: nur bei HTTPS und verfügbarem DOM) — 0 Vorkommen → 3, ≤ 3 → 1, sonst 0.
On-Page
- Title (50–60 chars) (8) — 50–60 Zeichen → 8, 30–70 → 4, sonst 0.
- Meta Description (70–160 chars) (8) — 70–160 Zeichen → 8, vorhanden → 4, sonst 0.
- Single H1 Heading (5) — genau 1 → 5, > 1 → 2, keine → 0.
- Heading Hierarchy (3) — keine übersprungenen Ebenen → 3, ≤ 2 → 1, sonst 0.
- Canonical URL (3) — Canonical zeigt auf die analysierte URL → 3; zeigt es auf eine andere URL → 2 (partial), weil Suchmaschinen dann jene URL indexieren (richtig für Duplikate, falsch für die Hauptseite); fehlt es → 0.
- No Duplicate Head Tags (2, bedingt: Meta-Daten vorhanden) —
title, Meta-Description, Canonical, Meta-Robots und Viewport dürfen je nur einmal vorkommen; ist eines doppelt, gibt es 0 Punkte, weil Crawler sich dann irgendeines aussuchen. - Page Indexable (5) — kein
noindex(Meta/X-Robots-Tag) und durchrobots.txterlaubt. - Viewport Meta Tag (2).
- HTML Language (2) —
<html lang>gesetzt. - Structured Data (2) — irgendein JSON-LD mit Daten.
- hreflang Valid (3, bedingt: nur bei vorhandenen hreflang-Einträgen) — 0 Fehler/0 Warnungen → 3, 0 Fehler → 1, sonst 0.
- Keyword Consistency (3, bedingt: nur wenn ein Titel da ist) — prüft, ob bis zu 5 signifikante Titel-Wörter (Länge ≥ 4) in H1/Description/URL auftauchen; Trefferquote ≥ 0,6 → 3, ≥ 0,3 → 1, sonst 0.
Crawling
- robots.txt Accessible (3).
- Allowed by robots.txt (4) — geprüft wird die finale URL gegen die
User-agent: *-Gruppe; erlaubt → 4 (eine fehlende oder leererobots.txterlaubt alles), blockiert → 0. Nur wenn gar keine robots-Daten vorliegen, etwa bei einem älteren Import, gibt es 2 (partial). - Sitemap in robots.txt (3) — mindestens eine
Sitemap:-Direktive.
Social
- Open Graph Tags (≥ 4) (4) — ≥ 4 → 4, ≥ 2 → 2, > 0 → 1, sonst 0.
- OG Image (3) —
og:imagevorhanden. - OG Completeness (4 essential) (3, bedingt: Meta vorhanden) — die vier Essentials
og:title,og:description,og:image,og:url; alle 4 → 3, ≥ 2 → 1, sonst 0. - Twitter / X Card (3) —
twitter:cardvorhanden.
Performance
- Page Size < 500 KB (3) — < 500 KB → 3, 500 KB–1 MB → 1, sonst 0.
- HTTP Compression (2) — irgendein
Content-Encoding(meldet gzip/brotli + Transfergröße). - No Render-Blocking Resources (3) — 0 → 3, ≤ 2 → 1, sonst 0.
Accessibility
- Images Have Alt Text (4) — alle
altvorhanden → 4; fehlt es bei höchstens 20 % der Bilder (aufgerundet, also mindestens einem Bild) → 2, sonst 0. - ARIA Landmarks (main present) (2) — ein
<main>existiert. - No Empty Anchors (3) — 0 → 3, ≤ 2 → 1, sonst 0.
Content
- Word Count ≥ 300 (3) — ≥ 300 → 3, ≥ 100 → 1, sonst 0.
- Readability ≥ 60 (Standard) (2) — Lesbarkeitswert (sprachabhängige Formel, siehe Content Analysis) ≥ 60 → 2, ≥ 40 → 1, sonst 0.
- Text/HTML Ratio ≥ 5% (1) — ≥ 5 % → 1, sonst 0.
GEO-Score — alle Prüfungen
Das GEO-Maximum (ohne die zwei 0-Punkte-info-Prüfungen) ist 40 Punkte, verteilt auf vier Kategorien: Structured Data 13 + AI Discoverability 11 + Content Structure 11 + Machine Readability 5. Ausgegeben wird auch hier /100.
Structured Data
- JSON-LD Present (4).
- Schema Variety (3) — ≥ 3 Typen → 3, ≥ 2 → 2, ≥ 1 → 1, sonst 0 (sammelt alle
@typerekursiv). - FAQ Schema (3) —
FAQPagevorhanden. - Author / Organization Schema (3) —
Person/Organizationoder einauthor-Feld (E-E-A-T-Signal).
AI Discoverability
- llms.txt Present (3) — HTTP 2xx und nicht-leerer Inhalt.
- llms.txt Valid Structure (2) — 0 Fehler/0 Warnungen → 2, 0 Fehler → 1, sonst 0. Geprüft wird nach der llms.txt-Spezifikation v2 mit demselben Validator wie im llms.txt Generator: Pflicht ist nur die H1, eine fehlende Blockquote-Zusammenfassung ist eine Warnung, Code-Fences werden übersprungen.
- AI Crawlers Allowed (3) — geprüft gegen 16 namentliche KI-Crawler: für Training GPTBot, ClaudeBot, Google-Extended, Applebot-Extended, meta-externalagent, CCBot, Bytespider und Amazonbot; für KI-Suche OAI-SearchBot, Claude-SearchBot, PerplexityBot und DuckAssistBot; für Abrufe im Auftrag von Nutzern ChatGPT-User, Claude-User, Perplexity-User und MistralAI-User. 0 blockiert → 3, ≤ 3 → 2, ≤ 6 → 1, sonst 0. Keine
robots.txtzählt als „alle erlaubt“. Die Notiz nennt die ersten blockierten Bots. - Content Signals Declared (0 Punkte, nur
info) — parstContent-Signalausrobots.txtoder HTTP-Header und meldet einen Konflikt, wenn die Signale KI willkommen heißen, die Robots-Regeln KI-Crawler aber blockieren. Verändert den Score nie. Erfasst werden auch das seit Juli 2026 getestete vierte Felduseund pfad-spezifische Direktiven (Content-Signal: /blog/ …) — Pfad-Regeln werden getrennt vom seitenweiten Signal ausgewiesen, weil eine Regel für/blog/nichts über die ganze Site aussagt. - Markdown Alternate Link (1) —
<link rel="alternate" type="text/markdown">. - Markdown via Content Negotiation (0 Punkte, nur
info, Expert-Mode-only) — nur vorhanden, wenn die Markdown-Negotiation-Probe gelaufen ist. - Open Graph Tags (≥ 4) (2) — ≥ 4 → 2, ≥ 2 → 1, sonst 0.
Content Structure
- Content Depth (≥ 500 words) (3) — ≥ 500 → 3, ≥ 300 → 2, ≥ 100 → 1, sonst 0.
- Clean Heading Hierarchy (3) — genau 1 H1 + ≥ 1 H2 → 3, einzelne H1 → 2, irgendeine H1 → 1, sonst 0.
- Consecutive Heading Levels (1) — keine übersprungenen Ebenen.
- Short Paragraphs (avg < 150 words) (2) — < 150 → 2, < 250 → 1, sonst 0.
- Lists & Tables Present (2) — Listen +1, Tabellen +1.
Machine Readability
- HTML Language Attribute (1).
- Semantic HTML Elements (2) — ≥ 5 → 2, ≥ 2 → 1, sonst 0.
- Images Have Alt Text (2) — alle → 2; fehlt es bei höchstens 20 % der Bilder (aufgerundet, also mindestens einem Bild) → 1, sonst 0.
Die Analyse-Bereiche im Detail
Der Bericht besteht aus 20 Tabs, die die Seitenleiste in acht Gruppen ordnet: Overview (Overview, SEO Score, GEO Score), Technical, On-Page SEO, Social, Accessibility, Crawling, Other (Source Code und die beiden Guides) und Export. Jeder Tab ist unten ein eigener Abschnitt — mit seinem englischen Original-Label.
Overview
Das Übersichts-Dashboard:
- Badges für HTTP-Status samt Protokoll, SEO-Score und GEO-Score (jeweils
x/100mit Buchstabennote), darunter die angefragte URL und — nach Weiterleitungen — die finale URL. - Kacheln für HTTP Version (im Expert Mode ggf. mit „+ HTTP/3“), Page Size (bei Kompression mit Transfergröße und Verfahren, etwa
→ 18.0 KB (BR)), TTFB und Redirects. - On-Page-Ampeln für Page Title, Meta Description, H1 Heading und Structured Data.
- Die Karten SSL Certificate (gültig/ungültig, Resttage, Aussteller) und Robots Status (indexierbar oder nicht, mit Grund:
robots.txt, Meta-Robotsnoindex). - Page Info mit IP-Adresse, Content-Type und den Verbindungszeiten DNS Lookup, TCP Connect, SSL Handshake, TTFB und Total Time.
- Issues & Warnings: alle
fail- undpartial-Prüfungen des SEO-Scores mit Notiz und Kategorie. Ein Klick auf einen Eintrag springt in den Tab, in dem du das Problem nachprüfst. GEO-Befunde stehen im GEO Score-Tab.
Wurde die Seite wegen der 5-MB-Grenze gekürzt, steht ganz oben ein gelber Hinweis.
SEO Score
Die vollständige Aufschlüsselung des SEO-Scores: Gauge mit Buchstabennote und Rohpunkten, je Kategorie ein Fortschrittsbalken mit erreichten und möglichen Punkten und die Tabelle Detailed Checks mit Status-Symbol, Check, Category, Points (erreicht / möglich) und Note. Die Tabelle folgt der festen Reihenfolge der Prüfungen, sie lässt sich nicht umsortieren — die Spalte Points zeigt dir, wo die meisten Punkte liegen. Copy Report kopiert den Score samt aller Prüfungen als Klartext in die Zwischenablage.
GEO Score
Die Aufschlüsselung des GEO-Scores (AI citation readiness) mit Gauge, Kategorie-Balken, Detailed Checks und Copy Report wie beim SEO-Score. Die zwei info-Prüfungen erscheinen in der Tabelle als Hinweise ohne Punktwirkung. Dazu kommen zwei eigene Karten:
- llms.txt — ob
/llms.txtgefunden wurde (mit Größe in Bytes und Link zur Datei), das Prüfergebnis („Valid“, „Found with n warning(s)“ oder „n issue(s) found“), Badges für Titel, Anzahl der Sections und Links sowie die Fehler, Warnungen und Hinweise des Validators; gleichartige Meldungen werden mit ihren Zeilennummern zusammengefasst. - Content Signals — woher die Signale stammen (
robots.txt, HTTP-Header oder beides), eine Tabelle der Signale mit Klartext (search= Suchindex,ai-input= KI-Antworten in Echtzeit/RAG,ai-train= Training,use= was ein Bot behalten und weitergeben darf), pfadbezogene Regeln als eigener Block und ein Warnhinweis, wenn die Signale KI-Nutzung erlauben, dierobots.txtaber KI-Crawler sperrt.
HTTP Headers
Die Response-Header der finalen Seite, gruppiert nach General, Security, Cache und Other, jeder Wert mit Kopier-Button. Darunter lassen sich die Raw Response Headers ausklappen. Hier prüfst du Caching, Content-Type und Encoding; die Bewertung der Security-Header steht im Tab SSL / Security.
SSL / Security
Drei Karten:
- SSL Certificate — bei einem gültigen Zertifikat Status, Common Name, Issuer, Organization, Valid From, Valid Until, Days Remaining (rot unter 14, gelb unter 30 Tagen), Signatur-Algorithmus, TLS-Version mit Cipher, Public Key, die Subject Alternative Names und die Certificate Chain. Die Kette zeigt jedes Zertifikat so, wie der Server es schickt, mit Rolle (Server certificate, Intermediate CA, Root CA (self-signed) oder Cross-signed root (acts as intermediate)) und dem Ergebnis der Signaturprüfung je Glied („signature ok“ bzw. „signature does not match“). Bei einem ungültigen Zertifikat zeigt die Karte nur „Certificate invalid“ mit dem Fehlergrund; Detailfelder, SANs und Kette entfallen dann.
- Security Headers — neun Header mit Kurzbeschreibung: die acht, die in den SEO-Score einfließen (HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, Cross-Origin-Opener-Policy, Cross-Origin-Resource-Policy), plus das veraltete X-XSS-Protection. Gesetzte Header werden inhaltlich geprüft, etwa HSTS ohne
max-age, ohneincludeSubDomainsoderpreload, eine CSP ohnedefault-src/script-src, ein X-Frame-Options-Wert außerDENY/SAMEORIGIN, ein X-Content-Type-Options-Wert ungleichnosniff,unsafe-urlals Referrer-Policy oder ein Wildcard in der Permissions-Policy. - Mixed Content — alle Bilder, Skripte, Stylesheets, iframes, Medien und Objekte, die eine HTTPS-Seite über
http:lädt.
Der Proxy ermittelt TLS-Version, Cipher und Kette mit einer eigenen TLS-Prüfung und legt sie auch bei einem ungültigen Zertifikat in den Analysedaten ab. Im Tab erscheinen sie dann nicht, im JSON-Export (data.page.ssl) stehen sie aber drin.
Redirects
Die Weiterleitungskette Hop für Hop als Zeitleiste: pro Hop Statuscode, HTTPS- oder HTTP-Badge, Antwortzeit, Server-Header („via …“), URL und IP-Adresse. Fehler stehen direkt am Hop — etwa eine erkannte Schleife, ein gesperrtes Ziel oder ein aufgebrauchtes Zeitbudget. Die Raw Headers jedes Hops lassen sich ausklappen. Lies hier ab, ob die finale URL über unnötige oder gemischte (http/https) Zwischenstationen erreicht wird — jeder zusätzliche Hop kostet im SEO-Score.
Performance
- Page Size und Connection Timing (DNS Lookup, TCP Connect, SSL Handshake, TTFB, Download).
- Render-Blocking Resources — externe Skripte im
<head>ohneasync/deferund Stylesheets, die nicht aufmedia="print"beschränkt sind. Das ist der wichtigste Hebel des Tabs, er fließt direkt in den SEO-Score ein. - Resource Hints —
preload,prefetch,preconnectunddns-prefetchmitasundcrossorigin. - Scripts & Stylesheets — Zähler für Skripte (gesamt, extern, inline, async, defer) sowie externe Stylesheets und Inline-Styles.
- All Resources — alle Ressourcen der Seite als Tabelle (Type, URL, Attributes, Blocking, Position), sortier- und filterbar.
In den Ressourcen-Tabellen prüfst du einzelne URLs per URL Status Check.
Meta Tags
Der zentrale On-Page-Tab, aus dem sich viele SEO-Prüfungen speisen:
- Page Title und Meta Description mit Längen-Badge (z. B. „48 chars — could be longer“).
- Page Basics — Canonical URL, Meta Robots, Viewport, HTML Language, Charset.
- Heading Structure — alle Überschriften eingerückt nach Ebene, übersprungene Ebenen markiert.
- Open Graph und Twitter / X Card — alle gefundenen Tags.
- hreflang / Internationalization — alle Einträge mit Status. Fehler sind ein fehlendes
hrefoderhreflang, ungültige BCP-47-Codes und doppelte Sprachcodes; Warnungen sind relativehref-Werte und eine fehlende Selbstreferenz der Seite. Ein fehlendesx-default(bei mehreren Sprachvarianten) ist nur ein Hinweis und kostet keine Punkte. - Pagination —
rel="prev"/rel="next", falls vorhanden. - Other Head Tags — alle übrigen
<meta>- und<link>-Tags im Kopf. - Entity Encoding Check — findet doppelt kodierte HTML-Entities wie
&amp;im Quelltext.
Links
Kacheln für Total Links, Internal, External und Nofollow, darunter je eine Tabelle External Links und Internal Links mit URL, Anchor Text und Rel — sortierbar per Klick auf den Spaltenkopf und mit Filterfeld. Intern und extern unterscheidet das Tool am Hostnamen; www.example.com und example.com gelten deshalb als verschiedene Hosts. Leere Links, reine Sprungmarken (#…) und Schemata wie javascript:, mailto: oder tel: werden nicht gezählt, rel erkennt nofollow, ugc und sponsored. Jede Zeile hat einen URL Status Check.
Images
Kacheln für Total Images, Missing Alt, No Dimensions, Lazy Loaded, Has srcset, WebP, AVIF und SVG, darunter die Tabelle Image Details (Source, Alt Text, Dimensions, Attrs), sortier- und filterbar. Ein fehlendes alt gilt als Fehler, ein leeres alt="" als dekoratives Bild. Ein Klick auf eine Zeile öffnet die Bildvorschau mit vollständiger URL, Alt-Text, Abmessungen, srcset, sizes und Attributen (lazy, srcset, webp, avif, svg, <picture>), den Buttons Open und Download sowie Previous/Next (auch per Pfeiltaste). Inline-Bilder als Data-URL zeigt die Vorschau mit MIME-Typ und Größe. Fehlende alt-Texte schlagen sowohl im SEO- als auch im GEO-Score zu Buche.
Structured Data
Jeder JSON-LD-Block erscheint als eigene Karte („JSON-LD #1“ …) mit seinen Typen. Über Explorer/Raw wechselst du zwischen einem aufklappbaren Baum und dem Rohtext; die Wahl gilt für alle Blöcke. Ungültiges JSON wird als „Invalid JSON“ mit Fehlermeldung angezeigt. JSON-LD wird auch dann vollständig erkannt, wenn ein Block ein Array oder einen @graph enthält oder @type als Liste angibt. Microdata wird nur zusammengefasst (Anzahl, Typen). Die Karte External Validation öffnet die analysierte URL per Button Schema.org Validator in validator.schema.org.
Im Expert Mode kommt die Karte Multi-Page Check dazu: Check Internal Pages lädt alle internen Links der Seite (plus die Seite selbst) über den lokalen Proxy und zieht aus jeder Seite JSON-LD und Microdata. Vor dem Start wählst du Parallel (1–3, Standard 2) und Delay (bis 5 s, Standard 0,5 s); während des Laufs gibt es Pause, Cancel und danach Restart. Am Ende fasst das Tool die gefundenen JSON-LD-Typen mit ihrer Häufigkeit zusammen, das Ergebnis exportierst du per Copy JSON oder Download JSON.
Hier prüfst du, welche Schema-Typen vorhanden sind — Vielfalt, FAQ- und Autor-/Organisations-Schema zahlen direkt in den GEO-Score ein.
Content Analysis
Wörter, Sätze und Zeichen zählt das Tool im Haupttext: Skripte, Styles, noscript, SVG sowie nav, header, footer, aside, figure und figcaption bleiben außen vor. Die Absätze (alle <p>) sowie Listen und Tabellen zählt es dagegen auf der ganzen Seite, Navigation und Footer eingeschlossen. Wörter erkennt das Tool in jeder Schrift, also auch Umlaute, Kyrillisch oder Griechisch.
- Kennzahlen — Sprache (aus
<html lang>), Wörter, Lesezeit, Absätze, Sätze, Zeichen und Text/HTML-Verhältnis (ohne SVG, Skripte und Styles). - Readability — die Formel richtet sich nach
<html lang>: Flesch-Amstad für Deutsch, Kandel-Moles für Französisch, Fernández Huerta für Spanisch, Franchina-Vacca für Italienisch, Douma für Niederländisch, sonst Flesch Reading Ease. Die Skala reicht von 0 bis 100. - Sentence Length (Verteilung auf ≤ 10, 11–20, 21–30 und mehr als 30 Wörter), Gunning Fog Index (benötigte Schuljahre) und Transition Words — Anteil der Sätze mit Übergangswörtern (Listen für Englisch und Deutsch, Empfehlung ≥ 30 %).
- Heading Distribution und Top Keywords — häufigste Wörter mit Anzahl und Dichte, sortierbar, mit Filterfeld und Mengenumschalter (15, 50, 100, 200 oder All, Standard 15). Wörter unter 3 Zeichen und gängige englische, deutsche und französische Stoppwörter zählen nicht mit.
- Keyword Consistency — ob die bis zu fünf signifikanten Titelwörter (ab 4 Zeichen) in H1, Description und URL vorkommen.
- Duplicate Content Signals — etwa identischer Titel und H1, eine Description, die wörtlich im Text steht, oder ein fehlendes Canonical.
- Extracted Text — eine aufklappbare Karte am Ende des Tabs mit dem ausgewerteten Haupttext und seiner Zeichenzahl. Hier siehst du, welchen Text die Kennzahlen tatsächlich zugrunde legen.
Aus diesen Werten speisen sich die Content-Prüfungen beider Scores (Wortanzahl, Lesbarkeit, Text/HTML-Verhältnis, Absatzlänge, Keyword-Konsistenz); Listen und Tabellen zählt der GEO-Score direkt im Quelltext.
Semantic HTML
Badges zeigen, welche Landmarks (header, main, nav, footer, aside) vorhanden sind, darunter steht die Document Structure als Baum der semantischen Elemente mit role-Angaben und Zeilennummer. Ein Klick auf ein Element springt im Source Code-Tab an die passende Zeile. Je mehr semantische Elemente, desto besser für Maschinenlesbarkeit (GEO-Prüfung „Semantic HTML Elements“).
Social Preview
- Google SERP Preview — eine Suchergebnis-Vorschau mit Favicon, Domain, Titel (gekürzt ab 60 Zeichen) und Description (gekürzt ab 160 Zeichen).
- Facebook / LinkedIn Preview und Twitter / X Preview — gerenderte Vorschaukarten aus den OG- und Twitter-Daten, jeweils mit Rückfall auf Titel, Description und
og:image, wenn spezifische Tags fehlen. - Open Graph Completeness — welche der Tags
og:title,og:description,og:image,og:url,og:type,og:site_nameundog:localegesetzt sind und welche fehlen.
Accessibility
Ein eigenständiger Audit-Bereich, der über die wenigen A11y-Prüfungen des SEO-Scores hinausgeht: Landmarks & Navigation (Landmarks, Skip-Links), Interactive Elements (leere Links, leere Buttons, Formularfelder ohne Label), ARIA Usage (aria-label/labelledby, aria-describedby, aria-hidden, role=, tabindex > 0, tabindex="-1"), Image Accessibility, Table Accessibility (Captions, <th>) und Page Semantics (Sprachattribut).
Robots Analysis
Ganz oben steht das Gesamturteil, ob die Seite nach allen Signalen indexierbar ist. Darunter:
- HTTP Header: X-Robots-Tag — Wert und Bedeutung (
noindex,nofollow,noarchive). - Meta Tag:
<meta name="robots">— Wert und Bedeutung. - robots.txt — Adresse und Status, ob diese URL erlaubt oder gesperrt ist (mit greifender Regel), die deklarierten Sitemaps und der Rohinhalt.
- Per-Bot Access — eine Tabelle für 40 bekannte Bots, gruppiert nach Typ (Search, Social, Archive, AI, SEO Tool), mit Betreiber, Access (Allowed/Blocked), Source (eigener Block,
*-Wildcard oder Default), Crawl-Delay und greifender Regel. - User-Agent Blocks — alle Gruppen der Datei mit ihren Allow-/Disallow-Regeln und Crawl-Delay.
Ausgewertet wird nach RFC 9309 mit demselben Parser wie im Tool robots.txt & Sitemap: Wildcards * und $ werden unterstützt, die längste passende Regel gewinnt, bei Gleichstand Allow, mehrere Gruppen für denselben Bot werden zusammengeführt und Leerzeilen beenden keine Gruppe. Googlebot-Image und Googlebot-News fallen auf die Googlebot-Regeln zurück.
Die Karte Sitemap listet die Sitemap:-Einträge der robots.txt. Im Expert Mode kommen zwei Buttons dazu: Crawl Sitemaps lädt alle deklarierten Sitemaps, folgt Sitemap-Indizes und übergibt die gesammelten Seiten-URLs an die Sammel-Statusprüfung. Fehlt eine Sitemap:-Zeile, sucht Discover Sitemap an elf üblichen Pfaden (etwa /sitemap.xml, /sitemap_index.xml, /wp-sitemap.xml oder /sitemap.xml.gz); Funde crawlst du anschließend mit Crawl Discovered Sitemaps.
Source Code
Der HTML-Quelltext, für die Anzeige mit js-beautify formatiert, in einem schreibgeschützten Editor (ACE). Im Kopf stehen die empfangene Größe („formatted for display“, wenn formatiert wurde), der Button Nu Html Checker (öffnet die URL im W3C-Validator) und Copy. Den unveränderten Originalquelltext klappst du darunter aus. Praktisch, um eine vom Analyzer gemeldete Stelle direkt im Markup nachzuschlagen — der Semantic HTML-Tab springt per Klick hierher.
SEO Guide
Statischer Nachschlage-Inhalt zu klassischem SEO in fünf Abschnitten: Technical SEO, Content, Links, AI & LLMs und Core Web Vitals. Funktioniert auch ohne vorherige Analyse (immer verfügbar).
GEO Guide
Umfangreicher, didaktischer GEO-Nachschlage-Inhalt (Akkordeon), ebenfalls ohne Analyse nutzbar. Er ordnet die KI-Optimierung ein — inklusive Notizen zu Googles AI-Optimization-Guide (Mai 2026: „SEO und GEO sind für Googles KI dieselbe Disziplin“, RAG-basiert), einer Mythbusting-Tabelle (Google sagt, llms.txt/Schema/Chunking seien für die Google-AI-Suche nicht erforderlich), Hinweisen zur Multi-Turn-/Follow-up-Optimierung und einem GEO-Schreib-Playbook. Der Guide begründet ausdrücklich, warum llms.txt und Schema für andere Engines (Perplexity, ChatGPT, Claude, Bing Copilot) weiterhin zählen — und warum der GEO-Score sie deshalb belohnt. Der Abschnitt zu Content Signals erklärt auch das vierte Feld use und die Syntax pfadbezogener Regeln.
Export / Import
Nach einer Analyse zeigt der Tab die Karte Download Analysis mit der analysierten URL, der geschätzten JSON-Größe und drei Buttons:
- Download JSON — die komplette Analyse als
seo-analysis-<host>-<datum>.json. - HTML Summary — ein eigenständiger HTML-Bericht (
seo-report-<host>-<datum>.html) mit Score, Quick Facts, On-Page-SEO, Content, Social Preview, strukturierten Daten und GEO-Auswertung. - HTML Full Report — der ausführliche Bericht (
seo-full-report-<host>-<datum>.html) mit allen Analysedaten, zusätzlich Header, SSL, Redirects, Performance, Links, Bilder, Meta-Tags, Barrierefreiheit und Robots. Beide Berichte bringen eigene Druck-Styles mit.
Die Karte Import JSON ist immer sichtbar: Lade eine exportierte Datei hoch oder füge das JSON ein und klicke Import & Render — alle Tabs entstehen neu, ohne neuen Netzwerkabruf. Daneben liegen die drei Demo-Buttons (siehe unten).
Das Format ist JSON mit version, Exportzeitpunkt, URL, tool: "jpkcom-seo-analyzer" und einem data-Objekt; der Import akzeptiert nur Dateien mit dieser tool-Kennung. data enthält die Rohdaten der Analyse inklusive HTML-Quelltext, Headern, Redirect-Kette, SSL-Daten sowie robots.txt- und llms.txt-Inhalt, dazu die daraus extrahierten Werte (Meta-Daten, Links, Bilder, strukturierte Daten, Performance-, A11y-, Content- und Semantik-Werte, im Expert Mode auch das Ergebnis der Markdown-Negotiation-Probe), aber keinen Score. Beim Import zieht das Tool diese Extrakte mit der aktuellen Logik neu aus dem gespeicherten HTML und berechnet beide Scores neu. Eine ältere Datei wird also nach den heutigen Regeln bewertet, sofern sie HTML enthält; ohne HTML übernimmt das Tool die gespeicherten Werte. Die Demo-Dateien nutzen dasselbe Schema mit demo: true.
{
"version": "1.0",
"exportDate": "2026-10-16T09:30:00.000Z",
"url": "https://example.com/page",
"tool": "jpkcom-seo-analyzer",
"data": { "page": { }, "robots": { }, "llms": { }, "meta": { }, "links": { }, "…": { } }
}Prüfwerkzeuge in den Tabellen
URL Status Check
In den Tabellen von Links, Images und Performance (Render-Blocking Resources, Resource Hints, All Resources) hat jede Zeile einen gelben Prüf-Button. Er fragt den HTTP-Status dieser einen URL ab und zeigt das Ergebnis im Fenster URL Status Check: Status-Badge (OK, Redirect, Client Error, Server Error oder Connection Failed), Antwortzeit, angefragte und finale URL (je mit Kopieren und Öffnen) sowie die Redirect-Kette. Neben dem Button bleibt danach ein kleiner Status-Badge stehen.
Der Proxy fragt per HEAD, bei 405 oder 501 per GET nach und wertet höchstens 5 Antworten (Hops) aus, folgt also bis zu 4 Weiterleitungen bis zum Ziel; ist die fünfte Antwort noch eine Weiterleitung, endet die Prüfung dort. Im Standard-Modus gilt eine Pause von rund 2,5 Sekunden zwischen zwei Checks im Browser und serverseitig höchstens 1 Check pro 2 Sekunden pro IP (sonst HTTP 429). Im Expert Mode entfällt beides.
Check all: Sammel-Statusprüfung (Expert Mode)
Im Expert Mode trägt jede dieser Tabellenkarten — External Links, Internal Links, Image Details, Render-Blocking Resources, Resource Hints, All Resources — zusätzlich den Button Check all. Er sammelt alle eindeutigen http(s)-URLs der Karte, zeigt sie in einem Bestätigungsfenster und prüft sie nach Continue über den lokalen Proxy (höchstens fünf Abrufe je URL, also bis zu vier Weiterleitungen). Einstellbar sind Parallel (1–3 gleichzeitige Anfragen, Standard 3) und Delay (keine Pause bis 60 s zwischen den Runden). Während des Laufs zählt die Kopfzeile Erfolge (2xx), Weiterleitungen (3xx) und Fehler, Pause und Cancel halten den Lauf an, Restart startet ihn neu. Das Ergebnis exportierst du per Copy CSV, Copy JSON, Download CSV oder Download JSON; die CSV enthält die Spalten URL, Final URL, Status, Content-Type, Redirects, Redirect Chain und Response Time (ms).
Dieselbe Sammelprüfung nutzt Crawl Sitemaps im Robots Analysis-Tab für alle URLs aus den Sitemaps.
Demo-Modi
Im Export / Import-Tab liegen drei Demo-Buttons, die fertige Beispiel-Analysen laden:
- Perfect (grün) — eine Seite, bei der alle Prüfungen bestehen: HTTPS, sechs der acht bewerteten Security-Header (ohne Cross-Origin-Opener-Policy und Cross-Origin-Resource-Policy, die Prüfung besteht trotzdem) plus
Content-Signal, gültiges SSL, reichhaltige Meta-/OG-/Twitter-/hreflang-Daten, JSON-LD (WebPage, Organization, FAQPage), Markdown-Alternate, wohlgeformtellms.txt, sauberer Überschriften-Baum, vollständige Landmarks, gut lesbarer Text. - Broken (rot) — alles, was schiefgehen kann: nur HTTP, Redirect-Kette mit zwei Weiterleitungen (301 → 302 → 200), Titel „Untitled“, keine Description, doppelte H1 plus übersprungene Ebenen, fehlende
alt-Texte, leere/Spam-Links,robots.txtmitDisallow: /, fehlerhaftellms.txt, eine rund 280 KB große Seite (im Tool:278.3 KB), render-blockierende Ressourcen. - Empty (grau) — eine leere Seite (
<html><head></head><body></body></html>),robots.txtundllms.txtbeide 404, alle extrahierten Felder null/0.
Wichtig: Die Demo-Dateien enthalten Rohdaten und Extrakte, aber keine vorberechneten Scores. Die Extrakte zieht das Tool beim Laden neu aus dem mitgelieferten HTML, SEO- und GEO-Score berechnet es client-seitig — genau wie bei einem Live-Lauf. Die Demos zeigen dadurch sauber, wie jede einzelne Prüfung auf gute, schlechte und fehlende Daten reagiert.
Betriebsgrenzen und Datenschutz — kompakt
- Privatsphäre: Die Zielseite wird vom JPKCom-Server abgerufen, nicht von deinem Browser; sie sieht nicht deine IP. Die Auswertung läuft lokal im Browser.
- Im Browser gespeichert: der URL-Verlauf (10 Einträge) und für 10 Minuten die abgerufenen
robots.txt- undllms.txt-Inhalte, beides imlocalStorage. - SSRF-/Private-IP-Schutz: interne, lokale und private Adressen werden blockiert — im Standard-Modus wie im Expert Mode; nur HTTP/HTTPS.
- Limits: max. 10 Redirect-Hops, 26 s Zeitbudget für Kette und Seite, 5 MB Body-Cap (darüber wird gekürzt und ein Hinweis angezeigt).
- Rate-Limits: 120 Proxy-Anfragen pro Minute und IP, URL Status Check 1 Anfrage pro 2 Sekunden pro IP (sonst HTTP 429), 3 Sekunden zwischen zwei Analysen; im Expert Mode entfallen die Sperren.
- Eingabe: genau eine http(s)-URL pro Analyse; Sammelprüfungen über viele URLs nur im Expert Mode.
- Ohne Analyse nutzbar: SEO Guide, GEO Guide und Export / Import.
Für den Einstieg, die Zielgruppen und das große Bild siehe die Übersichtsseite. Ausprobieren kannst du alles direkt im Tool.