Getting Started

How to Get the Most from CaptchaAI's Free Trial

CaptchaAI offers a 1-day trial so you can verify the service fits your use case before subscribing. One day is enough time to test everything that matters — if you know what to check.

This guide walks through the exact tests to run during your trial to make an informed decision.


Getting trial access

  1. Visit ticket.captchaai.com and submit a trial request
  2. CaptchaAI support activates your account with trial access
  3. Log in to captchaai.com and retrieve your API key
  4. Your trial runs for 24 hours from activation

The API key you receive during the trial is the same key you keep if you subscribe. Your integration code continues working without modification.


Trial checklist

Run through these in order, from fastest to most time-consuming.

1. Verify API connectivity (5 minutes)

import requests

API_KEY = "YOUR_API_KEY"  # Replace with your trial key

# Check balance and confirm API auth works
resp = requests.get("https://ocr.captchaai.com/res.php", params={
    "key": API_KEY,
    "action": "getbalance",
    "json": 1,
})
result = resp.json()
print(f"API status: {result}")
# Expected: {"status": 1, "request": "1.00000"} or similar

If this returns an error, check your API key. The endpoint must be ocr.captchaai.com, not captchaai.com.


2. Solve your primary CAPTCHA type (15 minutes)

Test with the CAPTCHA type your production system encounters. The code below handles reCAPTCHA v2; swap the method for other types.

import requests
import time

API_KEY = "YOUR_API_KEY"

def solve_and_time(method_params):
    """Submit a task and measure end-to-end solve time."""
    start = time.time()

    # Submit
    resp = requests.post("https://ocr.captchaai.com/in.php", data={
        "key": API_KEY,
        "json": 1,
        **method_params,
    })
    result = resp.json()
    if result["status"] != 1:
        return None, f"Submit error: {result['request']}"

    task_id = result["request"]
    submit_time = time.time() - start

    # Poll
    for attempt in range(30):
        time.sleep(5)
        res = requests.get("https://ocr.captchaai.com/res.php", params={
            "key": API_KEY,
            "action": "get",
            "id": task_id,
            "json": 1,
        }).json()
        if res["status"] == 1:
            total_time = time.time() - start
            return res["request"], f"Solved in {total_time:.1f}s (submit: {submit_time:.2f}s)"
        if res["request"] != "CAPCHA_NOT_READY":
            return None, f"Error: {res['request']}"
    return None, "Timeout"

# Test reCAPTCHA v2
token, stats = solve_and_time({
    "method": "userrecaptcha",
    "googlekey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
    "pageurl": "https://www.google.com/recaptcha/api2/demo",
})
print(f"reCAPTCHA v2: {stats}")
if token:
    print(f"Token: {token[:40]}...")

# Test Cloudflare Turnstile
token, stats = solve_and_time({
    "method": "turnstile",
    "sitekey": "0x4AAAAAAABUYP0XeMJF0xoy",
    "pageurl": "https://peet.ws/turnstile-test/managed.html",
})
print(f"Cloudflare Turnstile: {stats}")

3. Test the CAPTCHA types you'll use in production (30 minutes)

Type Method parameter What to verify
reCAPTCHA v2 method=userrecaptcha Token length, solve speed
reCAPTCHA v3 method=userrecaptcha + version=v3 Score value ≥ 0.7
Cloudflare Turnstile method=turnstile Token format, 100% success
Cloudflare Challenge method=cf_clearance_cookies Cookie returned
Image/OCR method=base64 Correct text returned
BLS CAPTCHA method=bls Solution accuracy

4. Measure real solve times (1 hour)

Run 10+ solves for each CAPTCHA type you care about. Record:

  • Fastest solve
  • Slowest solve
  • Average

Compare against CaptchaAI's published benchmarks (reCAPTCHA v2 < 60s, Turnstile < 10s, image < 0.5s). In practice, most solves land well within these maximums.

import statistics

results = []
for i in range(10):
    token, stats = solve_and_time({
        "method": "userrecaptcha",
        "googlekey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
        "pageurl": "https://www.google.com/recaptcha/api2/demo",
    })
    if token:
        # Extract time from stats string
        t = float(stats.split("in ")[1].split("s")[0])
        results.append(t)
        print(f"Solve {i+1}: {t:.1f}s")

if results:
    print(f"\nAvg: {statistics.mean(results):.1f}s")
    print(f"Min: {min(results):.1f}s")
    print(f"Max: {max(results):.1f}s")

5. Test error handling and retry logic (30 minutes)

Intentionally trigger errors to confirm your code handles them:

# Test invalid API key handling
resp = requests.post("https://ocr.captchaai.com/in.php", data={
    "key": "INVALID_KEY",
    "method": "userrecaptcha",
    "googlekey": "dummy",
    "pageurl": "https://example.com",
    "json": 1,
})
print(f"Invalid key response: {resp.json()}")
# Expected: {"status": 0, "request": "ERROR_WRONG_USER_KEY"}

6. Estimate your thread requirements (30 minutes)

During the trial, observe how many solves you run in parallel at peak. This tells you your required thread count:

import threading

concurrent_peak = threading.local()
lock = threading.Lock()
max_concurrent = [0]
current = [0]

# Wrap your solve function to track concurrency
def tracked_solve(*args, **kwargs):
    with lock:
        current[0] += 1
        if current[0] > max_concurrent[0]:
            max_concurrent[0] = current[0]
    try:
        return solve_and_time(*args, **kwargs)
    finally:
        with lock:
            current[0] -= 1

# After your trial tests:
print(f"Peak concurrent solves observed: {max_concurrent[0]}")
print(f"Recommended minimum threads: {int(max_concurrent[0] * 1.25) + 1}")

What to decide before the trial ends

By the end of your trial you should know:

  1. Average solve time for your CAPTCHA type → Confirms the service meets speed requirements
  2. Peak concurrency observed → Tells you which plan to buy
  3. Error rate → Should be < 0.5% for well-formed requests
  4. API response format → Your code is ready for production

With these four data points, picking a plan is straightforward using the thread count calculator.


FAQ

Can I extend the trial if I need more time? Contact CaptchaAI support and explain your situation. Trial extensions are handled case by case.

Does the trial have thread limits? Trial access typically includes a limited thread count sufficient for evaluation. For high-concurrency testing, contact support.

Is my trial API key the same as my production key? Yes. If you subscribe after the trial, the same key continues working without reconfiguration.

What if the solve quality isn't what I expected? Try the solve again — CAPTCHAs vary in difficulty. If you observe consistently low success rates, share sample CAPTCHAs with support for review.


Request your trial

The 1-day trial is the fastest way to validate CaptchaAI before committing. Request access at ticket.captchaai.com and run through this checklist to make an informed decision.

Discussions (0)

No comments yet.

Related Posts

Tutorials Discord Webhook Alerts for CAPTCHA Pipeline Status
Send CAPTCHA pipeline alerts to Discord — webhook integration for balance warnings, error spikes, queue status, and daily summary reports with Captcha AI.

Send CAPTCHA pipeline alerts to Discord — webhook integration for balance warnings, error spikes, queue status...

Automation Python All CAPTCHA Types
Apr 09, 2026
DevOps & Scaling Ansible Playbooks for CaptchaAI Worker Deployment
Deploy and manage Captcha AI workers with Ansible — playbooks for provisioning, configuration, rolling updates, and health checks across your server fleet.

Deploy and manage Captcha AI workers with Ansible — playbooks for provisioning, configuration, rolling updates...

Automation Python All CAPTCHA Types
Apr 07, 2026
DevOps & Scaling Google Cloud Functions + CaptchaAI Integration
Deploy Captcha AI on Google Cloud Functions.

Deploy Captcha AI on Google Cloud Functions. HTTP-triggered solving, Secret Manager integration, Pub/Sub batch...

Automation Python All CAPTCHA Types
Jan 18, 2026
DevOps & Scaling Blue-Green Deployment for CAPTCHA Solving Infrastructure
Implement blue-green deployments for CAPTCHA solving infrastructure — zero-downtime upgrades, traffic switching, and rollback strategies with Captcha AI.

Implement blue-green deployments for CAPTCHA solving infrastructure — zero-downtime upgrades, traffic switchin...

Automation Python All CAPTCHA Types
Apr 07, 2026
API Tutorials CaptchaAI Pingback and Task Notification Patterns
Implement advanced pingback (callback) patterns for Captcha AI.

Implement advanced pingback (callback) patterns for Captcha AI. Learn fire-and-forget, multi-task fan-out, web...

Automation Python All CAPTCHA Types
Mar 16, 2026
Tutorials Python ThreadPoolExecutor for CAPTCHA Solving Parallelism
Use Python's Thread Pool Executor for concurrent CAPTCHA solving — run multiple Captcha AI requests in parallel without asyncio complexity.

Use Python's Thread Pool Executor for concurrent CAPTCHA solving — run multiple Captcha AI requests in paralle...

Automation Python All CAPTCHA Types
Jan 15, 2026
Explainers Building Responsible Automation with CaptchaAI
Build responsible automation systems with Captcha AI.

Build responsible automation systems with Captcha AI. Guidelines for sustainable workflows, resource managemen...

Automation Python All CAPTCHA Types
Apr 09, 2026
API Tutorials Semaphore Patterns for CAPTCHA Concurrency Control
Use semaphores to control concurrent CAPTCHA API calls — prevent rate limiting and manage resource usage in Python and Node.js.

Use semaphores to control concurrent CAPTCHA API calls — prevent rate limiting and manage resource usage in Py...

Automation Python All CAPTCHA Types
Jan 26, 2026
DevOps & Scaling Disaster Recovery Planning for CAPTCHA Solving Pipelines
Build a disaster recovery plan for CAPTCHA solving pipelines — RPO/RTO targets, backup strategies, failover automation, and recovery runbooks with Captcha AI.

Build a disaster recovery plan for CAPTCHA solving pipelines — RPO/RTO targets, backup strategies, failover au...

Automation Python All CAPTCHA Types
Jan 20, 2026
Getting Started CaptchaAI's Unlimited Solves Model Explained
Captcha AI charges by concurrent threads, not per solve.

Captcha AI charges by concurrent threads, not per solve. This guide explains why that model is cheaper at volu...

All CAPTCHA Types
Apr 18, 2026
Getting Started CaptchaAI Basic Plan: Is $15/Month Enough for Your Project?
The Captcha AI Basic plan gives you 5 concurrent threads and unlimited solves for $15/month.

The Captcha AI Basic plan gives you 5 concurrent threads and unlimited solves for $15/month. This guide explai...

All CAPTCHA Types
Apr 18, 2026