Skip to content

Benchmarks

Measured, not claimed.

Every claim on this site maps to a metric, and every metric has a launch gate. The same harness runs on every change to the scraping code and publishes a nightly scorecard, generated straight from the results. Anyone can say they're the best. We'd rather be caught in the act.

Scorecard coming soon. The rats are still running the maze.

The baseline run is in progress. We'll publish the full scorecard, raw results and the public part of the corpus together, including the strata where we don't win yet.

Tell me when it's out
01

Labelled corpus

1,000+ URLs, each with gold labels: main-content text, title, key links, tables and code blocks, plus logo, colour and name for brand URLs. Versioned, with a hidden holdout set so we can't overfit.

02

Stratified

Scored per stratum, not just overall, so a win on easy marketing pages can't hide a loss on bot-protected or JS-heavy ones.

03

Gated

Nothing ships unless every gate passes. In CI, regressions against the baseline block merges.

Strata

Contenders

Same corpus, same scoring, same machine budget.

Metrics and launch gates

Metrics and the launch gate each must pass
AreaMetricGateResult
ReliabilitySuccess rate per stratum≥ best competitor; no stratum > 3 pts worsepending
Content fidelityToken-level F1 vs gold main text≥ best competitor + 2 ptspending
BoilerplateNav/footer/cookie removal precisionPrecision ≥ 0.95pending
Markdown structurePer-element F1 (headings, lists, tables, code, links)≥ best competitorpending
MetadataTitle/description/lang/canonical accuracy≥ 98%pending
MapURL recall vs sitemap ∪ link graphRecall ≥ best competitorpending
CrawlCoverage, duplicate rate, pages/minDupes < 2%pending
SearchnDCG@10 / answer-hit rate≥ Firecrawl searchpending
ExtractField accuracy; schema-valid rateSchema-valid 100%pending
BrandLogo, colour ΔE, name, fontsLogo ≥ 97%, colour ≥ 95%pending
Latencyp50/p95 per endpoint and tierp50 ≤ best competitorpending
Price$ per 1K successful pagesLower than both competitors at every tierpending