reCAPTCHA v3 doesn't show a challenge — it silently assigns a score from 0.0 (bot) to 1.0 (human). Sites set thresholds (typically 0.3-0.7) and reject requests with low scores. Your CAPTCHA solver must generate tokens with scores above your target site's threshold.
Not all solvers deliver equal scores.
How reCAPTCHA v3 Scoring Works
Browser visits page ──▶ reCAPTCHA JS runs ──▶ Generates token
│
Score assigned:
0.1 = likely bot
0.3 = suspicious
0.5 = neutral
0.7 = likely human
0.9 = very human
│
Server verifies token ◀──────────────────────────────┘
If score < threshold ──▶ Block / challenge
If score >= threshold ──▶ Allow
Common site thresholds:
- Login pages: 0.5
- Registration: 0.5-0.7
- Checkout: 0.3-0.5
- Form submission: 0.5
- API access: 0.7
Score Comparison by Provider
Average Scores
| Provider | Avg Score | Score Range | Score Control |
|---|---|---|---|
| CaptchaAI | 0.7-0.9 | 0.5-1.0 | ✅ min_score parameter |
| CapSolver | 0.5-0.7 | 0.3-0.9 | Partial |
| 2Captcha | 0.1-0.3 | 0.1-0.5 | ❌ No control |
| Anti-Captcha | 0.3-0.5 | 0.1-0.7 | Limited |
Score Distribution
CaptchaAI score distribution (1000 solves):
0.1-0.2 |
0.3-0.4 | ██
0.5-0.6 | ████████
0.7-0.8 | ████████████████████████████████████
0.9-1.0 | ██████████████████████████████
2Captcha score distribution (1000 solves):
0.1-0.2 | ████████████████████████████████████
0.3-0.4 | ████████████████████████
0.5-0.6 | ████████
0.7-0.8 | ██
0.9-1.0 |
Effective Pass Rates by Threshold
What percentage of tokens actually pass the site's threshold?
| Site Threshold | CaptchaAI | CapSolver | 2Captcha | Anti-Captcha |
|---|---|---|---|---|
| 0.3 | 99% | 90% | 50% | 75% |
| 0.5 | 97% | 75% | 20% | 50% |
| 0.7 | 92% | 45% | 5% | 20% |
| 0.9 | 70% | 15% | <1% | 5% |
At a 0.5 threshold, 2Captcha wastes 80% of your solve credits. You pay for tokens that get rejected.
Cost Impact of Low Scores
Scenario: 10,000 pages, site threshold 0.5
CaptchaAI (97% pass rate):
Tokens needed: 10,000 / 0.97 = 10,310
Cost at $0.003/token: $30.93
Wasted tokens: 310
2Captcha (20% pass rate):
Tokens needed: 10,000 / 0.20 = 50,000
Cost at $0.003/token: $150.00
Wasted tokens: 40,000
CaptchaAI saves ~$120 per 10,000 pages by delivering usable scores.
Using CaptchaAI's Score Control
import requests
import time
API_KEY = "YOUR_API_KEY"
def solve_v3(sitekey, pageurl, action="verify", min_score=0.7):
"""Solve reCAPTCHA v3 with score control."""
resp = requests.post("https://ocr.captchaai.com/in.php", data={
"key": API_KEY,
"method": "userrecaptcha",
"version": "v3",
"googlekey": sitekey,
"pageurl": pageurl,
"action": action,
"min_score": str(min_score),
"json": 1,
})
result = resp.json()
task_id = result["request"]
for _ in range(40):
time.sleep(5)
poll = requests.get("https://ocr.captchaai.com/res.php", params={
"key": API_KEY,
"action": "get",
"id": task_id,
"json": 1,
})
data = poll.json()
if data["request"] != "CAPCHA_NOT_READY":
return data["request"]
raise TimeoutError("v3 solve timeout")
# Request a high score
token = solve_v3(
sitekey="SITE_KEY",
pageurl="https://example.com/login",
action="login",
min_score=0.7,
)
print(f"Token: {token[:50]}...")
Action Parameter
The action must match what the site expects. Common actions:
| Page Type | Common Action | Typical Threshold |
|---|---|---|
| Login | login |
0.5 |
| Registration | register, signup |
0.5-0.7 |
| Contact form | submit, contact |
0.5 |
| Checkout | checkout, purchase |
0.3-0.5 |
| Search | search |
0.3 |
| Homepage | homepage |
0.3 |
Using the wrong action can result in lower scores or token rejection.
Why Human-Based Solvers Fail at v3
reCAPTCHA v3 is invisible — there's no puzzle to solve. The score comes from:
- Browser fingerprint
- Mouse/keyboard behavior patterns
- Browsing history with Google
- Cookie state
- IP reputation
Human workers sitting at desks clicking through CAPTCHA queues don't generate the behavioral signals that produce high scores. They also don't have the browsing history or cookie state that real users accumulate.
AI-based solvers like CaptchaAI simulate the complete browser environment required for high scores.
Score Validation
Verify your tokens are actually getting high scores:
def verify_v3_score(token, secret_key, expected_action=None):
"""Check the actual score of a v3 token (server-side)."""
resp = requests.post(
"https://www.google.com/recaptcha/api/siteverify",
data={
"secret": secret_key,
"response": token,
},
)
result = resp.json()
score = result.get("score", 0)
action = result.get("action", "")
success = result.get("success", False)
print(f"Score: {score}")
print(f"Action: {action}")
print(f"Success: {success}")
if expected_action and action != expected_action:
print(f"WARNING: Action mismatch. Expected '{expected_action}', got '{action}'")
return result
Note: This verification requires the site's secret key (server-side). Use this for sites you own or during development.
Troubleshooting Low Scores
| Issue | Cause | Fix |
|---|---|---|
| Scores below 0.3 | Using human-based solver | Switch to CaptchaAI |
| Scores around 0.5 | Missing min_score parameter |
Add min_score=0.7 |
| Token rejected despite good score | Wrong action parameter |
Match action to site's expected action |
| Inconsistent scores | Provider uses variable methods | Use CaptchaAI for consistent AI-based scores |
| Score 0.1 always | Solver doesn't support v3 properly | Verify provider supports v3 with score control |
FAQ
What reCAPTCHA v3 score do I need?
It depends on the site. Most sites use thresholds between 0.3 and 0.7. Common default is 0.5. Inspect the site's implementation or test progressively.
Can I guarantee a specific score?
No solver can guarantee an exact score — Google determines it. CaptchaAI's min_score parameter ensures the solver targets that score, and 90%+ of tokens meet or exceed the specified minimum.
Why do human-based solvers give low v3 scores?
reCAPTCHA v3 scores are based on browser environment, browsing patterns, and behavioral signals — not challenge completion. Human workers in CAPTCHA farms lack the browsing history and environmental signals needed for high scores.
Does the action parameter affect the score?
Yes. Using an action that doesn't match what the site expects can lower your score or cause token rejection. Always inspect the site's v3 implementation to find the correct action string.
Related Guides
Get the highest v3 scores — try CaptchaAI with min_score control.
Discussions (0)
Join the conversation
Sign in to share your opinion.
Sign InNo comments yet.