CaptchaNo
✦✦
[ 200 OK ]
[ SOLVE ]
[ .JSON ]
[ TOKEN ]

Free captcha solver that keeps your automation running

Start free with $0.30 of solving credit — about 50 reCAPTCHA v2 solves — then pay only per successful solve. One API for reCAPTCHA, Turnstile and DataDome. From $0.003 per solve.

token 03AGdBq25S…
$0.00598per solve
LogoNavigation
[ .JSON ]
1{2  "status": "ready",3  "type": "recaptcha_v2",4  "solution": {5    "token": "03AGdBq25S..."6  },7  "cost": "0.00598"8}
Solve Completed
Trusted by thousands
of companies
and developers
Billed on successful solves only
Pay as you go from $10
Real solve times in your dashboard
Proxy pass-through supported
Billed on successful solves only
Pay as you go from $10
Real solve times in your dashboard
Proxy pass-through supported
Billed on successful solves only
Pay as you go from $10
Real solve times in your dashboard
Proxy pass-through supported
//Developer First\\
[ 01 / 06 ] · MAIN FEATURES

Start solving today

The solving layer that keeps your scrapers, bots and agents from stalling at a challenge.

1import requests23CAPTCHANO_KEY = "cn-YOUR_API_KEY"45def solve(task: dict) -> dict:6    """Block until solved; returns e.g. {"token": "...", "userAgent": "..."}."""7    r = requests.post(8        "https://api.captchano.com/v1/solve",9        params={"wait": 60},10        json=task,11        headers={"Authorization": f"Bearer {CAPTCHANO_KEY}"},12        timeout=75,13    )14    data = r.json()15    if data.get("status") != "ready":16        raise RuntimeError(data.get("error") or data)17    return data["solution"]1819solution = solve({20    "type": "recaptcha_v2",21    "sitekey": "6LcABC...",22    "url": "https://example.com/login",23})24print(solution["token"])
[ .JSON ]
1{2  "status": "ready",3  "type": "recaptcha_v2",4  "solution": {5    "token": "03AGdBq25S..."6  },7  "cost": "0.00598",8  "solveTime": 4.8,9  "billed": true10}
//Agent Ready\\
[ 02 / 07 ] · POWER YOUR AGENT

Easily connect with your AI agents

Expose solving as a tool, and an agent clears challenges itself instead of stalling.

One tool. Wrap a single HTTP call and any agent framework can use it.

@tool
def solve_captcha(kind: str, sitekey: str, url: str) -> str:
    """Call when a captcha blocks the task."""
    return solve({"type": kind, "sitekey": sitekey,
                  "url": url})["token"]
Guides for MCP, LangChain, Browser Use and more →

A typed result. Something the model can branch on, with the cost of every call.

Response
{
  "status": "ready",
  "solution": { "token": "03AGdBq25S…" },
  "cost": "0.00598"
}
See the full response shape →
//Built for Production\\
[ 02 / 06 ] · CORE

Predictable, session-aware, billed on success

The parts of captcha solving that decide whether your automation actually keeps running.

Billed on success only.

A solve is charged only when it produces a usable token or cookie. Unsolvable challenges, bad sitekeys and upstream errors cost nothing.

"status": "failed",
"error": { "code": "unsolvable" },
"cost": null
Session aware.

Pass your proxy and user agent; we return the user agent the token is bound to so you can replay it exactly. DataDome without a proxy is refused rather than returning a cookie that cannot work.

"proxy": "http://user:pass@host:port",
"solution": {
  "token": "03AGdBq25S…",
  "userAgent": "Mozilla/5.0 …"
}
One call, or poll.

Add ?wait=60 and the request returns the finished solve. Or submit, then poll GET /v1/task/{id}. A token you have paid for stays retrievable for ten minutes.

POST /v1/solve?wait=60
→ 200
{ "status": "ready", … }
Measured, not marketed.

Every solve records its real duration and outcome, and your dashboard shows your own success rate and spend per challenge type. We publish speed figures only once they are measured.

reCAPTCHA v2   solved 2   failed 0
success rate   100.0%
spent          $0.01196
//Zero configuration\\
[ 03 / 06 ] · FEATURES

We handle the hard stuff

JavaScript rendering, smart wait, media parsing, search, actions, and more.

Every challenge type

Image captchas too. CaptchaNo reads distorted-text image captchas as well as token widgets, through the same endpoint.

GRID
Solving...
Knows the moment

Session aware. Tokens are minted behind your own proxy and user agent, so the session that spends them matches the one that earned them.

https://example.com/login
Solving challenge
Billed on success

You pay for solutions, not attempts. Failed or rejected challenges are never billed, so your effective cost is your success rate.

USER
CAPTCHANO
SOLVER
Anti-bot coverage

Beyond captchas. DataDome grades the whole session, not a single widget. We return the cookie, not just a token.

One API, every type

Full coverage. One request shape across every challenge we support. Change the type field, not your integration.

https://example.com
reCAPTCHA
v3 score
Enterprise
Invisible
Turnstile
DataDome
Image
Text
Use it responsibly

Built for automation you are authorised to run — your own sites, systems you may test, and lawful data collection.

example.com/login
:: Requesting page ...
Read our acceptable use policy →
//Use cases\\
[ 04 / 06 ] · USE CASES

Built for everything that hits a wall

Wherever automation meets a challenge, CaptchaNo keeps the run going.

View all use cases
Challenge cleared, crawl resumed.
POST /v1/solve
{
  "type": "recaptcha_v2",
  "sitekey": "6Le…",
  "url": "https://shop.example/p/42",
  "proxy": "http://user:pass@1.2.3.4:8000"
}

Ready to build?

Start with a free 3-day trial, then pay per successful solve as your traffic grows. No card needed for the trial.

See our plans
Are you an AI agent? See setup options →
//FAQ\\
[ 06 / 06 ] · FAQ

Frequently asked questions

Everything you need to know about CaptchaNo.