cd /news/ai-crawlers/what-a-404-costs-on-scraperapi-zenro… · home › topics › ai-crawlers › article
[ARTICLE · art-146708] src=foura.ai ↗ pub= topic=ai-crawlers verified=true sentiment=↑ positive

What a 404 costs on ScraperAPI, Zenrows and FourA

FourA bills zero credits for HTTP 404 responses, while ScraperAPI charges 1 credit for a plain 404 and 10 credits for a rendered 404 and Zenrows charges 1 and 5 credits respectively, according to a comparison published 9 September 2026 drawing on each provider's pricing documentation. FourA's API returns one of seven outcomes and bills only success, defined by default as HTTP 200, with 404, 500, 403 and rejected challenge pages treated as free application failures; ScraperAPI's credits page states it charges for 200 and 404 status codes, and Zenrows' pricing docs state HTTP 404 and 410 responses count as successful. FourA's example calculates that 5,000 dead URLs rendered on ScraperAPI would consume 50,000 credits — half of the $49-a-month Hobby plan's 100,000 credits — versus 25,000 credits on Zenrows and zero on FourA.

read4 min views37 publishedSep 9, 2026
What a 404 costs on ScraperAPI, Zenrows and FourA
Image: Foura (auto-discovered)

Who pays for the page that isn't there #

You're choosing between ScraperAPI, Zenrows and FourA, and your target list has dead links in it: delisted products, expired job posts, moved pages. Every crawl does. One question, then: what each of us charges when the target answers 404, from their pricing docs and ours, read on 9 September 2026.

What FourA charges when the target says no #

Every request to FourA gets one of seven outcomes, and only success is billed. Without a validate rule, a request counts as success only when the target returns HTTP 200. A 404 is an application failure. So is a 500, a 403, and a challenge page your rule rejected. None of them bills or counts against your plan.

That includes the request you cancel. Hang up before the response arrives and the outcome is a service failure, which is free.

What you pay is set per engine: Single is 1 credit, 2 with a browser profile, Proxy Finder 2 or 4, Browser 5, or 10 for an interactive page. Every response carries an X-FourA-Credits header that meters what the work spent, and the Dashboard shows Billed next to Spent, so you can read the gap yourself.

If a 404 is data to you (you're checking which listings went away), you say so: put 404 in validate.status.accept and that response comes back as a billed success. You decide what counts, not the status code. We wrote up the mechanism in Validate Rules Now Decide What Counts as Success.

What ScraperAPI and Zenrows charge for the same response #

ScraperAPI's credits page says it plainly: "We only charge for successful requests (200 and 404 status codes) and for requests that have been cancelled from your side before giving us enough time to finish them (70 seconds)." A plain page is 1 credit, render=true is 10, and a request to a site behind a bot-detection service adds 10 per request. Their status codes page repeats the 404 rule and adds that a request still failing after 70 seconds of retries isn't charged. On the Hobby plan, $49 a month buys 100,000 credits, as of 9 September 2026.

Zenrows draws the same line. Its pricing docs read: "HTTP 404 and 410 responses count as successful because the request completed correctly and returned valid data." Its credit table is headed "credits per successful request": a standard request is 1, JavaScript rendering 5, premium proxies 10, both together 25, and the pricing page says those weights are fixed.

ScraperAPI Zenrows FourA
Plain 404 1 credit 1 credit 0
Rendered 404 10 credits 5 credits 0
Cancelled by you billed under 70 s not stated 0
404 you asked for 1 credit 1 credit billed, by your rule

Why FourA comes out ahead here #

Say 5,000 of your URLs this month are dead. Rendered on ScraperAPI, by the two rules above, that's 50,000 credits, half of the Hobby plan's 100,000, spent on pages that don't exist. On Zenrows the same 5,000 are 25,000 credits at the rendering weight. On FourA they bill zero, unless you told us a 404 is what you wanted, and then they bill because they were the data. That isn't a discount. It's a different answer to who defines success: the status code, or you.

Credit where it's earned. ScraperAPI publishes a cost lookup endpoint and a max_cost cap, so you can price a URL before you fetch it, and returns each request's cost in an sa-credit-cost header. Zenrows prints one credit table, promises the weights won't move, and doesn't charge for a failed attempt either. Both are clear about the rule. We draw the line elsewhere.

Run the same request on FourA #

Pull a week of your own logs and count two things: responses that came back 404 or 410, and requests your client gave up on. Multiply the first by the weight you'd have sent (1, 5, 10 or 25) and that's the part of the bill that buys nothing. On FourA that line is zero, and the outcome label on each request in the Activity log tells you why.

Then check it yourself: create a free account at auth.foura.ai/signup, send one of your dead URLs through Single, and watch Billed stay put on Usage & Limits while Spent moves.

── more in #ai-crawlers 4 stories · sorted by recency
── more on @foura 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/what-a-404-costs-on-…] indexed:0 read:4min 2026-09-09 · —