Skip to main content

Changelog · September 16, 2026

/markdown converts without a language model

Same input, same output, every time — and nothing invented.

By · Last updated: September 2026

TL;DR

/markdown is now a deterministic walk of the rendered DOM instead of a language model. Measured on 33 real pages, it keeps 87.2% of the page's visible text with 11.0% of its output being text the visitor never saw, in about 20 ms; the model it replaced managed 79.0% and 22.0%, at 39 seconds a page.

Free plan, no credit card. 1,000 credits a month.

The same page now converts to the same Markdown every time. Headings, lists, links, fenced code with its language, GFM tables and label/value tables are written down from the page's own structure; the chrome around the content — navigation, the site header and footer, forms — is left out.

In the benchmark a blind judge preferred the DOM walk on 24 of 33 pages, against 3. On one long technical article the model had spent 143 seconds returning its input HTML unchanged — no headings, no code fences — and the request was recorded as a success. A conversion that reads the structure can't do that.

What it does not do: it reads no CSS, so text a stylesheet hides can reach the output and counts toward that 11.0%.

Request

Example

Convert a page
curl -X POST https://urlpipe.dev/markdown \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "sync": true}'

FAQ

Frequently asked questions

No. It is a deterministic conversion of the rendered DOM. Only /summarize, /keywords, and /extract call a model.

Try it on the free plan.

Free plan, no card. Confirm your email and your API key is live — you'll be making real requests in minutes.