Web extraction / Benchmark 001

A page fetched.
But did you get the facts?

Compare Jina Reader, markdown.new and Defuddle on a shared set of public pages. Inspect the checks behind each result before choosing a reader for your pipeline.

01 / Measured comparison

Which readers keep the facts?

Three public web-to-Markdown services. The same five demo pages, read three times each. See which responses kept every required fact.

UTC · 45 recorded reads

Jina Reader

12/15reads kept required text
Median · shared pages
0.36s
Missing content
0
Unavailable / blocked
3

Anonymous public access · no API key

Try Jina Reader

markdown.new

12/15reads kept required text
Median · shared pages
0.73s
Missing content
3
Unavailable / blocked
0

Anonymous public access · no API key

Try markdown.new

Defuddle

12/15reads kept required text
Median · shared pages
0.09s
Missing content
3
Unavailable / blocked
0

Anonymous public access · no API key

Try Defuddle

A small content-retention test on scraping demo pages, not an overall quality ranking. Timings use 9 reads per service on the same 3 pages that every provider passed, and include network and provider caching from an operator workstation (network location unverified). Missing, blocked and unrun requests stay separate. Paid tiers, scale and AI task completion are untested.

Where the responses differ · reads with all required facts
Page typeJina Readermarkdown.newDefuddle
Product details3/33/33/3
Product listing3/33/33/3
Quotes and authors3/33/33/3
JavaScript-rendered quotes3/30/30/3
Long-form HTML0/33 unavailable3/33/3
Product detailsThree required facts · three rounds per serviceView source page

Required text: “A Light in the Attic” · “51.77” · “a897fe39b1053632”

Source fixture: verified

Jina Reader

  • Round 1: All facts found0.31s
  • Round 2: All facts found0.31s
  • Round 3: All facts found0.30s

markdown.new

  • Round 1: All facts found0.73s
  • Round 2: All facts found0.68s
  • Round 3: All facts found1.21s

Defuddle

  • Round 1: All facts found0.30s
  • Round 2: All facts found0.09s
  • Round 3: All facts found0.47s
Product listingThree required facts · three rounds per serviceView source page

Required text: “A Light in the Attic” · “51.77” · “Tipping the Velvet”

Source fixture: verified

Jina Reader

  • Round 1: All facts found0.36s
  • Round 2: All facts found0.58s
  • Round 3: All facts found0.54s

markdown.new

  • Round 1: All facts found0.73s
  • Round 2: All facts found0.67s
  • Round 3: All facts found0.67s

Defuddle

  • Round 1: All facts found0.06s
  • Round 2: All facts found0.12s
  • Round 3: All facts found0.05s
Quotes and authorsThree required facts · three rounds per serviceView source page

Required text: “Albert Einstein” · “Jane Austen” · “J.K. Rowling”

Source fixture: verified

Jina Reader

  • Round 1: All facts found0.33s
  • Round 2: All facts found0.51s
  • Round 3: All facts found0.47s

markdown.new

  • Round 1: All facts found0.87s
  • Round 2: All facts found0.67s
  • Round 3: All facts found0.76s

Defuddle

  • Round 1: All facts found0.36s
  • Round 2: All facts found0.06s
  • Round 3: All facts found0.06s
JavaScript-rendered quotesThree required facts · three rounds per serviceView source page

Required text: “Albert Einstein” · “Jane Austen” · “J.K. Rowling”

Source fixture: verified

Jina Reader

  • Round 1: All facts found0.32s
  • Round 2: All facts found0.34s
  • Round 3: All facts found0.32s

markdown.new

  • Round 1: Content missing0.82s

    Missing: Albert Einstein, Jane Austen, J.K. Rowling

  • Round 2: Content missing0.77s

    Missing: Albert Einstein, Jane Austen, J.K. Rowling

  • Round 3: Content missing0.66s

    Missing: Albert Einstein, Jane Austen, J.K. Rowling

Defuddle

  • Round 1: Content missing0.07s

    Missing: Albert Einstein, Jane Austen, J.K. Rowling

  • Round 2: Content missing0.05s

    Missing: Albert Einstein, Jane Austen, J.K. Rowling

  • Round 3: Content missing0.10s

    Missing: Albert Einstein, Jane Austen, J.K. Rowling

Long-form HTMLThree required facts · three rounds per serviceView source page

Required text: “Herman Melville” · “Moby-Dick” · “portable forge”

Source fixture: verified

Jina Reader

  • Round 1: Unavailable0.22s

    http-403

  • Round 2: Unavailable0.23s

    http-403

  • Round 3: Unavailable0.33s

    http-403

markdown.new

  • Round 1: All facts found1.33s
  • Round 2: All facts found0.74s
  • Round 3: All facts found0.69s

Defuddle

  • Round 1: All facts found0.80s
  • Round 2: All facts found0.12s
  • Round 3: All facts found0.06s

02 / Method & limits

Small, inspectable, repeatable.

What counts as a pass?

HTTP 200 and all three declared text fragments present in the response. Unicode, whitespace and Markdown escapes are normalized. A pass measures literal retention, not factual reasoning, content precision or the quality of the whole document. The source HTML is checked first; changed or unavailable fixtures are left unrun.

What does the timing mean?

Wall-clock time through the complete response body, measured from an operator workstation (network location unverified). The median uses successful reads only and shows their sample size above. Providers run serially in rotating order. Provider defaults; cache warmth is uncontrolled. Three repeated reads can include cached responses. These observations are not a production latency guarantee.

Which access profiles?

No API keys, subscriptions or metered paid APIs were used. This does not establish production pricing, free-tier capacity or cost per task at scale.

What is outside this test?

Five intentionally public demo pages across three domains: product details, a listing, quotes, JavaScript-rendered quotes and HTML prose. No private pages, PDFs, paywalls, large crawls, model-driven extraction, MCP host compatibility or paid service tiers. No universal winner is inferred.

Reproduce this run
npm run benchmark:web --prefix apps/graphcanon

Suite 2026-10-26.2 · runner 1.0.0. Hard limits: 50 outbound requests, 20s per request, 2 MB per response, 8 minutes per run. Evidence retains statuses, checks, durations and response hashes; full third-party page bodies are not republished. A later rerun may differ as pages, services and caches change.

Results stay independent.

Sponsorship buys a separately labelled placement. It cannot change fixtures, findings or the order of results. No provider sponsored this run.

Ask about a future sponsor placement →

Was this helpful?

Anonymous feedback helps us improve pages and translations.