Operating System · Free

Drop your thumbnail into a synthetic YouTube front page and make it compete against 5,840 real competitor thumbnails before you publish it.

Free usually means thin. This is 6,002 files and 1,011 MB, including 5,840 real competitor thumbnails that carry both an image on disk and a real title — the pair that makes one usable as a tagged competitor instead of a pixel blob at the pool median. Your thumbnail goes into a simulated feed beside 11 of them per impression, and 100 persona-agents either click it or scroll past. It runs on your machine on one dependency, with no API key, no account and no quota — and it is not an oracle: the agents model attention, not an audience, and they never watch your video.

0
real competitor thumbnails carrying BOTH an image on disk and a real title — the pair that makes one usable as tagged competition
$0
price. Instant download, one dependency (sharp), no API key, no account, no quota
0
persona-agents scan every feed, each with its own preference vector, position and attention bias, and Gumbel noise
0
real competitor decoys sit beside your thumbnail in every single impression
0 MB
the shipped zip: 6,002 files, counted from the zip's own central directory
0
bin tools: youtube-arena, arena-calibrate, build-arsenal-decoys, arena-autotag, the thumbnail factory, trend intel
How it works
YouTube CTR Arena · console
A simulated front pageactive
100 persona-agentsactive
Pixels measuredactive
Why not clicked'active
5,840
real competitor thumbnails carrying BOTH an image on disk and a real title — the pair that makes one usable as tagged competition
0
real competitor thumbnails carrying BOTH an image on disk and a real title — the pair that makes one usable as tagged competition
1
Drop in your thumbnail
2
It faces 11 real competitors per impression
3
100 persona-agents scan and click
4
Read CTR, win-rate & mean rank
5
Fix the attribute the ablation blames

How it actually works

Exactly what it does — and when.

1For a thumbnail you are about to commit to → it builds a synthetic front page where your candidate sits among eleven real high-performing competitor thumbnails at shuffled positions, runs hundreds of impressions, and returns click-share, front-page CTR, win-rate versus real competitors and mean rank.
2For the question "why did nobody click" → it ablates each attribute to the pool median, re-measures the whole run, and reports the delta as that attribute's marginal contribution, so the answer is computed from the simulation rather than asserted.
3For 100 modelled viewers → each is a sampled archetype with its own preference vector over the attributes, its own position and attention bias, and Gumbel noise, and each clicks the best visible tile only if it clears their personal threshold — so scrolling past without clicking is a real outcome and the CTR is not inflated.
4For raw pixels → it measures contrast, colour pop, brightness, focal dominance, face and emotion energy, warmth, and clutter as a penalty, straight off your image, before any tagging is applied.
5For semantic signals pixels cannot see → it tags text clarity, curiosity, money cue, correlation, brand recognisability and number hook across your candidates AND the decoys, because scoring pixels alone is a loudness meter rather than a CTR model.
6For weights you should not have to guess → it mines attribute multipliers from the shipped arsenal's real view-lift and applies them with --calibrated, so focal dominance and face energy carry the weight the data gives them.
7For a batch of AI-generated candidates → 16 factory and intel tools generate on-topic thumbnails, reference-matched builds, face equations, icon tiles and galleries, and grow the reference pool further free off the public image CDN, resumably.
8For every run and every file → it runs locally with one dependency and no API key, no account and no quota, and seeded runs are reproducible — 1.01 GB, 6,001 files, download and open it immediately.
In practice · Four candidates, one seed, and the one change that moved the number

A creator has four thumbnail variants for the same video and no way to choose. They drop all four into the arena against the shipped pool of real high-performing thumbnails, at 100 agents and 400 impressions with the seed fixed at 7. Two variants lose outright on win-rate; the remaining two finish within a point of each other, which the docs tell them to read as a tie rather than a winner. The attribution block says colour pop is the biggest negative on both, so they raise saturation on the hero element only and re-run at the same seed — one variant now clears the other by six points, and the report attributes the gain to exactly the attribute they changed. They calibrate against their own niche, confirm the ranking holds, and publish that one. Nothing was uploaded and nothing was metered.

Use it to…

Real ways people put YouTube CTR Arena to work.

Settle version A against version B before you publish

Runs are seeded, so two versions of the same thumbnail compare honestly — click-share, front-page CTR, win-rate vs the 11 decoys and mean rank, measured the same way both times. Publishing is the only thumbnail test most channels ever run, and it is paid for with the upload.

Decide what to change next instead of redesigning on a hunch

The attribution block names the attribute costing you the most click-share, because that attribute was ablated to the pool median and the run re-measured. Repair that one named thing and run it again rather than regenerating the whole plate and hoping.

Build a decoy pool that looks like your front page, not everyone's

build-arsenal-decoys builds the tagged pool and takes --niche and --minViews. Your thumbnail then competes against the kind of tile it will really appear next to, and win-rate vs decoys starts meaning something specific.

This product
Publishing it and hoping
When you learn
Before you publish — CTR, win-rate, mean rank
After you publish, and it costs the video
The verdict
Why it wasn't clicked, attribute by attribute
"Looks good to me"
Competition
5,840 real high-performers as the decoys
Your thumbnail, alone, on a white canvas
Cost
$0 — one dependency, no account, no quota
A/B tooling on a monthly plan, if any
The shift it creates
Without it
  • Duct-taped manual workflows
  • Nothing that compounds over time
  • Rebuilding it from zero each time
With YouTube CTR Arena
  • It refuses to give you a score out of ten
  • "Why it wasn't clicked" is computed, not narrated
  • No-click is a real outcome, so the CTR is not inflated

What's inside

🥊 A simulated front page, not a grader — your thumbnail competes against 11 real high-performing competitor thumbnails per impression, at shuffled positions, across hundreds of impressions. No-click is a real outcome, so the CTR numbers aren't inflated.
🧠 100 persona-agents — each with its own preference vector over the attributes, its own position/attention bias, and Gumbel noise so ties break like real choices. Every agent clicks the best visible tile only if it clears their personal threshold.
📊 Pixels measured, not guessed — contrast, colour pop, brightness, focal dominance, face/emotion energy, warmth, and clutter (scored as a penalty), read straight off your image.
🔍 'Why not clicked', by ablation — each attribute is knocked to the pool median and the run re-measured. The delta is that attribute's real marginal contribution, so the biggest negative is literally your next edit.
🖼️ 5,840 real high-performing thumbnails IN THE BOX — the competitor pool, with a scored and niche-tagged index across 10 niches. Every one carries both the image and its real title, which is what lets it be tagged rather than sit at the pool median. A simulator with no competition tells you your thumbnail is great; this one makes it compete.
🎯 Calibrated from real data — mine the attribute weights from the pool's actual view-lift instead of from taste, then run --calibrated. Your priorities come from evidence.
🏷️ Semantic tagging — text clarity, curiosity, money cue, correlation, brand recognisability and number hook, tagged on candidates AND decoys, because pixel scores alone are just a loudness meter.
🏭 The thumbnail factory + intel — 16 tools: on-topic generation, reference-matched builds, face equations, icon tiles, galleries, blind test sets, niche trend intel, and a free resumable arsenal builder to grow the pool yourself.
📚 The CTR psychology playbook + a mined law bank — one line per learned rule with the evidence that produced it, plus the adversarial arena design doc and the thumbnail mega-prompt.
🔁 Seeded and reproducible — fix --seed and a change in the numbers is a change in your thumbnail, not in the dice. Iterate honestly.
⚙️ One dependency (sharp), one command to install, and a check-deps that tells you exactly what's missing. Runs entirely on your machine — no API key, no account, no quota, nothing uploaded.
📖 Honest about its limits — the agents model attention, not an audience; they never watch the video and titles aren't modelled. The README says so plainly instead of overselling.

Who it's for

Creators publishing on a schedule who currently pick thumbnails by taste or team vote

Taste is not reproducible and a vote is a handful of people guessing. A seeded run against 5,840 real competitors is something you can re-run and get the same answer from, as many times as you like, for $0.

Thumbnail designers and freelancers who have to defend a choice to a client

"I like this one" loses arguments. Click-share and win-rate against real competitor decoys, plus the named attribute the ablation says is holding the plate back, is a defensible reason — and the client can re-run it.

Channel managers and small agencies running several channels

Seeded runs and per-niche decoy pools built with --niche and --minViews mean the same standard applies across every channel you handle, and the numbers are reproducible when someone asks how the call was made.

Questions, answered

Free · no emailYours to ownUse on every projectBuilt to ship results

Ready to put YouTube CTR Arena to work?

Free download · no account needed · yours forever

YouTube CTR Arena