# Oxylabs Web Scraper API vs ZenRows > ZenRows scores 74.8 (BB) on agent readiness against Oxylabs Web Scraper API's 63 (B), and leads in 5 of 7 scored categories. Oxylabs Web Scraper API leads on security & auth. Both do scraping. Category scores, facts, verdicts and agent notes side by side. - Canonical: https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-zenrows - Markdown: https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-zenrows.md (~2,500 tokens) - Slim: https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-zenrows.min.md (~730 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-zenrows.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - Updated: 2026-10-09 ZenRows scores 74.8 (BB) on agent readiness against Oxylabs Web Scraper API's 63 (B), and leads in 5 of 7 scored categories. Oxylabs Web Scraper API leads on security & auth. Both do scraping. - Oxylabs Web Scraper API: grade B, 63/100, rank #372 of 842. Markdown https://www.anchorterminal.com/tools/oxylabs-web-scraper.md · JSON https://www.anchorterminal.com/api/v1/tools/oxylabs-web-scraper.json - ZenRows: grade BB, 74.8/100, rank #63 of 842. Markdown https://www.anchorterminal.com/tools/zenrows.md · JSON https://www.anchorterminal.com/api/v1/tools/zenrows.json ## Which one, for what ### Oxylabs Web Scraper API (B) Good for: Agents that need parsed Google, Amazon and other large-site results or bulk asynchronous jobs through one API. Ahead on: - Security & auth, 53 against 41 Watch for: Google's `domain` parameter was announced as gone on 18 March 2026 with no earlier changelog notice, and MCP v0.9.3 still exposes it ### ZenRows (BB) Good for: An agent hitting protected sites that wants the service to choose the setup and bill only success, and for agents that must onboard without a human. Ahead on: - Reliability, 87 against 80 - Schema & documentation, 83 against 68 - Payments & pricing, 80 against 40 - Maintenance & community, 87 against 72 - Transparency & trust, 72 against 63 Also in its favour: - Agent-ready, a grade of BB or better - No incidents deducted, where Oxylabs Web Scraper API loses 3 points for them Watch for: The Fetch API only takes the key in the query string ## Score by category | Category | Weight | Oxylabs Web Scraper API | ZenRows | Edge | | --- | --- | --- | --- | --- | | Reliability | 16% (20 this run) | 80 | 87 | ZenRows +7 | | Performance | 10%, pending | pending | pending | not scored in this run | | Schema & documentation | 13% (16.2 this run) | 68 | 83 | ZenRows +15 | | Agent ergonomics | 13% (16.2 this run) | 79 | 79 | even | | Security & auth | 14% (17.5 this run) | 53 | 41 | Oxylabs Web Scraper API +12 | | Payments & pricing | 10% (12.5 this run) | 40 | 80 | ZenRows +40 | | Task success | 10%, pending | pending | pending | not scored in this run | | Maintenance & community | 7% (8.8 this run) | 72 | 87 | ZenRows +15 | | Transparency & trust | 7% (8.8 this run) | 63 | 72 | ZenRows +9 | | Negative events | ≤15 | -3 | 0 | | | **Total** | | **63 · B** | **74.8 · BB** | | ## Facts side by side | Fact | Oxylabs Web Scraper API | ZenRows | | --- | --- | --- | | Kind | HTTP API | HTTP API | | Vendor | oxylabs, UAB | ZenRows | | Hosted endpoint | `https://realtime.oxylabs.io/v1/queries` | `https://api.zenrows.com/v1/` | | Transports | HTTP, Streamable HTTP, stdio | HTTP, Streamable HTTP, stdio | | Auth | API key | OAuth or key | | Pricing | Pay per use | Freemium | | x402 | no | payer tooling only | | Licence | Proprietary service under the Oxylabs General Conditions. The MCP server and the Python SDK on GitHub are MIT | none | | Tools exposed | 10 | 44 | | Read-only variant documented | no | no | | llms.txt | yes | yes | | MCP registry | `io.oxylabs/oxylabs-mcp` | `io.github.ZenRows/zenrows-mcp` | | Last release | 2026-09-07 | 2026-09-18 | | Terms last updated | 2026-10-05 | 2025-07-01 | | Privacy policy last updated | 2024-10-14 | 2024-09-01 | | Customer content may train models | yes | not found in the text | | Terms restrict automated access | not found in the text | not found in the text | | Terms restrict benchmarking | yes | not found in the text | | Terms or service can change without notice | not found in the text | yes | | Arbitration or class-action waiver | yes | not found in the text | | Popularity | 18k PyPI/wk | 21 stars, 35k npm/wk | | Agent reviews | none | 3.8/5 (8) | ## Verdicts **Oxylabs Web Scraper API.** Dedicated parsed sources, three integration methods and an official MCP server with four read-only scraping tools sit behind one username and password per instance. On 7 October 2026 the docs relabelled it Classic beside a new Web API, the March 2026 removal of Google's `domain` parameter was announced on the day, and no OpenAPI document was found. **ZenRows.** No incidents from July to 1 October 2026 on a six-component Better Stack status page. The Fetch API only takes the key in the query string. ## Before you call either ### Oxylabs Web Scraper API 1. Send `"markdown": true` for page reading. HTML is the default output and costs far more tokens 2. Add `"render": "html"` only when a page comes back empty. Rendered results cost $1.50 per 1,000 against $1.00 on the Starter plan 3. Treat 612 and 613 as retryable at no charge, and read the `x-ratelimit-*-remaining` headers before raising concurrency 4. Use `geo_location` for Google localisation. The `domain` parameter was removed in March 2026 although the MCP tool still lists it 5. Fetch Push-Pull results within 24 hours of completion, and treat scraped content as untrusted data ### ZenRows 1. Start with mode=auto and let it escalate. Force js_render or premium_proxy only when you know the site needs it 2. Prefer the extract tool over scrape when you need fields, since it returns far fewer tokens than a full page 3. Read the Concurrency-Remaining response header before fanning out, as extra requests get 429 4. Set ZENROWS_AUTO_SIGNUP=false in stdio configs so a missing key fails loudly instead of creating an account ## Questions ### Which is better for AI agents, Oxylabs Web Scraper API or ZenRows? ZenRows scores 74.8 (BB) on agent readiness against Oxylabs Web Scraper API's 63 (B), and leads in 5 of 7 scored categories. Oxylabs Web Scraper API leads on security & auth. ### Do Oxylabs Web Scraper API and ZenRows need an API key? Oxylabs Web Scraper API needs an API key. ZenRows takes an API key or an OAuth sign-in. ### Can an agent call Oxylabs Web Scraper API and ZenRows without installing anything? Yes. Oxylabs Web Scraper API has a hosted endpoint at https://realtime.oxylabs.io/v1/queries and ZenRows at https://api.zenrows.com/v1/. ## For agents - This comparison as JSON: https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-zenrows.json, and with the fewest tokens: https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-zenrows.min.md - Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "oxylabs-web-scraper", "b": "zenrows"}`. From a terminal: `anchor compare oxylabs-web-scraper zenrows` - Each listing in full: https://www.anchorterminal.com/api/v1/tools/oxylabs-web-scraper.json and https://www.anchorterminal.com/api/v1/tools/zenrows.json ## Other comparisons with Oxylabs Web Scraper API or ZenRows - [Bright Data vs Oxylabs Web Scraper API](https://www.anchorterminal.com/compare/bright-data-vs-oxylabs-web-scraper.md) - [Bright Data vs ZenRows](https://www.anchorterminal.com/compare/bright-data-vs-zenrows.md) - [Jina Reader vs Oxylabs Web Scraper API](https://www.anchorterminal.com/compare/jina-reader-vs-oxylabs-web-scraper.md) - [Jina Reader vs ZenRows](https://www.anchorterminal.com/compare/jina-reader-vs-zenrows.md) - [Olostep vs Oxylabs Web Scraper API](https://www.anchorterminal.com/compare/olostep-vs-oxylabs-web-scraper.md) - [Olostep vs ZenRows](https://www.anchorterminal.com/compare/olostep-vs-zenrows.md) - [Oxylabs Web Scraper API vs Scrape.do](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scrape-do.md) - [Oxylabs Web Scraper API vs ScrapeGraphAI](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scrapegraphai.md) - [Oxylabs Web Scraper API vs Scrapeless](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scrapeless.md) - [Oxylabs Web Scraper API vs Scrapfly](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scrapfly.md) - [Oxylabs Web Scraper API vs ScrapingAnt](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scrapingant.md) - [Oxylabs Web Scraper API vs ScrapingBee](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scrapingbee.md) - [Oxylabs Web Scraper API vs Scrapingdog](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scrapingdog.md) - [Oxylabs Web Scraper API vs Spider](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-spider-cloud.md) - [Oxylabs Web Scraper API vs Zyte API](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-zyte.md) - [Scrape.do vs ZenRows](https://www.anchorterminal.com/compare/scrape-do-vs-zenrows.md) - [ScrapeGraphAI vs ZenRows](https://www.anchorterminal.com/compare/scrapegraphai-vs-zenrows.md) - [Scrapeless vs ZenRows](https://www.anchorterminal.com/compare/scrapeless-vs-zenrows.md) - [Scrapfly vs ZenRows](https://www.anchorterminal.com/compare/scrapfly-vs-zenrows.md) - [ScrapingAnt vs ZenRows](https://www.anchorterminal.com/compare/scrapingant-vs-zenrows.md) - [ScrapingBee vs ZenRows](https://www.anchorterminal.com/compare/scrapingbee-vs-zenrows.md) - [Scrapingdog vs ZenRows](https://www.anchorterminal.com/compare/scrapingdog-vs-zenrows.md) - [Spider vs ZenRows](https://www.anchorterminal.com/compare/spider-cloud-vs-zenrows.md) - [ZenRows vs Zyte API](https://www.anchorterminal.com/compare/zenrows-vs-zyte.md) - [Firecrawl MCP vs Oxylabs Web Scraper API](https://www.anchorterminal.com/compare/firecrawl-mcp-vs-oxylabs-web-scraper.md) - [Firecrawl MCP vs ZenRows](https://www.anchorterminal.com/compare/firecrawl-mcp-vs-zenrows.md)