Marketplace PreferencesDevelopers' copies

Taste Test

Can a model tell which of two components developers will copy into their project? The best, Claude Opus 5.5, agrees with developers 77% of the time, then Claude Sonnet 5.5 at 72%. A coin gets 50%

11
models
77%
best agreement with developers
50%
a coin, for scale
45 days
of searches and category pages

How often each model picks the component developers prefer

Share of pairs of 21st components, each asked in both orders. Guessing at random gets 50%

Updated 11/02/2026
  1. 1Claude Opus 5.577%
  2. 2Claude Sonnet 5.572%
  3. 3GPT-6 Astra72%
  4. 4GPT-6.1 Sol71%
  5. 5Claude Fable 5.171%
  6. 6Gemini 4 Argon69%
  7. 7Muse Spark 1.367%
  8. 8Kimi K3.1 Pro66%
  9. 9Qwen 3.8 Max63%
  10. 10MiMo v2.6 Pro62%
  11. 11Grok 4.762%

a coin, 50%. The weak control, Gemma 3 4B, lands right on it

What we found

01

Models agree with developers on clear cases

When both components are plain and developers strongly prefer one, nearly every model picks it too

02

They don't share developers' taste for the bold

Where developers go for gradients, glow or 3D, the models stay with the plain, safe option. A judge built on today's models would underrate the components developers actually want

03

Developers forgive flaws that models punish

Models point at bugs, cramped layouts and placeholders, yet developers sometimes pick that component anyway, likely because they will rework it in their own project

04

More context doesn't fix it

Live frames, video, source code and 40 solved examples barely moved the scores. The gap is in what the models prefer, not in what they see

05

Closing it needs developers' own choices

Prompting won't teach a model this taste. Training on what developers actually pick might, and 21st records such choices every day

The pairs

The pairs from the study, sorted by how the models did. The blue frame marks the component developers copied more

More models picked the other component than the developers' choice. A few examples from the group

Category “FAQ”

No model picked A: 8 of 11 picked B and 3 couldn't decide. Opus called B "the practical, readable pattern most developers drop into a real product".

Category “Pricing”

Pricing Section
APricing Section
Pricing
BPricingDevelopers' pick

No model picked B, 9 picked A, and Opus and Fable couldn't decide. Sonnet pointed at B's "visible '\\n' text bug in its subtitle, a cropped preview and cramped cards". Developers copied it more anyway.

Search “hero”

1 of 11 models picked A, 7 picked B and 3 couldn't decide. Opus, the only model that picked A, said it "stands out on the results page and feels premium".

Search “card”

Card
ACard
Card
BCardDevelopers' pick

1 of 11 models picked B, 7 picked A and 3 couldn't decide.

Category “3D Gallery”

2 of 11 models picked B, 5 picked A and 4 couldn't decide. Grok, which picked B, said developers in this category copy "the component whose preview is unmistakably a dramatic orbiting gallery".

Category “Features”

2 of 11 models picked B, 8 picked A and Fable couldn't decide. Opus, which picked B, noticed that A's grid shows only "'FEATURE DEMO HERE' placeholders that leave most of the real work to the developer".

Category “Data Visualization”

2 of 11 models picked B, 5 picked A and 4 couldn't decide. Grok, which picked B, said A's "duplicated secondary-axis labels look broken".

What we tried to close the gap

The same final prompt, with more for the models to look at. None of the three changes moves them beyond noise

ModelOne screenshot+ frames, video, description+ source codeScreenshot + 40 examples
Claude Opus 5.577%78%+178%+172%−5
Claude Sonnet 5.572%73%+171%−173%+1
GPT-6 Astra72%74%+272%±073%+1
GPT-6.1 Sol71%67%−471%±072%+1
Claude Fable 5.171%73%+270%−173%+2
Gemini 4 Argon69%72%+372%+370%+1
Muse Spark 1.367%74%+766%−166%−1
Kimi K3.1 Pro66%71%+569%+369%+3
Qwen 3.8 Max63%62%−166%+365%+2
MiMo v2.6 Pro62%63%+159%−360%−2
Grok 4.762%73%+1163%+168%+6
Gemma 3 4B50%50%±049%−1—

How we built the pairs

45 days of searches and category pages on 21st. A copy within 30 minutes of the page counts as a pick, corrected for the position on the page. Then only pairs where nothing but the components can explain the gap

  1. Candidate pairsSame page, one copied at least 3 times more after the position correction, the winner with 5+ copies100%
  2. Both 30+ days old, ages within 1.5×Across all pairs the newer component won 62%43%
  3. At most 3 places apart on the pageThe position correction removes most of the position effect, not all of it8.9%
  4. Authors about equally popularOtherwise a component could win because its author is well known3.5%
  5. Paywall on under 5% of opensAbout 5% of the pairs had a paywall on one side3.3%
  6. Same job, both fit the search, not a forkOnly 58% of the checked pairs did the same job1.5%
  7. Both light or both darkThe dark one won 63% of mixed pairs1.0%
  8. Both previews show the component, checked by eyeEmpty or mid-animation previews and repeats dropped0.6%

The picks are stable

Split the users into two random halves and the same component wins in 98% of pairs in both. Paying subscribers alone agree with everyone in 95–97%

Limits

Only large gaps of 3 times or more, from frequent searches and category pages. This is the taste of developers picking ready-made components on 21st, and it may not carry over to designers or end users

Train on what developers actually pick

The pairs, a held-out set for evals, and the choices developers make on 21st every day

Request the pairs