CAPTCHA

Best CAPTCHA-solving services for web scraping

Before you pay a cent for a solver: most of the CAPTCHAs you're hitting are a symptom, not the disease. Fix the IP and the browser first and half of them stop showing up. Here's the honest guide to the ones that don't, from someone who pays these bills every month.

Disclosure: some links here are affiliate links. If you sign up through them we may earn a commission at no extra cost to you. We only recommend tools we'd use ourselves. Hire a Clawd is our own service.

Here's the thing nobody selling a solver leads with: most of the CAPTCHAs you're hitting are your own doing. Not a moral failing. A signal. The site looked at your IP and your browser, decided you smelled automated, and threw a puzzle to confirm it. Solve that one puzzle and you've treated the symptom while the disease keeps flaring on every request.

So this guide runs in two halves. First, why a solver is the last tool you reach for, not the first. Then, once you've earned the right to buy one, how the services actually differ and how to choose without lighting money on fire. I run scrapes for a living and pay these invoices monthly, so this is the version I wish someone had handed me before my first bill.

Do this before you pay for a solver

A CAPTCHA is a site telling you it already doesn't trust you. That's the whole mental model. reCAPTCHA v3 and Cloudflare Turnstile don't even show a puzzle most of the time. They read your reputation in the background and wave through anything that looks ordinary. So the cheapest solve is the one you never trigger.

Two changes kill most challenges before they appear:

Get those two right and a big share of your challenges just stop happening. What's left, the visible puzzles that survive a clean setup, is what a solver is actually for. Pay to solve those. Don't pay to solve the ones you could've dodged for the price of a better proxy.

Recommended tool

Fewer challenges beats a faster solver

Every challenge you don't trigger is a solve you don't buy. A clean rotating residential pool is the single change that cuts your CAPTCHA volume the most, and it quietly lowers your solving bill at the same time.

See our proxy pick →

Affiliate link, at no extra cost to you.

The challenges you'll actually hit

Not all challenges cost the same to beat. Here's what you'll run into, easy to nasty, so you know what you're quoting before you shop.

Rough hardness order, cheapest to worst: reCAPTCHA v2 and hCaptcha, then Turnstile if you must solve it rather than pass it, then GeeTest, then reCAPTCHA v3 at scale, then Arkose. Price and failure rate climb the same ladder.

Two kinds of service: farms vs token APIs

Two business models sit behind almost every service, and they're good at different jobs.

Human-solver farms. Real people in front of screens, solving puzzles through an API, billed per thousand solves. Cheap. Slower, because there's a person and a queue, so expect seconds to tens of seconds under load. Still unbeatable on the odd image sets a model fumbles. 2Captcha and Anti-Captcha are the names you'll see here.

Automated token services. Software does the solving, so they're fast and they scale, and they're the better answer for the token-shaped challenges: reCAPTCHA v3 scores, Turnstile, invisible v2. Pricier per solve than a farm on average, but the latency is where they earn it back. CapSolver and CapMonster live in this camp.

Most large providers now bolt both together under one API and one balance, routing each task to whichever backend fits. So you mostly don't pick a model. You pick a provider whose routing and success rate hold up on your target.

Our main pick

The solver we actually run

For the puzzles you can't dodge, this is the service we reach for first. One API covers reCAPTCHA v2 and v3, hCaptcha, Turnstile, and the harder image sets, it takes your proxy so the token matches your IP, and you pay per solve so low-volume jobs stay cheap. It's the one we'd hand a client on day one.

See our CAPTCHA pick →

Affiliate link, at no extra cost to you.

How the integration works

The API shape is nearly identical across providers, which is the one genuinely nice thing about this corner of scraping. Three steps.

  1. Submit the task. Hand over the challenge's sitekey (the data-sitekey in the page markup) and the page URL. For v3 you add the action name and a minimum score; for Turnstile, the action. For anything reputation-sensitive, you also pass a proxy so the token is minted from your IP, not the farm's.
  2. Poll for the result. The job goes into a queue. You poll every few seconds until a token comes back.
  3. Use the token. Drop it into the hidden field the page expects (usually g-recaptcha-response) or feed it to the JavaScript callback, then submit the form.

In code, kept provider-neutral. The createTask / getTaskResult pattern below is the de facto standard, so most services take this shape:

import requests, time

API = "https://api.captcha-provider.example/v1"
KEY = "YOUR_API_KEY"

# 1. Submit the task: what to solve, and where.
job = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
        "type": "RecaptchaV2TaskProxied",
        "websiteURL": "https://target.example.com/login",
        "websiteKey": "6Lc_sitekey_from_the_page",
        # v3 also needs "pageAction" + "minScore"; Turnstile needs the action
        "proxyType": "http",
        "proxyAddress": "gate.example-proxy.com",
        "proxyPort": 8080,
        "proxyLogin": "user",
        "proxyPassword": "pass",
    },
}).json()
task_id = job["taskId"]

# 2. Poll until a worker (or a model) returns the token.
while True:
    time.sleep(5)
    res = requests.post(f"{API}/getTaskResult", json={
        "clientKey": KEY, "taskId": task_id,
    }).json()
    if res["status"] == "ready":
        token = res["solution"]["gRecaptchaResponse"]
        break

# 3. Inject the token where the page wants it, then submit.
#    Usually a hidden <textarea name="g-recaptcha-response"> or a JS callback.
session.post("https://target.example.com/login", data={
    "username": "...", "password": "...",
    "g-recaptcha-response": token,
})

That's the whole dance. One thing to remember: the token is short-lived, usually a minute or two, so solve right before you submit, not ahead of time and definitely not in a batch you sit on.

The proxy catch nobody mentions

Here's the trap that burns everyone exactly once. A token isn't portable across IPs. reCAPTCHA v3 and Turnstile bake reputation, and often the requesting IP, into the token. So if a farm solves it from some datacenter box in another country and you submit from your residential proxy, the two don't line up and the site rejects a token it just handed out. Works in the provider's playground, fails in your pipeline. It's this, every single time.

The fix is a "proxied" task: you pass your own proxy into the solve request so the token is generated from the same IP that'll use it. It costs a little more than the "proxyless" option, and it's worth every cent on v3 and Turnstile. For plain image puzzles like v2 or hCaptcha, proxyless is usually fine, because there's no IP baked into the answer. Keeping that proxy pool healthy is its own job, covered in the rotating proxies walkthrough.

This is a lot of plumbing to keep alive

Clean IPs, a real browser, proxied solve tasks, tokens that expire in ninety seconds, and a success rate that drifts as sites retune. Hire a Clawd is a personal AI agent that runs the whole browser-automation stack for you, around the clock, solver fallback included. You get the data without babysitting the machine that fetches it.

See plans from $49/mo →

What actually matters when you pick one

Ignore the marketing success rates. They're measured on the vendor's easiest path, not on your target. What actually decides it:

My take: don't overthink the first pick. Grab one that covers your challenge type, benchmark it on your target for an afternoon, and switch if the numbers disappoint. Switching costs almost nothing because the APIs all rhyme. Loyalty to a solver is how you overpay.

When not to pay to solve

Half the value of doing this for years is knowing when the solver is the wrong answer. Four cases where you should keep your wallet shut:

Skip the setup

The Anti-Detect Scraping Starter Kit

A ready-to-run Camoufox + residential proxy Python template with humanized behavior baked in, a setup guide, and a pre-flight checklist. It's tuned to trigger fewer challenges in the first place, with a drop-in slot for a solver when one gets through. Wired up and working.

$19 one-time

Get the kit →

FAQ

How much does CAPTCHA solving cost?

You pay per solve, quoted per 1,000. Common image and token challenges run roughly $0.5 to $3 per 1,000, and the nasty ones (Arkose, DataDome) cost several times more. Rates shift between providers and over time, so treat any figure as a checkpoint, not a promise. At real volume your bill is dominated by how many challenges you trigger, which loops right back to fixing your IP and browser so you trigger fewer of them.

Are CAPTCHA-solving services legal?

Paying a service to solve a puzzle in front of public data is broadly fine in a lot of places, and using one doesn't change the legality of the scrape itself either way. But the site's terms of service, its robots rules, rate limits, and privacy law all still apply, and they vary by where you and the site sit. This isn't legal advice. If a project is high-stakes, talk to a lawyer before you point anything at someone's servers.

Which is best for reCAPTCHA v3?

An automated token service running a proxied task, with your residential proxy passed in and the correct action name and minimum score set. v3 is a reputation score, not a puzzle a human clicks, so a human farm has no edge here, and a token solved from a mismatched IP scores badly and gets rejected. The IP the token is minted from matters more than the service brand.

Can I avoid CAPTCHAs entirely?

Not always, but you can dodge most of them. A clean residential IP and a real browser like Camoufox make the invisible challenges resolve silently, and staying out of login and checkout flows keeps you away from where the visible ones live. The residue that survives a clean setup is the only part a solver should ever touch.

Or just hand the whole thing to an agent

If pricing solvers by the thousand and matching proxies to tokens sounds like a part-time job, that's because it is one. Hire a Clawd runs the automation for you, 24/7, dodges what it can and solves what it can't, and pings you on Telegram or Signal when the data's ready. No scripts to maintain, no invoices to reconcile.

Get your own agent →