Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when writing landing page copy, app store descriptions, onboarding flows, email sequences, push notifications, or any user-facing text
.claude/skills/bilal140202-copywriter/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 48% | 0% |
| case-15 | ✗→✓ | ▲ Improved | 49% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 45% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 27% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 16% | 0% |
> Philosophy: Clarity over cleverness. Benefits over features. The reader first, always. > Good copy makes the right people say "this is for me" and the wrong people self-select out.
Best for: landing pages, email sequences, long-form ads
Best for: short form ads, push notifications, homepage heroes
Best for: writing copy that resonates with a specific user segment
Best for: headlines, subject lines, CTAs
| ❌ NEVER DO | Why | ✅ DO INSTEAD | |------------|-----|--------------| | Lead with features | Users care about their outcome, not your tech | Lead with the transformation/benefit | | Vague superlatives ("best", "amazing") | Zero credibility, no information | Specific proof ("ranked #1 by AppFollow") | | Weak CTA ("click here", "submit") | No reason to act | Action + benefit ("Start saving time") | | Passive voice | Weak, distant | Active voice, direct | | Jargon and acronyms | Confuses, excludes | Plain language at 8th grade reading level | | Wall of text | No one reads it | Short paragraphs, bullets, scannable | | First open asks for email | Friction before value | Show value first, gate later |
iOS App Store:
Google Play:
Before writing anything:
When reviewing copy:
Must fix:
Should fix:
app-store-optimizer — for ASO-specific copy strategyconversion-optimizer — for landing page and paywall copy testingproduct-manager — for understanding JTBD before writing| Metric | Good | Great | |--------|------|-------| | Open rate | > 25% | > 40% | | Click-through rate | > 3% | > 8% | | Unsubscribe rate | < 0.5% | < 0.2% |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 11,445 | 10,034 | -12% | 1 | 1 | 0% | 1,803 | 2,661 | +48% | 0 | 0 | — |
case-15 | fail→pass | 11,381 | 11,242 | -1% | 1 | 1 | 0% | 2,014 | 2,994 | +49% | 0 | 0 | — |
case-02 | pass→pass | 7,792 | 9,878 | +27% | 1 | 1 | 0% | 1,534 | 2,951 | +92% | 0 | 0 | — |
case-03 | pass→pass | 8,323 | 8,803 | +6% | 1 | 1 | 0% | 1,721 | 2,620 | +52% | 0 | 0 | — |
case-04 | fail→pass | 10,443 | 7,993 | -23% | 1 | 1 | 0% | 1,626 | 2,352 | +45% | 0 | 0 | — |
case-05 | pass→pass | 6,210 | 7,074 | +14% | 1 | 1 | 0% | 1,002 | 2,133 | +113% | 0 | 0 | — |
case-06 | fail→fail | 11,121 | 11,181 | +1% | 1 | 1 | 0% | 1,914 | 2,691 | +41% | 0 | 0 | — |
case-07 | fail→fail | 7,353 | 8,266 | +12% | 1 | 1 | 0% | 1,209 | 2,330 | +93% | 0 | 0 | — |
case-08 | fail→pass | 12,804 | 9,833 | -23% | 1 | 1 | 0% | 2,053 | 2,603 | +27% | 0 | 0 | — |
case-09 | pass→pass | 7,655 | 9,069 | +18% | 1 | 1 | 0% | 1,315 | 2,437 | +85% | 0 | 0 | — |
case-10 | pass→pass | 6,069 | 8,007 | +32% | 1 | 1 | 0% | 1,014 | 2,275 | +124% | 0 | 0 | — |
case-11 | pass→pass | 8,936 | 7,753 | -13% | 1 | 1 | 0% | 1,462 | 2,398 | +64% | 0 | 0 | — |
case-12 | pass→pass | 6,546 | 5,452 | -17% | 1 | 1 | 0% | 1,061 | 1,922 | +81% | 0 | 0 | — |
case-13 | fail→fail | 10,627 | 10,219 | -4% | 1 | 1 | 0% | 1,710 | 2,591 | +52% | 0 | 0 | — |
case-14 | fail→pass | 10,306 | 5,905 | -43% | 1 | 1 | 0% | 1,651 | 1,917 | +16% | 0 | 0 | — |
case-16 | fail→pass | 10,808 | 8,863 | -18% | 1 | 1 | 0% | 1,790 | 2,553 | +43% | 0 | 0 | — |
case-17 | pass→pass | 8,935 | 11,523 | +29% | 1 | 1 | 0% | 1,554 | 3,046 | +96% | 0 | 0 | — |
case-18 | pass→pass | 12,355 | 5,316 | -57% | 1 | 1 | 0% | 1,839 | 1,887 | +3% | 0 | 0 | — |
case-19 | pass→pass | 13,566 | 2,884 | -79% | 1 | 1 | 0% | 2,090 | 1,451 | -31% | 0 | 0 | — |
case-20 | fail→pass | 10,373 | 10,150 | -2% | 1 | 1 | 0% | 2,021 | 2,954 | +46% | 0 | 0 | — |
case-21 | pass→pass | 11,452 | 10,303 | -10% | 1 | 1 | 0% | 2,181 | 2,961 | +36% | 0 | 0 | — |
case-22 | pass→pass | 6,738 | 7,691 | +14% | 1 | 1 | 0% | 1,435 | 2,597 | +81% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +32 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.