Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Design and execute marketing A/B tests for landing pages, email campaigns, ad creatives, and pricing with proper test design and result analysis. Use this skill when the user needs to test marketing variations, improve conversion rates through experimentation, or decide between two campaign approaches — even if they say 'which version performs better', 'test this landing page', 'A/B test our email subject line', or 'should we change our CTA'.
.claude/skills/asgard-ai-platform-mkt-ab-testing/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | -8% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 57% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 49% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 9% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 60% | 0% |
IRON LAW: One Variable at a Time
If you change the headline AND the image AND the CTA simultaneously,
you cannot know which change caused the result. Test ONE variable per
experiment. If you need to test multiple changes, use sequential tests
or multivariate testing (MVT) with sufficient traffic.| Element | Expected Lift | Traffic Needed | Priority | |---------|-------------|---------------|---------| | Offer/Pricing | 10-50% | Medium | Highest | | Headline/Subject line | 5-30% | Low | High | | CTA (text, color, placement) | 5-20% | Low | High | | Page layout | 5-15% | Medium | Medium | | Image/Video | 3-15% | Medium | Medium | | Form fields | 5-25% (reduction = higher CVR) | Low | Medium | | Social proof placement | 3-10% | Medium | Lower |
| Test | Control (A) | Variant (B) | Metric | |------|-----------|------------|--------| | Email subject | "Your weekly update" | "3 trends you missed this week" | Open rate | | Landing page CTA | "Sign Up" | "Start Free Trial" | Click rate | | Pricing page | Show 3 plans | Show 2 plans + "most popular" badge | Conversion rate | | Ad creative | Product photo | Lifestyle photo with product | CTR → conversion | | Form length | 8 fields | 4 fields | Form completion rate |
| Result | Decision | Action | |--------|---------|--------| | B wins, p < 0.05, meaningful lift | Ship B | Deploy variant, start next test | | B wins, p < 0.05, tiny lift (<1%) | Don't ship | Lift not worth the change risk | | No significant difference | Keep A | A is the known quantity; test something else | | B wins on primary but loses on guardrail | Investigate | May need to redesign variant |
markdown# A/B Test Plan: {Test Name} ## Hypothesis Changing {variable} from {A} to {B} will increase {metric} by {X%} because {reasoning}. ## Design - Primary metric: {metric} - Guardrail: {metric(s)} - Split: 50/50 - Sample size: {N per variant} - Duration: {days/weeks} ## Results | Metric | Control | Variant | Diff | CI (95%) | Significant? | |--------|---------|---------|------|----------|-------------| | {primary} | {value} | {value} | {±%} | [{lower}, {upper}] | Y/N | ## Decision {Ship / Don't ship / Extend} — {rationale}
| Script | Description | Usage | |--------|-------------|-------| | scripts/ab_test.py | Two-proportion z-test with effect size and sample-size planning | python scripts/ab_test.py --help |
Run python scripts/ab_test.py --verify to execute built-in sanity tests.
references/mvt-design.md| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 22,494 | 19,022 | -15% | 1 | 1 | 0% | 4,186 | 3,870 | -8% | 0 | 0 | — |
case-02 | fail→pass | 13,172 | 23,337 | +77% | 1 | 1 | 0% | 2,866 | 4,510 | +57% | 0 | 0 | — |
case-03 | fail→fail | 39,172 | 25,376 | -35% | 1 | 1 | 0% | 5,893 | 5,017 | -15% | 0 | 0 | — |
case-04 | fail→pass | 16,691 | 14,615 | -12% | 1 | 1 | 0% | 2,463 | 3,676 | +49% | 0 | 0 | — |
case-05 | pass→pass | 14,320 | 10,277 | -28% | 1 | 1 | 0% | 1,965 | 2,607 | +33% | 0 | 0 | — |
case-06 | pass→pass | 14,740 | 13,206 | -10% | 1 | 1 | 0% | 2,296 | 3,334 | +45% | 0 | 0 | — |
case-07 | pass→pass | 14,549 | 14,794 | +2% | 1 | 1 | 0% | 2,065 | 3,235 | +57% | 0 | 0 | — |
case-08 | pass→pass | 11,899 | 11,126 | -6% | 1 | 1 | 0% | 2,059 | 2,856 | +39% | 0 | 0 | — |
case-09 | fail→fail | 14,328 | 11,789 | -18% | 1 | 1 | 0% | 2,024 | 3,109 | +54% | 0 | 0 | — |
case-10 | pass→pass | 13,053 | 9,850 | -25% | 1 | 1 | 0% | 1,862 | 2,574 | +38% | 0 | 0 | — |
case-11 | pass→pass | 14,190 | 13,240 | -7% | 1 | 1 | 0% | 2,150 | 2,968 | +38% | 0 | 0 | — |
case-12 | pass→pass | 16,946 | 14,889 | -12% | 1 | 1 | 0% | 2,317 | 3,477 | +50% | 0 | 0 | — |
case-13 | fail→pass | 7,332 | 2,390 | -67% | 1 | 1 | 0% | 1,335 | 1,453 | +9% | 0 | 0 | — |
case-14 | fail→pass | 9,002 | 8,881 | -1% | 1 | 1 | 0% | 1,528 | 2,442 | +60% | 0 | 0 | — |
case-15 | pass→pass | 9,521 | 6,904 | -27% | 1 | 1 | 0% | 1,617 | 2,332 | +44% | 0 | 0 | — |
case-16 | fail→pass | 14,742 | 10,066 | -32% | 1 | 1 | 0% | 2,500 | 2,834 | +13% | 0 | 0 | — |
case-17 | pass→pass | 11,080 | 7,207 | -35% | 1 | 1 | 0% | 1,722 | 2,482 | +44% | 0 | 0 | — |
case-18 | fail→fail | 13,517 | 8,584 | -36% | 1 | 1 | 0% | 2,359 | 2,405 | +2% | 0 | 0 | — |
case-19 | fail→pass | 10,418 | 3,689 | -65% | 1 | 1 | 0% | 1,624 | 1,816 | +12% | 0 | 0 | — |
case-20 | fail→fail | 27,383 | 25,857 | -6% | 1 | 1 | 0% | 5,101 | 7,157 | +40% | 0 | 0 | — |
case-21 | fail→fail | 27,782 | 27,748 | -0% | 1 | 1 | 0% | 5,465 | 7,835 | +43% | 0 | 0 | — |
case-22 | fail→fail | 21,600 | 26,998 | +25% | 1 | 1 | 0% | 4,540 | 6,681 | +47% | 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.