# Best web scraping API: ranked by live price

The best web scraping API for an agent returns the page as markdown, because a model reads text, not HTML. For plain pages the cheapest call per page wins, and this page ranks the looot catalog providers by that live price. For crawls, batches or browser features, pick the provider that has those endpoints.

## Live prices

Prices read on 2026-10-16 from the live looot catalog. They change when a provider changes its price.

Cheapest today for a web page as markdown from a url: Jina AI at $0.0002 per page.

| Rank | Provider | Price per page | Per 1,000 pages |
|---|---|---|---|
| 1 | Jina AI (jina) | $0.0002 per page | $0.20 |
| 2 | Olostep (olostep) | $0.0018 per page | $1.80 |
| 3 | ScrapeGraphAI (scrapegraphai) | $0.0020 per page | $2.00 |
| 4 | Serper (serper) | $0.0020 per page | $2.00 |
| 5 | Context.dev (context-dev) | $0.0025 per page | $2.50 |
| 6 | Keenable (keenable) | $0.0040 per page | $4.00 |
| 7 | Steel API (steel) | $0.0050 per page | $5.00 |

## Providers

- jina: Returns the main content as markdown with the title, metadata and links. It is one reader endpoint, with no crawl or batch endpoint in the catalog. Also: Web search.
- olostep: Scrapes one page to markdown and also runs batches, crawls and sitemap reads. Batches and crawls are separate jobs you poll for results. Also: Crawl, Batch, Structured, Sitemap.
- scrapegraphai: Scrapes a page to markdown and has a stealth variant for pages that block plain requests. The stealth variant is its own endpoint with its own price, so check it before you switch. Also: Crawl, Structured, Screenshot.
- serper: A Google search API with one page scrape endpoint on the side. It has no crawl or batch endpoint, so it suits reading the pages a search returned. Also: Google results.
- context-dev: Can keep only the main content, keep or drop links and images, wait for the page and fetch it from a chosen country. It also has an HTML scrape and a crawl. Also: Raw HTML, Crawl, Screenshot.
- keenable: Fetches a page as markdown, next to a web search endpoint. Those two endpoints are all it has in the catalog. Also: Web search.
- steel: Loads the page in a hosted browser and returns markdown or HTML, and can add a screenshot or a PDF. The catalog lists no crawl endpoint for it. Also: Screenshot, PDF.

## How we rank

Every provider here has an endpoint in the looot catalog that takes a URL and returns the page as markdown.

We rank by the price per page of that endpoint, read live from the catalog. A cheaper page ranks higher.

Endpoints billed per result instead of per page are left out, because the two units do not compare.

The catalog does not publish a measured success rate for these endpoints, so this page does not rank by one and quotes none.

Extras are other web endpoints the provider has, such as crawl or batch. More extras does not mean better pages.

Providers outside the looot catalog are not ranked.

## Web scraper API cost per 1,000 pages

Each row in the ranking shows the live price per page and the price per 1,000 pages next to it. Both come from the same catalog read, so they never disagree.

A page that comes back empty still costs a call on most providers. If a site blocks plain requests, the cheapest row can cost more per good page than a pricier one, so run ten of your own URLs before a big job.

URL to markdown API, with each endpoint's options: /use-cases/url-to-markdown-api

## Scraping one page or crawling a site

A scrape reads one URL. A crawl starts at one URL and follows links, so it returns many pages and runs as a job you poll. The ranking prices the single page scrape.

For a whole docs site or a blog archive, pick a provider with a crawl tag in the ranking. For a list of URLs you already have, a batch endpoint or one scrape per URL both work.

## Choosing one

- Batches, crawls and sitemaps from one provider: olostep
- Pages that block plain requests: scrapegraphai
- Main content only, or a page fetched from one country: context-dev
- Read the pages a Google search returned: serper
- A browser render with a screenshot or a PDF: steel

## Prompt

Use looot to read these 10 URLs as markdown: call the cheapest page to markdown endpoint for each, save each page as a markdown file named after its domain, and tell me the total cost. 1. Set up https://looot.ai/skill.md. 2. Search the catalog for each step and check its price before you call. 3. Run the cheapest endpoint that fits. 4. Show the results as a table and the total cost.

## What is the best web scraping API?

It depends on the pages. This page ranks the looot catalog providers by live price per page for turning a URL into markdown. Pick the cheapest for plain pages, or the provider with crawl, batch or browser endpoints when you need them.

## What is the cheapest web scraping API?

The first row of the ranking above, read live from the catalog. Prices can change, so the page reads them on each refresh and shows no number when the catalog is unreachable.

## Is there a free web scraping API?

This page ranks priced endpoints. Free tiers, where a vendor has one, sit on the vendor's own plan page and are outside looot.

## What are the best Firecrawl alternatives?

Firecrawl is in the looot catalog, with scrape, crawl and structured extraction endpoints. The catalog files its scrape under structured extraction, so this list, which prices one capability, does not rank it. Every provider above returns a page as markdown, and your agent calls any of them with one key.

## What is a web scraper API?

A service that takes a URL, loads the page and returns its content as data. For an agent the useful form is markdown, the text of the page without the HTML around it.

## Why markdown and not HTML?

A model reads text. HTML carries scripts, styles and navigation that cost tokens and say nothing. Markdown keeps the headings, lists, links and tables and drops the rest.

## Can it scrape pages that need JavaScript?

Some providers load the page in a browser first. Steel does, and the URL to markdown use case lists the options of each endpoint. Run one of your own pages before you commit to a provider.

## How do I scrape a whole website?

Use a crawl endpoint. Olostep, ScrapeGraphAI and Context.dev have one, shown as a crawl tag in the ranking. Crawling on a timer needs scheduled runs, not available yet, so run it by hand when you want a fresh copy.

## Is web scraping legal?

It depends on the site, the data and where you are. Read the site's terms and robots rules, and do not collect personal data you have no basis to hold. This page is not legal advice.

## How does an agent call a web scraping API?

Paste the prompt on this page into your agent. It sets up looot, finds the page to markdown endpoints, checks the price and runs the cheapest one that fits.

## Why does this page not show success rates?

The catalog does not publish a measured success rate for these endpoints. We would rather rank by a number we can read than quote one we cannot.

## Do I pay while my agent is idle?

No. looot bills per call, and nothing runs while your agent is idle.

## Related pages

- /best/serp-api
- /best/news-api
- /best/linkedin-api
- /best/tiktok-api
- /best/reddit-api
- /best/b2b-data-api
- /best/lead-finder
- /use-cases/url-to-markdown-api
- /use-cases/web-search-api
- /recipes/docs-scraped-to-markdown
- /recipes/pricing-page-monitor
- /recipes/landing-page-teardown

## Last reviewed

2026-10-16. The ranking by price per page is read live from the catalog on the web page.

## Agent skill for this page

https://looot.ai/best/web-scraping-api/skill.md sets an agent up for exactly the jobs on this page, with the live price of each, and offers the page's starter task once the user has picked a job and seen the price. The line to give an agent is under "Give this to your agent" below.

## For agents

### Give this to your agent

```text
set up looot for Best web scraping API - https://looot.ai/best/web-scraping-api/skill.md
```
