mcpbeat Sign in

Mkt Ab Testing Agent Skill

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'.

1.2k tokens
context cost
SKILL.md, read when the skill is used
4
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
223
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/asgard-ai-platform/skills --skill mkt-ab-testing

What comes with it

20 128 bytes besides the instruction
examples/sample_input.json
references/mvt-design.md
scripts/ab_test.py

The instruction itself

10 sections, as written by the author

Marketing A/B Testing

Framework

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.

What to Test (by Impact)

| 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 Design

  • Hypothesis: "Changing [variable] from [A] to [B] will increase [metric] by [X%] because [reasoning]"
  • Primary metric: ONE metric that determines winner (conversion rate, revenue per visitor, signup rate)
  • Guardrail metrics: Metrics that must NOT degrade (bounce rate, page load time, revenue per user)
  • Traffic split: 50/50 between control and variant (standard)
  • Sample size: Calculate before starting (see stat-ab-testing for formula)
  • Duration: Minimum 1-2 full business weeks (capture day-of-week effects)

Common Marketing Tests

| 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 |

Analysis & Decision

| 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 |

Output Format

# 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}

Gotchas

  • Don't stop early because it "looks good": Peeking at results and stopping when you see significance inflates false positive rates to 30%+. Run to planned sample size.
  • Day-of-week effects: Monday visitors behave differently from Saturday visitors. Always run tests for at least 1-2 complete weeks.
  • Novelty effect: A new design may get a temporary lift from curiosity. Wait 2+ weeks to see if the effect sustains.
  • Winner's curse: The estimated lift from a test is often larger than the true lift due to statistical noise. Expect the actual impact after deployment to be smaller.
  • Don't test everything — test what matters: Running 20 small tests on button colors while ignoring the pricing page is misallocating effort. Test high-impact elements first.

Scripts

| 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

  • For statistical methodology (sample size, p-values), see the stat-ab-testing skill
  • For multivariate testing design, see references/mvt-design.md

Other skills for the same job

different authors, same section of the catalogue
Internal Comms
by anthropics
vendor ×16

A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).

377 tokens
Competitive Ads Extractor
by frostant
×10

Extracts and analyzes competitors' ads from ad libraries (Facebook, LinkedIn, etc.) to understand what messaging, problems, and creative approaches are working. Helps inspire and improve your own ad campaigns.

2k tokens
Lead Research Assistant
by frostant
×8

Identifies high-quality leads for your product or service by analyzing your business, searching for target companies, and providing actionable contact strategies. Perfect for sales, business development, and marketing professionals.

1.6k tokens
Developer Growth Analysis
by frostant
×6

Analyzes your recent Claude Code chat history to identify coding patterns, development gaps, and areas for improvement, curates relevant learning resources from HackerNews, and automatically sends a personalized growth report to your Slack DMs.

3.9k tokens
Google Official SEO Guide
by ZhanlinCui
×4

Official Google SEO guide covering search optimization, best practices, Search Console, crawling, indexing, and improving website search visibility based on official Google documentation

4.2k tokens
Web Performance SEO
by ZhanlinCui
×4

Fix PageSpeed Insights/Lighthouse accessibility "!" errors caused by contrast audit failures (CSS filters, OKLCH/OKLAB, low opacity, gradient text, image backgrounds). Use for accessibility-driven SEO/performance debugging and remediation.

670 tokens
App Store Optimization
by alirezarezvani
×3

Complete App Store Optimization (ASO) toolkit for researching, optimizing, and tracking mobile app performance on Apple App Store and Google Play Store

4.1k tokens scripts
Imagegen Frontend Web
by mxyhi
×3

Elite frontend image-direction skill for generating premium, conversion-aware website design references. CRITICAL OUTPUT RULE — generate ONE separate horizontal image FOR EVERY section. A landing page with 8 sections produces 8 images. Never compress multiple sections into one image. Enforces composition variety (not always left-text / right-image), background-image freedom, varied CTAs, varied hero scales (giant / mid / mini minimalist), narrative concept spine, second-read moments, and a single consistent palette across all images. Optimized for landing pages, marketing sites, and product comps that developers or coding models can accurately recreate.

9.2k tokens

How to use it

Copy the folder

Take asgard-ai-platform/mkt-ab-testing from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.