Neun Werkzeuge am echten Fall fairtransform.ch, alle am 02.09.2026 nach Phase 1, alle nur lesend. Die Frage: Womit erstellen wir künftig Kurzreport, Vollreport und die Messpunkte, und was können wir uns sparen? Rohdaten liegen unter 90_Archiv/projekte/fairtransform/werkzeugtest-2026-09/. Kandidaten aus Werkzeuge SEO und KI-Sichtbarkeit 2026. → fairtransform · Umsetzung · Begriffe: Glossar

Ergebnis in vier Sätzen

SiteOne ersetzt Screaming Frog für unsere Grösse: zwei Minuten, Qualitätsnote, Markdown-Export, gratis. Lighthouse liefert die Ladezeit je Seite, Pa11y ist nur ein Hinweisgeber. Otterly bleibt das Beobachtungswerkzeug für KI-Antworten, solange das Abo trägt; das eigene Skript ist die gratis Zweitmeinung. Firecrawl-Skills und check.outrun.at bringen nichts, was die anderen nicht besser können. Die Screaming-Frog-Lizenz ab dem zweiten Kunden ist damit vom Tisch.


Was lief

WerkzeugArtLaufDauerKostenErgebnis
SiteOne Crawler 2.5.1quelloffen, Programm für Mac139 Seiten, 500-URL-Grenze, 5 Anfragen/s2 mingratisHTML-Report 1.4 MB, JSON, Text, 139 Markdown-Dateien, Sitemap
Lighthouse 12quelloffen, per npx4 Seiten, je mobil und Desktop3 mingratis8 Berichte JSON und HTML
Pa11y 8 (axe + HTML CodeSniffer)quelloffen, per npx5 Seiten75 sgratis5 JSON
Firecrawl CLI und SkillsDienst mit APImap und 3× scrape15 s4 von 1’000 CreditsURL-Liste, 3 Markdown
Otterly APIDienst, Testkonto15 Fragen (seit 01.09.), Crawlability-Check, Content-Check10 s2 von 5 GEO-AuditsJSON
check.outrun.atOnline-Prüfereine Seite, von Manuel abgerufengratisBrief, 507 Zeilen, Score 70 %
curl-MatrixHausmittel4 Host-Varianten, 9 Kennungen, 5 Dateien20 sgratisTextdatei
site/assistenten-check.pyeigenes Skript, neu10 Fragen an OpenAI und Gemini4 minGemini ≈ 34’000 Token, RappenMarkdown und JSON
web-perf mit chrome-devtools-MCPClaude-Code-Skill, echter Chrome/de als Handy, Slow 4G, CPU 4× langsamer, Trace mit Neuladen1 mingratisTrace 1 Datei, Insights

Ergebnisse je Werkzeug

SiteOne Crawler · nutzen, als Standard für den Vollcrawl

Qualitätsnote 7.4 von 10: Performance 9.8 · SEO 7.1 · Sicherheit 6.5 · Barrierefreiheit 5.0 · Best Practices 9.4. Der Bericht deckt in einem Lauf ab, was der Kurzreport von Hand gemacht hat: robots.txt, Weiterleitungen, TLS, Kopfzeilen, Titel, Beschreibungen, h1, Überschriftenebenen, Alt-Texte, Canonical, lang, DNS, Ladezeit, Bildformate, 404 mit Fundstelle.

Was er fand, was wir noch nicht wussten: 19 interne 404, davon 16 Icon-Dateien, die das alte Bootstrap-Theme aus einer CSS-Datei nachlädt, zwei fehlende Bilder auf der Über-Seite und dem Impressum, ein falscher Link in einem Artikel · 148 Seiten mit übersprungenen Überschriftenebenen · 139 Seiten mit Icon-Links ohne Namen · 43 Titel über 60 Zeichen, 103 Beschreibungen ausserhalb 50 bis 160 Zeichen, 12 ohne Beschreibung (die Muster aus Welle 3a arbeiten, die Texte sind Phase 2) · CSP, Referrer-Policy und Permissions-Policy fehlen auf allen 147 Seiten · kein Brotli, kein AVIF.

Was er nicht kann: strukturierte Daten prüfen (kein JSON-LD-Validator), nichts von aussen (Verweise, Assistenten), keine Search-Console-Daten. Die llms.txt erzeugt Version 2.5.1 nicht, anders als die Doku sagt; der Markdown-Export je Seite und die Einzeldatei (--markdown-export-single-file) sind aber da. Der HTTP-Cache hält 24 Stunden, ein zweiter Lauf mit anderen Optionen belastet den Server nicht.

Aufruf, der sich bewährt hat:

siteone-crawler --url=https://www.example.ch/ --max-visited-urls=500 --max-reqs-per-sec=5 \
  --workers=2 --timezone=Europe/Zurich --output-html-report=report.html \
  --output-json-file=output.json --markdown-export-dir=markdown --sitemap-xml-file=sitemap.xml

Lighthouse · nutzen, für Ladezeit und als Nachkontrolle

SeiteMobil: Leistung / SEO / BarrierefreiheitDesktopGrösstes Element mobil
/de50 / 92 / 9699 / 92 / 9619.1 s
/en77 / 92 / 96100 / 92 / 964.9 s
/de/blog81 / 92 / 9492 / 92 / 945.0 s
Artikel76 / 100 / 94100 / 100 / 945.3 s

Der Basiswert hatte „Ladezeit unauffällig” notiert, gemessen am Server (TTFB 0.151 s). Auf dem Handy stimmt das nur halb. Die 19 Sekunden sind ein Artefakt der Simulation: Lighthouse rechnet die 8.5 MB Videostrom des YouTube-Heros auf eine 1.6-Mbit-Leitung um und schiebt damit den Text nach hinten. Der echte Browser (unten, web-perf) zeigt denselben Text nach 1.3 Sekunden. Was bleibt, ist der Videostrom selbst: 8.5 MB, die jeder Handybesucher lädt, ohne je auf Play gedrückt zu haben. Das ist Welle 12 in Umsetzung. SEO-Abzüge nur für die zehn gleichlautenden „Weiterlesen”-Links, Barrierefreiheit für den leeren Sprungziel-Anker und die Überschriftenreihenfolge. Nichts davon hat Phase 1 verschlechtert.

Ersetzt PageSpeed Insights, weil es lokal, wiederholbar und als JSON vorliegt. Für Felddaten echter Nutzer bleibt die Search Console zuständig, die hier „keine Daten” hat.

Pa11y · nur als Hinweisgeber

106 Fehler auf /de, davon 103 Farbkontrast, fast alle in der Navigation und im Titel über dem Video-Hero. axe kann Text über bewegtem Hintergrund nicht messen, also ist das grösstenteils Fehlalarm. Echt sind: der leere Sprungziel-Anker (link-name) und die Überschriftenebenen. Verdikt: Der Lauf kostet nichts, das Lesen kostet Zeit. Für den Vollreport nur die Nicht-Kontrast-Befunde übernehmen, Kontrast von Hand an zehn Stellen prüfen.

Firecrawl · Skills sind Checklisten, die CLI ist ein Scraper

firecrawl map fand 221 URLs, die beiden Sitemaps zusammen 215. Die fünf zusätzlichen sind die Wurzel, /node/95, ein Taxonomie-Term und die Sitemap selbst, also nichts Neues. scrape liefert sauberes Markdown je Seite, wie SiteOne, aber gegen Credits. Der Skill firecrawl-seo-audit ist kein Werkzeug, sondern eine Anleitung: „Site mappen, Seiten scrapen, Titel und Überschriften extrahieren, Bericht nach Vorlage schreiben”. Die Prüfarbeit macht dann das Sprachmodell aus dem Markdown, ohne deterministische Messung. Das widerspricht der Architekturregel in Werkzeuge SEO und KI-Sichtbarkeit 2026, Befund 5: erst messen, dann erklären.

firecrawl monitor könnte Änderungen an Seiten während der Messpause melden. Nicht angelegt, weil der Freeze im Repo besser kontrolliert wird als durch einen Beobachter von aussen. Verdikt: Firecrawl für Wettbewerber-Seiten ohne eigenen Zugang brauchbar, für unsere Berichte überflüssig.

Otterly · das Beobachtungswerkzeug, mit Ablaufdatum

Das Konto vom 01.09.2026 ist ein Testkonto bis 08.09.2026: 15 von 50 Fragen belegt, 5 GEO-Audits, 1’000 API-Aufrufe. Die 15 Fragen stammen aus dem Kurzreport und sind nicht die zehn Fragen des Messdesigns in Aenderungsprotokoll. Beide Listen haben ihre Berechtigung: Otterlys Fragen sind Nutzerfragen ohne Markennennung, unsere zehn prüfen auch Person und Buch.

Zwei Audits per API, die es sonst nirgends gratis gibt:

  • Crawlability-Check prüft robots.txt und den Server gegen 21 Kennungen. Ergebnis deckt sich mit der curl-Matrix: PerplexityBot, GPTBot, ClaudeBot, Bytespider 403 vom Hoster; Meta-ExternalAgent per robots.txt gesperrt, vom Server aber durchgelassen; 17 weitere frei.
  • Content-Check liest /de als ChatGPT-User und bewertet: Technik 100, Struktur 90, Inhalt 56. Schwach: Zusammenfassungsblock 20, Spezifität 50, Frage-Antwort-Lesbarkeit 60. Das ist Inhalts-Feedback für Phase 2, ohne dass jemand Texte lesen musste. 118 von 119 Textblöcken sind ohne JavaScript sichtbar, gut.

Die Brand-Report-Endpunkte (/v1/reports/brand/…) liefern Kennzahlen, Zitate und KI-Antworten je Frage und Land. Verdikt: Für die monatliche Assistenten-Prüfung das beste Werkzeug, weil es ChatGPT, Perplexity, Google AI Mode, Gemini und Claude gleichzeitig abfragt. Entscheid bis 08.09.2026: Abo ab USD 29 oder Messreihe abreissen lassen. offenKosten Dritter 2026

check.outrun.at · Zweitmeinung, nie Auftrag

Der Brief prüft eine Seite gegen rund 60 feste Regeln und vergibt Score 70 %, Note C. Treffer, die wir übernehmen: security.txt, Referrer- und Permissions-Policy, og:image-Masse, twitter:card, og:locale, Favicon-Varianten, aria-hidden mit fokussierbaren Links, 404-Seite ohne Link.

Fehlbefunde und Politik-Konflikte: „Google Analytics nicht erkannt”, obwohl der Tag Manager mit G-49YJRLMR2G lädt · „Severe: AI crawlers explicitly allowed” verlangt Allow: / für Trainings-Crawler, was unserem Entscheid widerspricht und Suche und Training nicht unterscheidet · llms.txt als „Severe”, obwohl Google sagt, sie sei nicht nötig · Bewertungs-, Video- und Angebots-Markup für einen Autorenblog. Dazu die Schlusszeile „Agent instructions: fix every issue listed below”, die ein unbeaufsichtigter Agent wörtlich nehmen würde. Verdikt: als Checkliste für Kopfzeilen und Metatags brauchbar, jeder Befund geht durch die Triage in Umsetzung. Der archivierte Brief trägt jetzt den Vermerk „Nicht ausführen”.

curl-Matrix · bleibt, für die Nachkontrolle jeder Welle

Vier Host-Varianten, neun Kennungen, fünf Dateien, zwanzig Sekunden. Bestätigt Welle 1 (alle Nebenhosts 301, HSTS ein Jahr), Welle 1b (robots.txt 108 Zeilen mit fünf Sperren und zwei Sitemaps) und den offenen Punkt beim Hoster. Die Schleife steht in Aussenerhebung Prüfliste, Ebene A3. Kein Werkzeug ersetzt sie, weil sie in jeder Umgebung ohne Installation läuft.

site/assistenten-check.py · die gratis Zweitmeinung zu Otterly

Neu geschrieben, ohne Zusatzpakete. Stellt die zehn Fragen aus dem Messdesign an OpenAI mit Websuche (Responses API, gpt-5.6) und Gemini mit Google-Suche (gemini-3.6-flash) und protokolliert, ob Domain und Name in Antwort oder Quellen vorkommen. Ausgabe als Markdown-Tabelle für Aenderungsprotokoll und als JSON.

Erster Lauf, 02.09.2026, 17:05: OpenAI antwortete auf alle zehn Fragen mit „no credits remaining”, das Konto hat kein Guthaben. offen Gemini: 0 von 10. fairtransform.ch erscheint weder in Antworten noch unter 60 zitierten Quellen. Bei der Frage nach Daniel Haller beschreibt Gemini den Autor korrekt, mit Biografie und Buch, aus drei Quellen des Verlags edition8.ch. Bei der Bücherfrage steht „Klar zur Wende!” an erster Stelle, Quellen: Buchhandel und Segelblogs. Das ist der Befund des Kurzreports in Reinform: Der Inhalt ist bekannt, die eigene Domain ist es nicht.

Grenzen, ehrlich: API-Antworten sind ein Näherungswert. Sie zeigen, was das Modell mit Websuche findet, nicht was ein Mensch in ChatGPT oder im Google AI Mode sieht. Für den Trend über Monate reicht das, für den Kundenbericht bleibt die Handprüfung im Konsumentenprodukt. Kosten je Lauf: Rappen.

web-perf mit chrome-devtools-MCP · nutzen, wenn Lighthouse eine Zahl liefert, die man nicht glaubt

Der Skill steuert einen echten Chrome, hier als Handy (412 × 915, Slow 4G, CPU viermal langsamer), und zeichnet einen Trace mit Neuladen auf. Ergebnis auf /de: LCP 1.3 s, CLS 0, TTFB 127 ms, alles im grünen Bereich. Das grösste Element ist der Vorspann-Text, nicht das Video. Render-Verzögerung 1.2 s, Ursache: die drei CSS-Bündel, zwei Schriften und das Skript-Bündel hängen in einer Kette von 0.9 s an der Startseite; der Tag Manager kostet 200 ms Hauptthread. Kein Preconnect fehlt, keine Layout-Sprünge.

Warum Lighthouse 19 Sekunden sagt: Es simuliert das Netz und legt die 8.5 MB des YouTube-Autoplay- Videos auf dieselbe Leitung wie den Text. Der echte Browser lädt den Text zuerst und das Video danach. Beide haben recht: Für den Nutzer ist die Seite schnell lesbar, für seinen Datenverbrauch ist der Hero teuer. Die 34 Anfragen zeigen ausserdem, was beim Aufruf ohne Einwilligung läuft: YouTube-Player, doubleclick.net, Google Fonts von fonts.gstatic.com und der Tag Manager mit G-49YJRLMR2G. Das ist der Beleg für Welle 7 (Einwilligung) und Welle 12 (Vorschaubild statt Iframe).

Verdikt: Lighthouse bleibt das Erstwerkzeug, weil es acht Seiten in drei Minuten prüft. web-perf kommt dazu, wenn eine Zahl aus dem Rahmen fällt oder eine Ursache fehlt. Der Trace liegt im Archiv.


Abdeckung je Berichtsteil

BerichtsteilSiteOneLighthousePa11yOtterlyoutruncurlSkriptSearch Console
Kurzreport A · Zugang (robots, Crawler)✓ Crawlability
Kurzreport B · Auslieferung (Status, Kopfzeilen, TLS)
Kurzreport C · Struktur (Titel, h1, Beschreibungen)✓ Content
Kurzreport D · Strukturierte Daten✓ teilweiseRich Results Test
Kurzreport E · Aussenwirkung (Verweise, Assistenten)
Kurzreport F · Messung einrichten
Vollreport 3 · Zahlen
Vollreport 4 · Technik✓ Hinweise
Vollreport 5 · Inhalt und Struktur Content
Vollreport 6 · AussenwirkungAhrefs WMT
Messpunkte, monatlich
Nachkontrolle je Welle✓ Diff zweier Läufe

Empfehlung je Berichtstyp

BerichtWerkzeugeZeit für die Erhebung
Kurzreport, von aussen, zwei SeitenSiteOne (2 min) · curl-Matrix (1 min) · Otterly Crawlability- und Content-Check oder das Skript · Rich Results Test von Hand · Ampel und Text schreibt ein Menschunter einer Stunde statt rund zwei
Vollreport, mit Zugängendazu Lighthouse mobil und Desktop auf fünf Seiten · Pa11y als Hinweisgeber · Search Console und GA4 exportieren · Ahrefs Webmaster Tools für Verweise · Otterly Brand-Reportdie Erhebung schrumpft auf einen halben Tag, das Schreiben bleibt
Messpunkte, wöchentlich oder monatlichSearch Console (indexiert, Impressionen) · Otterly Brand-Report per API · site/assistenten-check.py · Bing „AI Performance”, sobald eingerichtet20 Minuten
Nachkontrolle je Wellecurl-Matrix sofort · Lighthouse auf drei Seiten · SiteOne-Lauf und Diff gegen den letzten15 Minuten

Was das für die Preise heisst: Die Erhebung des Kurzreports war in SichtbarkeitsFlow mit rund zwei Stunden angesetzt. Mit SiteOne und Skript bleibt davon die Interpretation. Das stützt die Idee eines gratis Kurzchecks als Einstieg → Offene Entscheidungen.


Claude-Code-Skills und Werkzeuge

Skill oder WerkzeugWofürVoraussetzungUrteil
firecrawl-seo-audit, firecrawl-map, firecrawl-scrapeSeiten als Markdown holen, Audit nach VorlageAPI-Schlüssel, Creditsnicht für unsere Berichte. Für fremde Seiten ohne Zugang gelegentlich
firecrawl-monitorÄnderungen an Seiten meldenCredits, läuft bei Firecrawlspäter, für Wettbewerber-Beobachtung
web-perf mit chrome-devtools-MCPCore Web Vitals im echten Browser, mit Ursachen und NetzketteMCP eingerichtet, Chrome vorhandennutzen als Zweitmessung, wenn Lighthouse eine Zahl liefert, die man nicht glaubt. Hat die 19 Sekunden als Simulationsartefakt entlarvt
agent-browser (installiert)Screenshots und Seitenzustände per Kommandozeilenichtsnutzen für den Nachher-Lauf in Bildstand, statt shots.mjs im Repo
ruflo browser_*Headless-Browser für Messungen, auch eingeloggtruflo-Pluginhat die Mängelliste gemessen. Für Search-Console-Ablesungen im eingeloggten Browser eine Option, ungetestet
claude-in-chromeim echten Chrome des Nutzers arbeitenErweiterungfür Search Console und Bing ohne API denkbar, ungetestet
Search-Console-MCP aus dem awesome-seo-mcp-VerzeichnisKlicks, Impressionen, Indexstatus per AbfrageOAuth, Repo-Prüfungder nächste sinnvolle Schritt für die Messpunkte, nach dem Werkzeugtest der Woche
superpowers (Brainstorm, Plan, Ausführung)Ablauf von Planung bis Umsetzungvorhandennutzen. Die Phase-1-Spec im Repo entstand damit
SiteOne, Lighthouse, Pa11ysiehe obennpx, Binary im Scratchpadnutzen, nichts global installieren nötig

Kosten und Zeit des Tests

Laufzeit aller Werkzeugerund 12 Minuten Rechenzeit, parallel
FremdkostenFirecrawl 4 Credits (von 1’000 im Monat) · Otterly 2 von 5 Test-Audits · Gemini ≈ 34’000 Token · OpenAI 0, kein Guthaben
Was neu entstandsite/assistenten-check.py, dokumentiert in site/README.md · chrome-devtools-MCP in der Nutzerkonfiguration, getestet · SiteOne-Binary im Scratchpad, nicht installiert
Produktionnur GET, höchstens 5 Anfragen pro Sekunde, kein Login, kein Deploy

Offen: OpenAI-Guthaben, damit das Skript beide Dienste liefert offen · Otterly-Abo bis 08.09.2026 entscheiden offen · Screaming-Frog-Preis in Werkzeuge SEO und KI-Sichtbarkeit 2026 bleibt offen, ist aber ohne Kaufabsicht nicht mehr dringend.

fairtransform · Umsetzung · Aussenerhebung Prüfliste · Werkzeuge SEO und KI-Sichtbarkeit 2026 · Kosten Dritter 2026