Features
Every check, streamed to disk as it runs.
RacingRoach runs a full technical-SEO audit — 118 checks across crawlability, on-page, structure, rendering, and content. Because results commit to disk as they complete, you read findings while the crawl is still going, on sites of any size.
Find what's broken
4xx and 5xx errors surfaced with the internal pages that link to them. Redirect chains and loops resolved hop by hop. Blocked and non-indexable URLs, canonical mismatches, and response-time bands across the whole site. Group the Issues screen by severity or by twelve themes (Crawlability, Indexability, Content, Internal Linking, Performance, Markup, Security, International, Mobile & Accessibility, URL Quality, AI Search, Outbound Links), each with its own 0–100 score. Free.
Titles, meta & headings
Missing, duplicate, over-length and under-length page titles and meta descriptions. Heading structure and multiple-H1 detection. Canonical, meta-robots, and directive conflicts — cross-checked across every record.
Internal link graph
Crawl depth by directory, orphan-page detection, internal link scores, inlink and outlink counts, and site-architecture views — all computed by streaming across the full crawl, never by loading it into RAM.
Bulk link reports
A filterable All Links / Inlinks / Outlinks / External report with anchor text and follow status on every link, plus a streaming bulk CSV export — Screaming-Frog-style "Bulk Export → Links" parity. Free.
Site structure report
A sortable per-folder table, one directory level at a time, with breadcrumb drill-down: pages, indexable share, mean link score, status-code mix, HTML vs non-HTML, and issue counts by severity — each folder's numbers recursive over everything beneath it, so "which section of the site is worst" is one glance and one click. Computed on the fly from the crawl you already have, with a CSV export of the level on screen. Free.
Documents (PDF & office files)
Every crawled PDF, Word, Excel, PowerPoint, OpenDocument, CSV, plain-text and RTF file listed with its size, HTTP status, title, PDF author/subject/keywords, and how many pages link to it. Filter by kind, status or URL, sort any column, export to CSV/Excel, and drill into the same page-detail view used everywhere else. Works on a crawl you already have — no re-crawl, no schema change. Free.
Link opportunities
Suggests internal links you should add — for every page as both source and target, it ranks topically-close pages that don't already link there, each with a suggested anchor phrase and the supporting passage. Bring your own embedding model: any OpenAI-compatible provider, or a local Ollama server if you want the whole analysis to stay on your machine.
JavaScript & SPAs
Render JavaScript-heavy pages and single-page apps to audit the DOM your users actually see. Compare rendered vs raw HTML to catch content that depends on client-side execution. Free — no license required.
Structured data, robots & sitemaps
Extract and validate JSON-LD and microdata Premium (structured-data validation requires a license). Test robots.txt rules per URL and user-agent with the exact matching directive — free. Audit XML sitemaps and hreflang return-tag clusters for consistency — free.
Content quality
Duplicate and near-duplicate detection, thin-content flags, missing image alt text, oversized assets, mixed content, charset/encoding issues — including correct handling of internationalized URLs — and Flesch readability scoring that flags hard-to-read pages.
Keyword analysis
What does this site actually talk about, and which of your own pages compete for the same phrase? A sortable table of the words and two- and three-word phrases across the whole crawl, each with the pages it appears on and how often — click one to see the competing pages and their counts. The stop-word list is yours to edit, and an edit re-tallies the crawl you already have instead of re-crawling it. CSV export included. Free.
AI search readiness
Audit how ready a site is for AI crawlers and answer engines: whether llms.txt/llms-full.txt exist, a per-crawler robots verdict for GPTBot, PerplexityBot, ClaudeBot and nine other named AI crawlers with the exact matching robots.txt line, and a per-page AI-citability score with its six-part breakdown — an openly-invented heuristic for on-page readiness, not a measurement of what ChatGPT or Perplexity actually cite.
Accessibility audit
Automated accessibility checks run alongside the SEO audit, surfaced in the same Issues screen, so you don't run a second tool over the same crawl.
Third-party & cross-origin inventory
One row per other domain your site loads scripts, styles, media or frames from — with resource counts, referencing pages, which set a cookie, and which scripts ship with no Subresource Integrity attribute. Drill into a domain's individual references, or browse the full cookie inventory the crawl already observed: name, domain, third-party status, Secure/HttpOnly/SameSite, and expiry. Your own CDN subdomain is never counted as third-party. No score, no tracker labels — just what's actually there. CSV export on every tab. Free.
Safe by default
A closed-by-default SSRF guard blocks private ranges and cloud-metadata endpoints, re-checked on every redirect hop, with bounded response bodies. Free, always on.
PDF report you can hand to a client
One button on the Overview screen turns the crawl into a formatted, shareable document: a cover with the site, the crawl date and the page count, the health score and its twelve theme scores, severity totals, status-code and content-type breakdowns, the crawl-distribution charts, an issue table ordered by severity, and an appendix of the offending URLs behind every issue that fired — the first 10 per issue, with each section stating the real total, so a sample never reads as the whole. It's printed to PDF by the browser RacingRoach already bundles — or, if that one isn't available, by a Chrome/Chromium/Edge already installed on your machine — and it's completely self-contained — no fonts, images, scripts or network calls, so it looks the same wherever it's opened. If no browser can be found at all, the same report is saved as a self-contained HTML file instead and you're told which format you got. Free.
Streaming export, reopenable crawls
Export any view — or the entire crawl — to CSV or Excel (.xlsx) without holding it in memory; the same save dialog picks the format from the file type you choose. A one-click, free "Export all issues (CSV bundle)" writes a dated folder with a _summary.csv (kind, severity, theme, affected-URL count, and the same "why it matters" / "how to fix" guidance the Issues screen shows) plus one findings CSV per issue kind — the whole crawl's findings, handed off in one action. Premium adds a one-click, all-in-one .xlsx workbook — Overview, Pages, External Links, a tab per issue found, Structured Data, Spelling, Elements, Link Opportunities, Site Structure, Keywords, AI Search, Resources, Outbound Risk, Documents, and Third Party, empty sections skipped — plus a Looker Studio crawl report: a folder of dashboard-ready CSVs and a README that walks you through connecting them, so a crawl becomes a live report instead of a spreadsheet. Every crawl is a single reopenable file written in crash-safe transactions, so you can pause, close, and resume exactly where you left off.
Adaptive rate control
Per-host pacing that honors Retry-After, backs off on 429/503 rather than hammering, and adaptively widens delays. Respect robots.txt and crawl-delay when you want to — off by default, like the tools you know.
Fine-grained crawl control
Cap URLs per depth, folder depth, query-parameter count, URL length, and links per page. Honor canonical, next/prev, HSTS, and meta-refresh directives. Rewrite URLs (strip tracking params, lowercase) before dedup, treat CDN hostnames as internal, and optionally crawl images, stylesheets, scripts, and media as ordinary pages. Free, all off by default.
Crawl-overview dashboard
A live summary of the crawl in progress — a 0–100 health score front and center, pages by status, top issue kinds, and progress at a glance — so you don't have to dig through a table to know how a big audit is going.
Crawl visualisations
See your site's shape at a glance — pages-per-depth, response-time, and readability-band charts, and an interactive, pannable, zoomable crawl tree and directory tree. Color by depth, status, or content type with a click-to-filter legend; click a node to open its page detail. Export any view as SVG or PNG. Node-capped and bounded-memory like everything else. Free.
Custom segments
Define your own URL segments with filters, then get a per-segment breakdown of page counts, status codes, and issue kinds — useful for auditing one section of a large site at a time.
Custom JS snippets
Run your own JavaScript against every crawled page to extract custom data — your own fields, computed your way, alongside every other check.
Custom extraction
Pull any value off every page into its own column — a price, a SKU, any attribute or element — with a CSS selector and an optional regex, no JavaScript required.
Custom source-code search
Define your own search patterns — a GA4 tag, a specific string, a regex — and see per page whether each one was found in the raw HTML or rendered text, across the whole crawl. Free.
SERP snippet preview
See each page as a Google-style search snippet, with pixel-width truncation warnings for desktop and mobile. Rewrite titles and descriptions inline with live feedback and export the revised metadata to CSV. Free.
AI-assisted metadata rewrites
Bring your own OpenAI-, Gemini-, Ollama-, or Anthropic-compatible API key and get a suggested title and meta description for a page, grounded in that page's own crawled content, right from the SERP snippet preview. Suggest one page at a time or run a capped, cancellable batch across everything currently loaded. Your key lives in your OS keychain, never in a settings file, and never comes back over the wire once saved.
XML sitemap generation
Generate a valid, size-split XML sitemap straight from a crawl. Or skip discovery entirely and crawl a fixed list of URLs you supply — list mode for audits scoped to exactly the pages you name.
Spelling & grammar
Real spelling and grammar detection in page content during the crawl — not just a dictionary lookup — surfaced alongside the rest of the audit, with a custom ignore list for your own terms.
Forms-based authentication
Record a login once in the built-in browser and RacingRoach replays your session cookies for the whole crawl — audit gated staging sites and logged-in areas, with mid-crawl expiry detection.
Site history & trends
Every crawl you run files itself under its site, so the Dashboard shows each site's past runs with one-click reopen — no hunting through folders for a file. A trend line tracks pages and health across the series, failed runs included, and one click compares the open crawl against the run before it. Set a keep-newest-N or keep-N-days retention policy and clean up old runs per site with a mandatory preview before anything is deleted — no automatic pruning, ever.
Post-crawl insights digest
One ranked, plain-language summary of what changed since the site's previous run — what broke, what got fixed, what to look at first — instead of three screens to piece together by hand. Both crawls are re-scored under your current thresholds and license state, so a settings change can never masquerade as a regression, and there's no invented overall score, just the ranked list and the health delta. A first crawl or a missing predecessor file gets an honest, distinct notice instead of a misleading result. One click opens the full Compare screen pre-loaded with the same pair.
IndexNow submission
Notify Bing, Yandex, and IndexNow-consuming AI answer engines of new or changed pages in a single action, instead of waiting for their next visit. Pick a source — sitemap-eligible URLs, everything changed since the site's previous recorded run, or a filtered set from the Pages screen — review the exact list, and submit. Verify a hosted key first; a still-validating 202 response is shown as its own distinct state, never confused with a completed submission.
Scheduled crawls
Save a crawl as a reusable profile and attach a recurrence — hourly, daily, weekly, or monthly — so it runs unattended while RacingRoach is open. Each run lands in its own timestamped file, so you keep a history, not just the latest pass.
Screenshots, JS errors & page archive
When JS rendering is on, RacingRoach automatically catches JavaScript errors thrown while each page renders — no setup required. Turn on two more toggles to capture a full-page screenshot and archive the rendered HTML of every page, viewable per page and exportable as a single offline bundle.
MCP server for AI agents
Expose your crawl to AI agents over the Model Context Protocol — read-only, nine tools (crawl info, issue summary, page detail, links, keywords, site structure and more) for orienting, drilling into an issue, and following a page's links. Run it as a stdio process against a saved .redb file, or turn on the loopback HTTP server in Settings to let an agent read whichever crawl the desktop app currently has open. No tool starts a crawl, writes a file, or changes what's on screen.
Headless CLI
Run a crawl from the command line with no window open, for scheduled audits, CI pipelines, and scripted work. Same engine as the desktop app, same output files. Free.
Nine interface languages
Switch RacingRoach's own interface language — separate from the site language you're crawling — and it applies live, no restart. Free, nine languages: English, German, Spanish, French, Brazilian Portuguese, Italian, Dutch, Polish, and Japanese.
Bounded by design
The engine that makes it all possible.
Every data path — frontier, fetch, parse, store — is bounded, streaming, and backpressured. The full crawl never lives in RAM. That single rule is why RacingRoach keeps its speed on the sites that stall other desktop crawlers.