Trusted by developers worldwide

Turn any website into clean data.One platform for developers and their agents.

The web scraping platform to scrape, search, map and crawl through one API. Pages are rendered, sessions and retries handled automatically, and every request routes to the lightest method that works.

  • Up to 5,000 free requests
  • No credit card
  • From $0.0002 per request

New accounts: double your first deposit within 48h of signing up.

Used by the best teams at

  • Walmart
  • Microsoft
  • Groupon
  • Alpiq
  • AgentMail
  • AgainstData
  • Revel Street
alterlab.io/playgroundNo signup needed
Any page to markdown or JSON
Try
LightStandardProtectedDynamicFortresseach request routes to the lightest tier that works
Example output2003.34s788.1 KB
# Men's Tree Runner

Also available in: [ Women's Sizes ](</products/womens-tree-runners>)

$100

\+ Free shipping

Final Few

![Men's Tree Runner - Jet Black \(White Sole\)](//www.allbirds.com/cdn/shop/files/TR3MJBW080_SHOE_LEFT_GLOBAL_MENS_TREE_RUNNER_JET_BLACK_WHITE.png?width=1280)

How the web scraping API routes a request

Every page is different. One API request isn’t.

A URL goes in. The AlterLab web scraping API tries the lightest way to read the page first and only steps down when a page needs more. You are billed for the tier that returned the data, and only when it did.

Static and modern pages stop at the first two tiers, for a fraction of a cent. No credits and no multipliers: one dollar balance, five prices.

Direct answer

What is a web scraping API?

A web scraping API is a hosted service that takes a URL and returns the page's content as markdown, JSON, HTML or text. It runs the browsers, proxies and retries for you. AlterLab is one: a single POST request, five pricing tiers, billed only when the page comes back.

api.alterlab.io/v1/scrapeone request, five tiers
AlterLab routes every request through five tiers, Light, Standard, Protected, Dynamic and Fortress, and bills only the tier that returned the page.
  1. LightA direct HTTP fetch. Static pages, blogs, docs, news.The fastest and cheapest way to read a page.
    $0.00025,000 per $1
  2. StandardA full-featured HTTP client with modern protocol support. Modern sites, JSON endpoints.For pages that need more than a basic fetch.
    $0.00033,333 per $1
  3. ProtectedManaged sessions with cookies, redirects and retries handled for you.Keeps a consistent session so multi-step pages load reliably.
    $0.002500 per $1
  4. DynamicFull browser rendering. React, Vue, Angular, Next.js, infinite scroll, wait_for.The page is opened in a real browser and read after it finishes loading.
    $0.004250 per $1
  5. FortressOur most thorough tier: extended browser sessions for the most demanding pages.Used only when no lighter tier could return the page.
    $0.0250 per $1

Failed requests are not billed · Cache hits bill at half the producing tier · Bring your own proxy for 20% off every tier

The web data API

Nine endpoints. Every way to ask the web for data.

One API key and one balance across scrape, search, SERP, map, crawl, extract, monitors, sessions and jobs. The request body is the whole integration; the response is the same shape every time.

api.alterlab.io200 · 3.34 s · 788.1 KB · recorded 2026-10-30
Request
{
  "url": "https://www.allbirds.com/products/mens-tree-runners",
  "formats": ["markdown", "json"]
}
Response
{
  "url": "https://www.allbirds.com/products/mens-tree-runners",
  "status_code": 200,
  "content": {
    "markdown": "# Men's Tree Runner\n\nAlso available in: [ Women's Sizes ](</products/womens-tree-runners>)\n\n$100\n\n\\+ Free shipping\n\nFinal Few\n\n![Men's Tree Runner - Jet Black (White Sole)](//www.allbirds.com/cdn/shop/files/TR3MJBW080_SHOE_LEFT_GLOBAL_MENS_TREE_RUNNER_JET_BLACK_WHITE.png?width=1280)"
  },
  "response_time_ms": 3340,
  "size_bytes": 807014
}

Direct answer

What is the difference between scrape, crawl, map and extract?

Scrape returns one page. Map lists every URL on a site in one call. Crawl fetches a whole site page by page. Extract fills your JSON schema from any page. Search returns web results with the pages already fetched. In AlterLab all five share one key, one balance and one response shape.

Use cases

Web data for every market, in the shape you need.

The same web scraping API request, different parameters. Each row is a market, what it asks for, and the fields that come back.

Markets AlterLab serves, what each asks for, the request parameters and the fields that come back, with example values.
MarketThe askParametersComes back
E-commerce and price intelligenceE-commerce industry guidePrices, stock and reviews from every retailer you compete with, hourly.
extraction_schemacountrycheck_interval: "0 * * * *"example values
  • price98.00
  • availability"in_stock"
  • rating4.7
  • sku"TR-1042"
AI, LLM data and RAGAI training dataClean markdown for your index, in batch, without the navigation and boilerplate.
formats: ["markdown"]batchcrawlexample values
  • markdown"# Getting started…"
  • rag{ chunks: […] }
  • title"Getting started"
  • links["/docs/quickstart", …]
Lead generationLead generation guideCompany and contact data from directories and public business sites, deduplicated for your CRM.
extraction_schemasearchexample values
  • company"Example Co"
  • website"example.com"
  • email"hello@example.com"
  • role"Head of Data"
Real estateReal estate industry guideListings, prices and availability across portals, by region.
crawlcountryextraction_schemaexample values
  • address"12 Example Street"
  • price450000
  • beds3
  • listed_at"2026-10-30"
TravelFares, rates and availability for routes and dates, rendered from booking flows.
render_js: "auto"wait_forcountryexample values
  • fare189.00
  • dates["2026-11-02", "2026-11-09"]
  • provider"example-air"
  • currency"EUR"
ResearchResearch guidePublic web collections for academic and market research, reproducible and cited.
mapcrawlformats: ["text"]example values
  • text"Abstract…"
  • url"https://example.org/paper"
  • fetched_at"2026-10-30T09:14Z"
  • tier"light"
SEO and SERPSERP API referenceRankings, features and ads for your keywords, by country and language.
serpcountrylanguageexample values
  • position3
  • url"https://example.com/"
  • features["sitelinks", "faq"]
  • ads[…]
MonitoringMonitors guideKnow when a page changes, with a diff and a webhook.
monitordiff_modewebhook_urlexample values
  • changedtrue
  • changes[{ … }]
  • snapshot_id"snap_…"
FinanceFinance industry guideFilings, prices and market data pages read on a schedule.
scheduleextraction_schemaexample values
  • ticker"EXMP"
  • value128.40
  • as_of"2026-10-30T16:00Z"
News and mediaNews industry guideArticles as clean text with metadata, across many sources.
crawlformats: ["markdown"]example values
  • title"Example headline"
  • author"A. Example"
  • published_at"2026-10-30"
  • body"…"

Direct answer

Can a web scraping API return markdown for RAG?

Yes. AlterLab returns clean markdown with navigation and boilerplate removed, or a rag format that is chunked with token counts for vector databases. Batch up to 100 URLs per call or crawl a whole site. Markdown pages are billed at the tier that fetched them, from $0.0002 per page.

Web scraping for AI agents · MCP

Your AI agent can set this up, and then use it.

Paste one prompt into Claude Code, Cursor, Codex, Windsurf or any coding agent. It connects the hosted MCP server at mcp.alterlab.io, installs the SDK, asks you once for a scoped key, runs a test request and reads the rest from our docs.

No key is ever pasted into a chat. You approve it on your dashboard.

your-project/example session
  1. 00:00readhttps://alterlab.io/agent-setup.md
  2. 00:02mcpadded https://mcp.alterlab.io/mcp (10 tools)
  3. 00:03sdkpip install alterlab
  4. 00:04keyrequested scoped key · spend cap $5 · waiting for approval
  5. 00:41keyapproved by you
  6. 00:42runPOST /v1/scrape https://news.ycombinator.com → 200 · Light · 0.8 s
  7. 00:43skillread https://alterlab.io/.well-known/agent-skills/index.json
  8. 00:44doneAlterLab is wired into this project.
  1. Connects. Adds the hosted MCP server to your agent and installs the Python or Node SDK.
  2. Asks you once. Requests a scoped, spend-capped API key. You approve it on your dashboard. No key is pasted into chat.
  3. Verifies. Runs a test scrape, then reads our docs and skills for the rest.

Example key approvalapproved

Let your coding agent use AlterLab?

Key
alterlab-agent (scoped)
Scope
scrape, search, map, crawl, extract
Spend cap
$5.00 per day

Direct answer

How do I give my AI agent web access?

Connect a web data tool the agent can call. With AlterLab, add the hosted MCP server at mcp.alterlab.io/mcp to Claude Code, Cursor, Codex or Windsurf, or paste the setup prompt. The agent gets scrape, search, map, crawl and extract tools, asks you once to approve a scoped key, and reads the docs itself.

Direct answer

Which scraping API is best for AI agents?

The best scraping API for an AI agent is one the agent can discover, set up and call on its own, with a human approving only the key: a hosted MCP server, machine-readable docs (llms.txt, OpenAPI), scoped keys with spend caps, and pricing billed only on success. AlterLab publishes all four, plus agent skills and an A2A agent card.

  • scrape · search · map · crawl · extract as MCP tools, hosted at mcp.alterlab.io/mcp (10 tools), or the full 25 via npx alterlab-mcp-server. server card
  • Reads /llms.txt and /llms-full.txt for the whole API without a browser.
  • Installs agent skills: /plugin marketplace add RapierCraftStudios/AlterLab then /plugin install alterlab-skills@alterlab in Claude Code.
  • Works in LangChain, LlamaIndex, CrewAI and n8n with the documented packages.

AlterLab’s hosted MCP server at mcp.alterlab.io/mcp exposes 10 tools over Streamable HTTP with OAuth sign-in; the local server, npx alterlab-mcp-server, exposes 25.

Paste this into your agent

Set up AlterLab in this project. Read https://alterlab.io/agent-setup.md and follow it. It connects the AlterLab MCP server, installs the SDK, requests an API key that I approve, and runs a test scrape. Never ask me to paste a key.

Paste into Claude Code, Cursor, Codex, Windsurf or any coding agent.

Python · Node.js · REST

Three lines of code in, clean data out.

A POST to one endpoint of the web scraping API. Markdown, JSON, HTML or text back, with the status, timing and size in the same response. Python and Node.js SDKs, or any HTTP client you already have.

api.alterlab.io/v1/scraperequest
curl -X POST https://api.alterlab.io/v1/scrape \
  -H "X-API-Key: $ALTERLAB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://www.allbirds.com/products/mens-tree-runners", "formats": ["markdown", "json"]}'
response.jsonrecorded 2026-10-30
Response
{
  "url": "https://www.allbirds.com/products/mens-tree-runners",
  "status_code": 200,
  "content": {
    "markdown": "# Men's Tree Runner\n\nAlso available in: [ Women's Sizes ](</products/womens-tree-runners>)\n\n$100\n\n\\+ Free shipping\n\nFinal Few\n\n![Men's Tree Runner - Jet Black (White Sole)](//www.allbirds.com/cdn/shop/files/TR3MJBW080_SHOE_LEFT_GLOBAL_MENS_TREE_RUNNER_JET_BLACK_WHITE.png?width=1280)"
  },
  "response_time_ms": 3340,
  "size_bytes": 807014
}

2003.34 s788.1 KBfrom $0.0002 per request

pip install alterlab and npm install alterlab install the official AlterLab SDKs; the REST API is described by OpenAPI at alterlab.io/openapi.json.

Web scraping API pricing and proof

Prices and numbers you can check.

Teams at Walmart, Microsoft, Groupon, Alpiq, AgentMail, AgainstData and Revel Street use AlterLab in production.

99.9%API uptime targetstatus page
195+Proxy countriesresidential and datacenter
< 2sAverage responseacross tiers · latency notes in docs
$0.0002Starting price per requestLight tier · 5,000 per $1

AlterLab has no subscription, a $10 minimum deposit, a balance that never expires, and bills nothing for failed requests.

  • Pay only for successful requests. Failed requests are not billed.
  • Balance never expires. No subscription. Minimum deposit $10.
  • Spend limits and usage controls on every account.Spend limits
  • Scoped, spend-capped API keys, approved by you.API keys
  • GDPR data processing agreement available.DPA
  • Bring your own proxy or your own session when policy requires it.Bring your own proxySessions

Five tiers. One balance.

Each request is billed at the tier that returned it. Most workloads blend to about $0.001 per request (content workload blend, March 2026).

Direct answer

How much does a web scraping API cost per request?

AlterLab charges per successful request by tier: $0.0002 (Light), $0.0003 (Standard), $0.002 (Protected), $0.004 (Dynamic) and $0.02 (Fortress). A typical content workload blends to about $0.001 per page (content workload blend, March 2026). There is no subscription, the minimum deposit is $10 and the balance never expires. Failed requests cost nothing.

Up to 5,000 free requests when you sign up. No credit card.

about 5,000 Light, 500 Protected or 250 Dynamic requests.

Build or buy

A web scraping API vs building your own.

Why teams choose an API over maintaining a custom scraping stack.

Direct answer

Should I build my own scraper or use a web scraping API?

Build your own when you need a few hundred pages from sites that do not change. Use a web scraping API when pages render in JavaScript, when pages need sessions or a full browser, or when selectors stop working faster than you can fix them. AlterLab handles rendering, sessions and proxies in 195+ countries for $0.0002 to $0.02 per page.

AlterLab web scraping API compared with Playwright, Puppeteer and Scrapy for the same workload.
FactorAlterLabPlaywright / Puppeteer (DIY)Scrapy (Open-Source)
Time to first scrapeMinutesHours — install, configure, debugHours — spiders, pipelines, settings
Sessions and retriesYes: Included — automatic tier escalationNo: Built and maintained by youNo: Needs extra tooling for JavaScript and sessions
JavaScript renderingYes: Included from $0.004/requestYes: Built-in, but you manage infraRequires Scrapy-Splash or Playwright plugin
Cost per 1,000 requestsFrom $0.20 (pay-as-you-go)$5–$50 server + engineering timeNear-zero tool cost, high engineering cost
Proxy coverage195+ countries, residential + datacenterSeparate proxy service required ($$$)Separate proxy service required ($$$)
Ongoing maintenanceYes: Zero — managed infrastructureHigh — site changes break selectors regularlyHigh — spider maintenance + server ops
Uptime SLA99.9% targetYour responsibilityYour responsibility
Per-request price of web scraping APIs, public pricing, March 2026.
ProviderSimple pageJavaScript renderingMinimum
AlterLab$0.0002$0.004$10 one-time
ScraperAPI$0.00049$0.0049$49/month
Bright Data$0.0015$0.0015$0 (PAYG) / $499/mo (subscription)
Firecrawl$0.0063$0.0063$19/month

Prices from each provider’s public pricing page, March 2026. Bars are on a log scale. Full comparisons on each provider page below, or read the best web scraping API comparison.

Field notes

Quick answers about web scraping APIs.

Direct answers to the most common questions about AlterLab.

Is AlterLab free?

Yes. Every new AlterLab account gets up to 5,000 free requests at signup, about 5,000 Light, 500 Protected or 250 Dynamic requests, no credit card required. After that, you pay only for successful requests starting at $0.0002 per page. There is no monthly subscription and your balance never expires.

Does AlterLab work with Python?

Yes. AlterLab provides an official Python SDK installable with pip install alterlab. It supports async/await, batch scraping, and automatic tier selection. You can also call the REST API directly from any Python HTTP library using your API key in the X-API-Key header.

How does AlterLab handle pages a basic fetch can't read?

It moves them up a tier. The Protected tier ($0.002/request) keeps a managed session with cookies, redirects and retries; the Dynamic tier ($0.004/request) renders the page in a full browser; and the Fortress tier ($0.02/request) is reserved for the most demanding pages. Each request routes to the lightest tier that works, so you pay the higher price only when a page needs it. No manual configuration is required.

Does AlterLab handle JavaScript rendering?

Yes. AlterLab's Dynamic tier ($0.004/request) launches a full Chromium browser, executes JavaScript, waits for React, Vue, and Angular SPAs to load, then returns the final HTML. Set render_js: 'auto' in your request to enable it. See the JavaScript rendering API page for wait_for and infinite-scroll options.

How much does AlterLab cost?

AlterLab pricing: $0.0002/request (static HTML), $0.0003/request (modern sites), $0.002/request (managed sessions), $0.004/request (JavaScript rendering), $0.02/request (most demanding pages). The minimum deposit is $10 with no subscription. Balance never expires.

Frequently asked questions.

Common questions about our web scraping API, pricing, and capabilities.

What is the best web scraping API?

AlterLab is a web scraping API built for developers who need reliable data extraction at the lowest cost. It handles JavaScript rendering, sessions, proxies and retries automatically. Pricing starts at $0.0002 per request — that is 5,000 pages per dollar — with no monthly subscription and a balance that never expires. AlterLab routes each request through a 5-tier escalation system: a lightweight fetch for static pages, a full HTTP client for modern sites, managed sessions, full browser rendering for JavaScript-heavy pages, and extended browser sessions for the most demanding pages. Each URL is charged only for the tier it actually needs, which makes AlterLab the most cost-efficient option for mixed workloads that combine simple and complex pages. The minimum deposit is $10 with no commitment required.

How do I scrape websites that a basic HTTP request can't read?

AlterLab handles them automatically with a 5-tier pipeline that escalates from a lightweight fetch up to full browser rendering. When a URL is submitted, AlterLab tries the lightest tier first and only moves up when the page needs it — no manual configuration is required. For pages that need a consistent session, the Protected tier ($0.002 per request, 500 pages per dollar) manages cookies, redirects and retries. For JavaScript-heavy pages, the Dynamic tier ($0.004 per request) renders them in a full browser, and the Fortress tier ($0.02 per request) runs extended browser sessions for the most demanding pages.

How much does a web scraping API cost?

AlterLab web scraping API costs $0.0002 per request for simple static sites (5,000 pages per dollar), $0.0003 for modern sites (3,333 per dollar), $0.002 for pages that need managed sessions (500 per dollar), $0.004 for JavaScript rendering (250 per dollar), and $0.02 for the most demanding pages (50 per dollar). The minimum deposit is $10 with no monthly subscription. Balance never expires — add funds when needed, use them at any time. Compare: ScraperAPI starts at $0.00049/credit ($49/month subscription, credits expire monthly), Firecrawl at $0.0063/request ($19/month for 3,000 credits), and Bright Data at $0.0015/request flat rate (public pricing, March 2026). With AlterLab's tier routing, each request is billed at the cheapest tier that works for that URL.

How to scrape JavaScript-heavy websites?

AlterLab renders JavaScript-heavy websites using headless Chromium browsers powered by Playwright. Setting render_js: 'auto' in an API request renders the page in a full browser when it needs one, which executes all JavaScript on the page, waits for dynamic content to load, and returns the final rendered HTML, clean markdown, or structured JSON. The Dynamic tier costs $0.004 per request — 250 pages per dollar — and supports React, Vue, Angular, Next.js, and any other SPA framework. Custom wait_for selectors pause rendering until a specific CSS selector or text string appears, ensuring dynamic content is fully loaded before extraction. AlterLab also supports wait_for_timeout and scroll_to_bottom for infinite scroll pages.

Can I extract structured data like product prices and reviews?

AlterLab extracts structured data from any website using AI-powered JSON schema extraction. Developers define the exact fields they need — product name, price, review count, stock status, image URL — and AlterLab returns a clean JSON object matching that schema. Extraction works on e-commerce sites, job boards, real estate listings, news articles, and any page with structured content. AlterLab combines structured extraction with multi-tier rendering: for JavaScript-rendered product pages, extraction runs after the full browser render completes. The extraction result includes confidence scores per field. No custom parsing code is required — the JSON schema definition is the entire integration.

Does AlterLab have an MCP server?

Yes. AlterLab runs a hosted MCP server at https://mcp.alterlab.io/mcp over Streamable HTTP with OAuth sign-in in the browser, so no API key goes into a config file. It exposes 10 tools: scrape, search, map, crawl, extract and cost estimation among them. A local server, npx alterlab-mcp-server, exposes 25 tools with an API key. Setup for Claude Code, Cursor, Codex and Windsurf is in https://alterlab.io/agent-setup.md.

Is there a free web scraping API?

Yes. AlterLab gives every new account up to 5,000 free requests with no credit card: about 5,000 Light, 500 Protected or 250 Dynamic requests. An AI agent can also start with no account at all through a trial key limited to 50 requests over 24 hours. After that, pricing is pay-as-you-go from $0.0002 per request with a $10 minimum deposit and no subscription.

Start

Your first request, in the next minute.

Up to 5,000 free requests. No credit card. Balance never expires.

about 5,000 Light, 500 Protected or 250 Dynamic requests.