Não existe um "melhor serviço de CAPTCHA" universal — existe o mais adequado ao seu desafio, volume e ambiente. Tabelas públicas, inclusive esta, não substituem uma medição feita no seu próprio staging, com o seu tráfego e o seu backend de validação.
Este guia mostra como montar essa medição. Vale só para ambiente próprio, QA ou pré-produção com autorização explícita: os exemplos usam páginas internas, dados fictícios e endpoints controlados pela sua equipe — nada aqui serve para automatizar serviços de terceiros ou filas públicas fora do seu ambiente.
Por que uma tabela pública de comparação não basta
O tempo de resolução de um CAPTCHA muda por tipo de desafio, região do worker, carga do provedor, integração e até horário do dia. Um número publicado em blog não garante o que vai acontecer na sua integração. Trate qualquer tabela pública — inclusive as deste artigo — como ponto de partida, nunca como decisão final. Para orçamento, capacidade e alertas, use sempre medições internas.
Monte sua própria metodologia de teste
Separe os testes por tipo de CAPTCHA: misturar reCAPTCHA v2 com Turnstile na mesma amostra distorce a mediana. Use sempre a mesma página de staging e registre hora de envio, hora de conclusão, código de erro e o resultado retornado pelo backend. Depois de reunir amostras suficientes para reduzir ruído, calcule mediana, P90 e P99 em vez de só a média — a média esconde os piores casos, que são justamente os que geram timeout em produção.
Além do tempo de resolução, vale registrar a experiência de integração: qualidade da documentação, existência de SDK oficial para a sua linguagem, formato de erro (texto simples ou JSON) e o que o painel de controle mostra sobre saldo e histórico. Esses fatores pesam tanto quanto a velocidade quando o time precisa manter a integração no longo prazo.
Modelo de tabela para registrar os resultados
| Provedor | Tipo de CAPTCHA | Amostras | Mediana | P90 | P99 | Observações |
|---|---|---|---|---|---|---|
| CaptchaAI | reCAPTCHA v2 | 100 | preencher | preencher | preencher | amostra interna |
| Provedor B | Turnstile | 100 | preencher | preencher | preencher | valor indicativo |
| Provedor C | GeeTest | 100 | preencher | preencher | preencher | pode variar por região |
Quais tipos de CAPTCHA incluir na comparação
Inclua só os tipos que sua aplicação usa — reCAPTCHA v2/v3, Turnstile ou GeeTest v3 — e documente sitekey de QA, região do worker e endpoint de validação. Ao comparar custo, lembre que a CaptchaAI cobra por thread simultânea, não por resolução: o plano BASIC (US$ 15/mês, 5 threads) já inclui resoluções ilimitadas por thread. Misturar modelos de cobrança diferentes distorce qualquer conclusão sobre "o mais barato".
Se seus workers rodam em uma região como a AWS sa-east-1 (São Paulo), meça o RTT até o endpoint separadamente do tempo de resolução, para não atribuir latência de rede ao provedor. Se a amostra carregar dado de usuário de teste, trate-o como dado pessoal para fins de LGPD: use só dados fictícios.
Planejamento de capacidade com os seus números
Use P90 e P99, não a mediana, para dimensionar filas, timeouts e retentativas — são eles que definem o pior caso que o sistema precisa absorver. Se o tráfego varia durante campanhas, rode uma amostra por janela de tráfego.
Script de exemplo para medir tempos em staging
O script abaixo coleta tempos no staging, prontos para a tabela acima.
import os, time, requests
API_KEY = os.environ['CAPTCHAAI_API_KEY']
SITEKEY = os.environ['QA_CAPTCHA_SITEKEY']
def criar_tarefa_captcha(pageurl):
resposta = requests.post('https://ocr.captchaai.com/in.php', data={
'key': API_KEY,
'method': 'userrecaptcha',
'googlekey': SITEKEY,
'pageurl': pageurl,
'json': 1,
}).json()
return resposta['request']
def aguardar_resultado(task_id):
while True:
time.sleep(5)
resposta = requests.get('https://ocr.captchaai.com/res.php', params={
'key': API_KEY,
'action': 'get',
'id': task_id,
'json': 1,
}).json()
if resposta.get('status') == 1:
return resposta['request']
task_id = criar_tarefa_captcha('https://staging.example.com/captcha-demo')
token_qa = aguardar_resultado(task_id)
print({'token_recebido': bool(token_qa)})
Solução de problemas na medição
Se a variância crescer, confirme três coisas antes de desconfiar do provedor: a página de staging está estável, o endpoint responde de forma consistente, e os tipos de CAPTCHA não foram misturados no mesmo lote — o erro mais comum e mais fácil de passar despercebido.
Perguntas frequentes
Preciso confiar em benchmarks públicos ou medir eu mesmo?
Use benchmarks públicos só como contexto inicial. Para decisão técnica — dimensionamento, orçamento, alertas — meça no seu ambiente, porque região, integração e horário mudam o resultado.
A CaptchaAI cobra por CAPTCHA resolvido ou por thread ativa?
Por thread. Cada plano — do BASIC (US$ 15/mês, 5 threads) ao ENTERPRISE (US$ 300/mês, 200 threads) — inclui resoluções ilimitadas por thread, ao contrário de provedores que cobram por solução individual.
hCaptcha e FunCaptcha: a CaptchaAI cobre esses dois tipos?
Não — hCaptcha e FunCaptcha (Arkose Labs) não são suportados hoje, e isso deve entrar na sua tabela de cobertura antes de comparar preço. A CaptchaAI resolve reCAPTCHA v2/v3, Cloudflare Turnstile e Challenge, GeeTest v3, imagem/OCR, grade de imagens e BLS; CaptchaFox, Friendly Captcha e Lemin estão disponíveis em beta.
Posso publicar os números que eu medir?
Pode, desde que publique metodologia, tamanho da amostra e limitações junto dos números.
Critérios antes de publicar os resultados
Confirme que a documentação aponta para ambiente próprio, que os exemplos usam dados fictícios e que nenhum endpoint de produção é acionado pelo teste. Quando o resultado variar entre execuções, trate os números como amostra interna e compare só cenários equivalentes.
Guias relacionados seguros
- Início rápido da CaptchaAI
- Testes QA autorizados de CAPTCHA
- Testes de endpoint CAPTCHA em formulários próprios
- Depuração quando o navegador falha e a API funciona
- Resolver reCAPTCHA v2 com API
- Resolver Cloudflare Turnstile com API
- Resolver GeeTest v3 com API
Valide a integração CAPTCHA do seu ambiente próprio com a CaptchaAI.