Compare

Which unlocker API fits: Bright Data, Oxylabs, Zyte or UpRock?

For pages that won't load from a plain datacenter request, Bright Data's Web Unlocker costs $1.00 to $1.50 per 1,000, Oxylabs' Web API $0.75 to $1.50 for a generic page, and Zyte API anything from $0.06 to $16.08, set by the tier it gives the site and whether it needs a browser. All three bill only successful responses. UpRock is $0.50 per 1,000 pages, loaded on a real device in the country you choose, and fits best as the second network for the pages your unlocker gives up on.

Updated · Read as markdown

What each one is built for

All three sell the same promise: send a URL, get the page, and let them deal with proxies, rendering and retries. They differ in how they price it and what sits around it.

  • Bright Data Web Unlocker. One endpoint, api.brightdata.com/request, that picks the proxy network, sets headers and fingerprints to match real-user browser traffic and retries with other configurations until a request succeeds. It sits in Bright Data's wider range: SERP API, Browser API, ready-made scrapers and datasets, and residential IPs in 195 countries.
  • Oxylabs Web API. Launched on 7 October 2026, its /scrape endpoint handles headless rendering, proxy rotation and localization, and returns markdown, HTML, JSON or screenshots, with AI parsing for $3 per 1,000 pages more. Oxylabs also sells Web Unblocker, a proxy-style product billed by traffic at $7.20 down to $3 per GB.
  • Zyte API. One API that chooses datacenter or residential IPs, and a browser or not, per site, and prices each site in one of five tiers. Around it: browser actions, screenshots, automatic extraction, Scrapy Cloud for running spiders, and spending limits per key.
  • UpRock. One page per call, loaded on a device in one of 63 countries (or a region), returned as markdown over MCP or the CLI, for one credit.

What 1,000 hard pages cost on each

Every number comes from the vendor's own pricing page or docs, checked 25 Oct 2026. "Hard" here means a page that won't load from a plain datacenter request, which is what the unlockers are for.

Bright Data Web UnlockerOxylabs Web APIZyte APIUpRock
Per 1,000 pages, smallest plan$1.50 pay as you go$1.00 without JavaScript, $1.50 with (Starter, $30 a month)$0.13 to $1.27 for an HTTP response, $1.01 to $16.08 with a browser, pay as you go$0.50, prepaid
Per 1,000 pages, larger plans$1.30, $1.10 and $1.00 on the $499, $999 and $1,999 plans$0.90 / $1.40 (Basic, $100), $0.80 / $1.30 (Flexible, $500), $0.75 / $1.22 (Enterprise, from $2,500)$0.06 to $0.61 and $0.48 to $7.68 at the $500 monthly commitment$0.40 with UPT
How the price is setOne rate for every site; the premium-domain tier was retired for new customers on 20 May 2026One rate for any generic site, set by plan and JavaScriptFive tiers per site and request type, assigned by Zyte and reviewed quarterlyOne credit per page
What's billedSuccessful requests only, unless you turn on custom headers and cookies, which bills every requestFaulted scrapes aren't chargedSuccessful responses only; a site's own 404 counts as a successNot documented yet
What a request runs onIPs from its proxy networks, with headers and fingerprints it managesRendering and proxy rotation in Oxylabs' cloudA datacenter or residential IP and, when needed, a browser, chosen per siteA browser on a real device whose owner opted in
Countries195 for residential IPs, down to city, ZIP and ASN195; a country code on the Web API249 country codes; 20 standard, and the rest cost more when you set them63, or a region
Choosing residential IPs yourselfResidential proxies are for verified companies; Web Unlocker needs no verificationEvery customer answers a KYC questionnaireRequires business verification and costs moreNo IP pool to choose from: every page loads on an opted-in device
MCP serverOfficial, hosted or localLocal or self-hosted for the Web APIRemote, with sign-inRemote (streamable HTTP)
To try it5,000 requests a month$5 welcome credit$5 credit for the first monthPrepaid credits

Two things to read into it. Bright Data and Oxylabs give you one number for any site, so a hard page costs the same as an easy one. Zyte makes easy sites very cheap and hard ones expensive, and its pricing page has a lookup that shows a site's tier before you commit. Zyte doesn't publish the extra cost of an extended country or an explicit residential IP on the pages we read; its docs say both have their own base cost plus network charges.

How each one tells you it gave up

Each unlocker retries on its own before it reports a failure, so by the time you see one, another try through the same system rarely helps. This is where a second network earns its place. The full routing, with tested code, is on the Bright Data and Oxylabs pages.

What a failure looks likeBilled?Worth a second networkRespect it
Bright Data Web UnlockerHTTP 200 with an x-brd-error-code header, or 429 sr_rate_limitNohttp_status, timeouts, document_load_failed, sr_rate_limitub_bad_endpoint_robots (the site's robots.txt), policy blocks, broken certificates
Oxylabs Web APIHTTP 500 with state: faulted after its retries, or 408, 429, 503No, for faulted scrapes408, 429, 500, 503400 (can mean a restricted target), 403 (your plan isn't entitled)
Zyte APIHTTP 520 (a temporary error, which Zyte says is usually a ban it couldn't avoid in time), 521 (permanent) or 500 (timed out)No520 after your client's retries, 521, 500451 (a domain Zyte doesn't allow), 421 (the domain is unreachable)
UpRockcrawl_fetch returns an error; the CLI exits 1 with the error on stderrNot documented yet

Zyte also sends 429 and 503 when it's rate-limiting you. Those are free and Zyte asks you to retry them on Zyte, so they aren't a reason to switch networks.

An IP address or a whole computer

Underneath, the three unlockers work alike. Your request leaves from an IP address in their proxy networks (datacenter, ISP, mobile or residential), and when a page needs it, a browser they run renders it, with headers, cookies and fingerprints managed to look like ordinary traffic. The residential IPs are real people's connections shared with consent: Bright Data's come from users who opt in through apps that carry its SDK, and Zyte describes its residential IPs as end-user devices with explicit consent for bandwidth sharing.

UpRock does it the other way round. The page loads in a browser on the device itself, a desktop or phone whose owner opted in, in the country you pick. A proxy gives you an IP address. A Rocket gives you a whole computer.

That isn't a way around anyone's rules. UpRock fetches public pages only and never logs in. It's a different path to the same public page, through different devices and different software, which is what you want from a second network when the first one gives up, and it costs the same whatever the page needs.

Which one fits

IfUseWhy
Your pages load fine from a datacenter and you run your own scraperA plain proxy, or a crawler's cheapest tierYou don't need managed rendering, retries or residential IPs, so an unlocker's per-page price buys you little
You fetch protected sites at volume and want rendering, retries and success-only billing in one callAn unlockerThat's the job they're built for. Compare Bright Data's and Oxylabs' flat rates with the tier Zyte's lookup gives your sites
You need city, ZIP or ASN targeting, or an SLABright Data, or Zyte's Enterprise planBright Data targets city, ZIP, carrier and ASN on residential IPs; Zyte Enterprise includes SLAs with a 1-hour weekday response
Your unlocker reports a failure after its own retriesA second network, such as UpRockRetrying the same provider sends the page through the same system again; a device network is a different path, at one credit
You need a country an unlocker treats as extraUpRockZyte charges more for any country outside its 20 standard ones; UpRock covers 63 countries, or a region, at one price
You need structured data, search results or scripted stepsAn unlocker or its scraper APIsUpRock returns one page per call

Checked 25 Oct 2026: every price and policy above comes from the vendors' own pricing pages and docs on that date, linked in the table and listed under References. We didn't run requests through Bright Data, Oxylabs or Zyte for this page, so it compares what they publish, not measured success rates.

FAQ

What is a web unlocker API?

A scraping API that takes a URL and handles proxy choice, rendering and retries on the provider's side, then returns the page. You pay per successful request instead of per gigabyte of proxy traffic. Bright Data's Web Unlocker, Oxylabs' Web API and Zyte API all work this way.

Which one is cheapest for hard pages?

It depends on the site. Bright Data and Oxylabs charge one rate for any generic site, $1.00 to $1.50 and $0.75 to $1.50 per 1,000. Zyte charges by the tier it gives each site, so an easy site can cost $0.06 per 1,000 and a hard one that needs a browser $16.08 pay as you go. Zyte's pricing page has a lookup that shows a site's tier before you start.

Do they charge for failed requests?

All three say they charge only for successful responses. The fine print differs. Bright Data bills every request once you turn on custom headers and cookies, Zyte counts a site's own 404 as a successful response, and Oxylabs doesn't charge for a scrape that faulted after its own retries.

Is UpRock an unlocker?

Not in the same sense. It doesn't send your request through a proxy to a browser it runs in a datacenter; it loads the page in a browser on a real device whose owner opted in, in the country you choose, for one credit. It fetches public pages only and never logs in, so it works best as a second network next to an unlocker, not a replacement for one.

Why is Oxylabs' price here higher than its $0.50 headline?

The "from $0.50/1K results" line on its pricing page matches the Amazon rows. For any other site ("custom domain scraping") it's $1.00 per 1,000 without JavaScript and $1.50 with it on Starter, down to $0.75 and $1.22 on Enterprise.

Other use cases to explore

References

Get started

Add UpRock in one paste.

Paste this into Claude Code, Codex, Cursor or any agent with a terminal. It reads our docs, sets up the MCP server or CLI, and tells you the cost before it spends anything.

Set up UpRock for me: read https://uprock.ai/agents.md, connect the UpRock MCP server, and run one test crawl. Tell me what it costs before you spend anything.

Which unlocker API fits: Bright Data, Oxylabs, Zyte or UpRock? | UpRock AI