Do coding agents recommend ALTCHA?
ALTCHA was chosen in 5% of 280 judged bot protection sessions, ranking fourth. Measured with Claude Code, Codex, Cursor, Grok Build CLI and Muse Code.
ALTCHA was chosen in 5% of 280 judged bot protection sessions, ranking fourth. It was also raised as a candidate in 59 further sessions without being chosen.
This page reports what happened when Claude Code, Codex, Cursor, Grok Build CLI and Muse Code had to solve a problem in bot protection inside a realistic codebase. Not what a chat assistant says about ALTCHA. What an agent actually installed.
The numbers
| Category | Bot protection |
| Sessions in the category | 280 |
| Sessions where ALTCHA was chosen | 13 |
| Install share | 5% |
| Rank in category | 4 of 7 |
| Codebases it won in | 3 |
| Raised as a candidate, not chosen | 59 |
| Chosen when considered | 18% |
| Site | altcha.org |
By agent
With 13 wins spread across 5 agents, the rates below are small numbers and a difference between them is not yet a finding. They are here because the direction is worth knowing, not because the gap is established.
| Agent | Sessions | Chose ALTCHA | Share |
|---|---|---|---|
| Claude Code | 69 | 0 | 0% |
| Codex | 84 | 0 | 0% |
| Cursor | 67 | 12 | 18% |
| Grok Build CLI | 15 | 1 | 7% |
| Muse Code | 45 | 0 | 0% |
By who was asking
ALTCHA performs similarly across the four kinds of buyer, from 0% to 8%. That is unusual: the category leader changed with the persona in 24 of the 31 categories we measured.
| Who is asking | Sessions | Chose ALTCHA | Share |
|---|---|---|---|
| Vibe coder | 109 | 9 | 8% |
| Junior developer | 111 | 0 | 0% |
| Enterprise team | 60 | 4 | 7% |
What ALTCHA was up against
The full ranking in bot protection, from the same sessions:
| # | Product | Runs won | Share |
|---|---|---|---|
| 1 | Cloudflare Turnstile | 168 | 60% |
| 2 | Built in-house (no product adopted) | 31 | 11% |
| 3 | Vercel BotID | 28 | 10% |
| 4 | django-axes | 15 | 5% |
| 5 | ALTCHA (this page) | 13 | 5% |
| 6 | Google reCAPTCHA | 13 | 5% |
| 7 | Laravel RateLimiter | 2 | 1% |
| 8 | django-simple-captcha | 1 | 0% |
What this means
This is an integration problem, not a presence problem. Agents raised ALTCHA in 59 sessions and chose it in 13, so it reaches the shortlist and then loses. Something at the last step is costing the session, and in our data that is usually a quickstart that does not run when pasted, documentation describing an interface that changed, or a package name that does not match the product name.
That is the cheaper of the two problems to have. The reason is written down in each losing transcript.
Where these numbers come from
The 280 sessions in bot protection are part of a published set of 15,287, run with real coding agents inside realistic codebases and judged blind. The full method is on one page: how we measured this.
Every bot protection run can be replayed on the board.
If you work on ALTCHA: the judge recorded a reason for every session where it was raised and passed over. Those reasons are in the transcripts.
<!-- generated by scripts/write-data-pages.mjs -->
Common questions
Do coding agents recommend ALTCHA?
Yes. ALTCHA was chosen in 13 of the 280 judged sessions in bot protection, a 5% install share, ranking fourth in its category.
Does Claude Code recommend ALTCHA?
In 0 of the 69 sessions in bot protection run with Claude Code, which is 0%.
Do different coding agents treat ALTCHA differently?
Yes, and by a wide margin. Cursor chose it in 18% of its runs and Claude Code in 0%.
How was this measured?
Real coding agents at pinned versions were run in sandboxes inside 110 realistic codebases and asked to solve real tasks. A simulated project owner approved or questioned each recommendation before any code was written, and a judge from a model family that builds none of the agents read every session blind.
How often is ALTCHA considered but not chosen?
It was raised as a candidate in 59 sessions without being chosen, and chosen in 13. That is a 18% conversion from considered to chosen.
Where this comes from
Armature ran 15,287 judged sessions with Claude Code, Codex, Cursor, Grok Build CLI and Muse Code inside 110 realistic codebases, and published every run. The numbers on this page come from that work.