alternatives · anti-captcha

Anti-Captcha alternative for Cloudflare Turnstile

Anti-Captcha publishes $2 per 1,000 Cloudflare Turnstile solves alongside 12 other captcha types. SolveGate does not meter per solve at all: it sells prepaid credit packs, one credit per successful solve, from $0.40 per 1,000 on the smallest pack down to $0.075 per 1,000 on the largest. It solves only the Turnstile widget and Turnstile WAF challenge pages. If your queue is mixed, Anti-Captcha covers more of it. If your queue is Turnstile, the narrower service costs less per solve.

Competitor pricing verified 13 August 2026 from each vendor's public pricing page.

Where the two overlap, and where they do not

Anti-Captcha is a general captcha-solving API. Its rates table lists 13 captcha types, from image-to-text through reCAPTCHA Enterprise, Arkose Labs, GeeTest, Amazon WAF and Turnstile. One account and one integration reach all of them.

SolveGate solves two things: the Cloudflare Turnstile widget and Turnstile-based WAF challenge pages. It does not solve reCAPTCHA, hCaptcha, GeeTest, FunCaptcha or AWS WAF, and adding them is not on the roadmap. State that plainly before anything else, because it decides most of these comparisons on its own.

So the overlap is one row of Anti-Captcha's rates table and the whole of SolveGate's catalogue. Outside that row there is nothing to compare — Anti-Captcha covers work SolveGate declines. Inside it, the two services differ on price, on how price is charged at all, on request shape, and on what each one documents about billing.

Documented differences, side by side

Every cell below comes from a page listed in the sources at the foot of this page. Where a vendor does not publish an attribute, the cell says so rather than guessing.

AttributeAnti-Captcha (published)SolveGate (published)
Pricing modelPer-solve rates table, billed against an account balancePrepaid credit packs; one credit is one successful solve
Price per 1,000 Turnstile solves$2$0.40 on the 30k pack, down to $0.075 on the 20M pack
Captcha types on the rates table13: images, reCAPTCHA v2, reCAPTCHA v3, reCAPTCHA Enterprise v2/v3, GeeTest, Arkose Labs, Turnstile, Custom Tasks, Object Coordinates, Prosopo, Friendly Captcha, Amazon WAF, Altcha2: Turnstile widget and Turnstile WAF challenge pages
Turnstile widget modes"manual, non-interactive, and invisible", detected automatically, no subtype parametermanaged, non-interactive, invisible
Cloudflare challenge-page handlingOptional cData and chlPageData fields on the Turnstile tasks, described as Cloudflare tokensgate set to "waf"
Proxy-bound solvingTurnstileTask requires proxyType, proxyAddress and proxyPort; TurnstileTaskProxyless takes noneNot among the documented /v1/solve parameters
Request shapePOST https://api.anti-captcha.com/createTask, clientKey inside the JSON bodyPOST /v1/solve with gate, sitekey and url, bearer secret key in the header
Result retrievalgetTaskResult polling, or an optional callbackUrl webhook on createTaskGET /v1/solve/{id}, free to poll
Charging for failed solvesNot documented on the pages checkedFailed solves are never billed
Credit expiryNot documented on the pages checkedCredits do not expire
Free allowance to startNot documented on the pages checkedFirst 1,000 solves free
Client librariesAPI docs list PHP, Python, Node.js, Java, C#, JavaScript, Go and Rubysolvegate on npm (Node 18+) and PyPI (Python 3.9+)
Vendor-stated solve time5 s on the rates tabletypically under 1.5 s

Treat the last row with care. Both numbers are vendor claims, measured by each vendor in a way neither publishes, on different traffic. They are not a benchmark and should not be read as one. Run both against your own target and time them yourself.

Prices move without notice. Every figure here was read on 13 August 2026 from the pages listed in the sources. Re-check both vendors' current rates before you commit a budget.

When Anti-Captcha is the better choice

For a large share of readers it is, and the breadth is the reason. Choose Anti-Captcha when any of the following describe your work.

  • Your queue is mixed. If reCAPTCHA v2, GeeTest or Arkose Labs sit alongside your Turnstile traffic, one vendor with one balance and one client library beats splitting the work over two accounts to save on a fraction of it.
  • You need a captcha type SolveGate does not touch. reCAPTCHA Enterprise v2/v3 ($5 per 1,000), Arkose Labs ($3), GeeTest ($1.80), Amazon WAF, Friendly Captcha, Prosopo and Altcha ($2 each) are all on their rates table. None of them are on SolveGate's.
  • You need human image work. Anti-Captcha's Images and Object Coordinates task types cover image-to-text and click-coordinate problems that have no equivalent in a Turnstile-only service.
  • Your solves must egress through your own proxy. Anti-Captcha documents TurnstileTask with proxyType, proxyAddress, proxyPort and optional credentials. Their docs advise reaching for it only when proxyless tasks are failing, since it slows workers down, but the option is documented.
  • Your stack is not Node or Python. Anti-Captcha's docs list client libraries for PHP, Java, C#, Go and Ruby as well. SolveGate ships two SDKs and a plain HTTP API.
  • You want results pushed rather than polled. createTask accepts an optional callbackUrl for webhook delivery.
  • You would rather draw down a balance than buy capacity up front. Anti-Captcha bills each task against a deposited balance. SolveGate asks you to buy a pack first.

If two or more of those apply, adding a second vendor for one gate is unlikely to repay the operational cost of running it.

When SolveGate is the better fit

The case for the narrower service is narrow by construction. Its published catalogue is eight prepaid packs:

PackPriceEffective per 1,000 solves
30,000 credits$12$0.40
100,000 credits$25$0.25
250,000 credits$60$0.24
500,000 credits$100$0.20
1,000,000 credits$150$0.15
5,000,000 credits$600$0.12
10,000,000 credits$1,000$0.10
20,000,000 credits$1,500$0.075

Read that as a catalogue, not a tariff. There are no marginal volume brackets and no metered pay-as-you-go rate underneath: you buy a pack, one credit is one successful solve, and a bigger pack carries a lower effective rate. $0.40 per 1,000 is the most anyone pays and $0.075 per 1,000 is the least. Credits do not expire, failed solves are never billed, and retrieving a finished solve is free.

  • Turnstile is effectively all you solve. QA suites, CI pipelines, uptime probes and staging environments behind a Cloudflare gate tend to hit one challenge type over and over.
  • Per-solve cost is a line item you notice. Anti-Captcha lists $2 per 1,000. The entry pack works out at $0.40 per 1,000, which is 80% less on the same row, and the largest pack at $0.075 per 1,000 is about 96% less.
  • Your volume fits a pack. At 100,000 solves a month, Anti-Captcha's published rate is $200 and SolveGate's 100k pack is $25. At 1,000,000, it is $2,000 against $150 for the 1M pack.
  • You want failures excluded from the bill as a documented rule rather than a support conversation. SolveGate does not bill failed solves. Anti-Captcha's getTaskResult returns a per-task cost field in USD, but none of the pages checked state what happens when a task does not produce a solution.
  • You are on Node 18+ or Python 3.9+, or you are happy with curl.
  • You want to test before paying anything. The first 1,000 solves are free.

Running both is a reasonable outcome. Route Turnstile and Turnstile WAF traffic to the cheaper single-purpose endpoint and leave everything else on the general-purpose account. Two clients in one worker is a small amount of code.

Moving one Turnstile call across

The shapes are close enough that a migration is mostly renaming. Anti-Captcha creates a task and hands you an integer taskId to poll.

bash
# Anti-Captcha: create the task, then poll getTaskResult
curl -s https://api.anti-captcha.com/createTask \
  -H 'Content-Type: application/json' \
  -d '{
    "clientKey": "'"$ANTICAPTCHA_KEY"'",
    "task": {
      "type": "TurnstileTaskProxyless",
      "websiteURL": "https://staging.example.com/login",
      "websiteKey": "0x4AAAAAAAAA_target"
    }
  }'
# -> {"errorId":0,"taskId":123456}

curl -s https://api.anti-captcha.com/getTaskResult \
  -H 'Content-Type: application/json' \
  -d '{"clientKey":"'"$ANTICAPTCHA_KEY"'","taskId":123456}'
# status is "processing" until it is "ready";
# the solution object carries the token and the worker's userAgent

SolveGate takes the same two inputs under different names, with the key in an Authorization header instead of the body.

bash
curl -s https://api.solvegate.io/v1/solve \
  -H "Authorization: Bearer $SOLVEGATE_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "gate": "turnstile",
    "sitekey": "0x4AAAAAAAAA_target",
    "url": "https://staging.example.com/login"
  }'

# A Turnstile WAF challenge page is the same call with gate set to "waf".
# Polling a queued solve is free:
curl -s https://api.solvegate.io/v1/solve/slv_8Kd2aF9 \
  -H "Authorization: Bearer $SOLVEGATE_KEY"

Three things to check when you port a call. websiteURL becomes url and websiteKey becomes sitekey. clientKey moves out of the JSON body into a bearer header. And if your form submission currently reuses the userAgent that Anti-Captcha returns beside the token, confirm what your own submission step actually needs before you drop it.

One billing difference survives the rename. Anti-Captcha draws each task against a deposited balance; SolveGate draws one credit per successful solve from a pack you bought in advance, so sizing the pack is part of the migration.

js
import { SolveGate } from "solvegate";

const sg = new SolveGate(process.env.SOLVEGATE_KEY);

const { token, solve_ms } = await sg.solve({
  gate: "turnstile",
  sitekey: "0x4AAAAAAAAA_target",
  url: "https://staging.example.com/login",
});

console.log(token, solve_ms);

One note on Turnstile itself

Cloudflare documents three Turnstile widget modes: managed, which chooses between a non-interactive and a checkbox challenge based on the visitor's risk level; non-interactive, which shows a visible widget that needs no action; and invisible, which runs with no visible widget. Anti-Captcha's Turnstile task types state that they cover the subtypes automatically, with no parameter to set. SolveGate covers the same three under gate "turnstile".

Challenge pages are a separate Cloudflare surface. Cloudflare documents Non-Interactive, Managed and Interactive Challenge Pages, and describes Turnstile Pre-clearance issuing a persistent cf_clearance cookie after a successful verification on an initial HTML page. Anti-Captcha exposes optional cData and chlPageData fields on its Turnstile tasks, described as Cloudflare tokens. SolveGate exposes challenge pages as gate "waf". If challenge pages are the bulk of your work, test both against a real page rather than reasoning from parameter names.

What we could not verify

Stated so you can check it yourself rather than take a number on trust.

  • Anti-Captcha's Turnstile task documentation shows an example response with a cost of 0.001500, which works out to $1.50 per 1,000, while the rates table lists $2. We could not reconcile the two from public pages. The cost field returned by getTaskResult is the figure your account is actually charged, so read it there.
  • The rates table notes automatic discounts based on daily volume, and shows ranges for images and reCAPTCHA. No discount schedule is published, and whether the $2 Turnstile rate moves at volume is not stated. Every percentage on this page is computed against that published $2, so a discounted Anti-Captcha account will see a smaller gap.
  • Whether Anti-Captcha bills tasks that never produce a solution is not stated on the rates table, the API index, createTask or getTaskResult.
  • Minimum deposit and payment methods are not published on the pages we fetched.
  • The client-library list comes from the API documentation index; the customer-area library page requires a signed-in account, so we could not confirm versions or maintenance status.

What this is for

Both services are for automation against properties you own or are authorised to test: your own QA and CI runs, uptime monitoring against your own endpoints, staging environments, and checking how your own anti-bot configuration behaves. Solving a gate on someone else's property without permission is a different activity, and neither this page nor SolveGate is aimed at it.

Common questions

SolveGate is one. It solves the Cloudflare Turnstile widget and Turnstile WAF challenge pages, and nothing else. The API is a POST to /v1/solve with gate, sitekey and url, authenticated with a bearer secret key. The narrowness is the point: it is cheaper per Turnstile solve, and useless for any other captcha type.

On figures read on 13 August 2026, Anti-Captcha lists $2 per 1,000 Turnstile solves. SolveGate sells prepaid credit packs rather than a per-1,000 rate, so anchor the comparison on the pack that fits your volume. At 30,000 solves, Anti-Captcha's published rate comes to $60 and SolveGate's 30k pack is $12, or 80% less. At 100,000 it is $200 against $25 for the 100k pack, 87.5% less. At 1,000,000 it is $2,000 against $150 for the 1M pack, 92.5% less. Anti-Captcha's rates table mentions automatic discounts based on daily volume without publishing a schedule, so their effective rate may be below list. Confirm both against current pricing pages before budgeting.

You buy a prepaid pack of credits and one credit is deducted per successful solve. There are no marginal volume brackets and no metered pay-as-you-go rate: a bigger pack carries a lower effective rate, from $0.40 per 1,000 on the 30k pack at $12 to $0.075 per 1,000 on the 20M pack at $1,500. Credits do not expire, failed solves are never billed, retrieving a finished solve is free, and the first 1,000 solves are free.

Not documented. None of the pages we checked — the rates table, the API index, createTask or getTaskResult — state what happens to billing when a task produces no solution. getTaskResult does return a per-task cost field in USD, so your own spending data will answer it. SolveGate does not bill failed solves.

No. It solves Turnstile and Turnstile WAF challenge pages only. Anti-Captcha's rates table lists reCAPTCHA v2, v3 and Enterprise, GeeTest, Arkose Labs, Amazon WAF, Friendly Captcha, Prosopo, Altcha, image-to-text and object-coordinate tasks. If you need any of those, you need Anti-Captcha or a comparable general-purpose service.

Yes, and it is often the sensible answer. Route Turnstile and Turnstile WAF traffic to SolveGate for the lower per-solve cost, and leave reCAPTCHA, GeeTest, image tasks and the rest on Anti-Captcha. Both are plain JSON HTTP APIs, so the routing logic is a few lines in your worker. Size the SolveGate pack to the Turnstile share of your traffic, since credits are bought up front.

Related

More in Alternatives

Automating a gate you own or are authorised to test?

// SolveGate clears Cloudflare Turnstile and WAF challenges through one REST call · first 1,000 solves free