Ad Copy A/B Generator
A skill for generating two strategically distinct RSA variations using proven copywriting frameworks.
What this skill does
For a given ad group, this skill produces:
- Version A - Direct/rational angle (features, specifics, numbers, proof)
- Version B - Emotional/aspirational angle (outcomes, identity, transformation)
Each version contains:
- 15 headlines (≤30 chars each), distributed across 5 categories
- 4 descriptions (≤90 chars each), each with a different focus
- Pinning recommendations
- A hypothesis explaining why each variation should win
- Suggested test duration
Required inputs
- Product/service description - what's being sold
- Target audience - who buys it
- Key differentiators - what makes this offering different
- Top 3–5 keywords for the ad group - so headlines can include them
- Current best-performing ad headlines (if available) - to learn what's already working
- Competitor ads (if available) - screenshot text or pasted ads helpful for differentiation
If any of (1)–(4) is missing, ASK before generating. Don't guess.
Workflow
Step 1: Gather context
If the user just said "write me ads," respond:
Before I write, I need:
- What you sell - one or two sentences
- Who buys it - target customer profile
- What makes you different - 2–3 specific differentiators (not "we're better")
- 3–5 keywords for this ad group - so I can include them in headlines
- Current best-performing ads (optional) - paste headlines you know are working
- Competitor ads (optional) - paste 2–3 competitor RSAs you've seen for these keywords
Step 2: Generate Version A - Direct/Rational
The structure for each RSA variation: 15 headlines split across 5 categories, 4 descriptions each with a distinct focus. See references/copy-frameworks.md for the framework details.
Version A leans on: features, numbers, social proof, specific guarantees, tangible benefits.
15 headlines distribution:
- 3 with primary keyword insertion (literal keyword in the headline, e.g., "Buy CRM Software" if keyword is "buy crm software")
- 3 with unique value propositions (specific, differentiated)
- 3 with social proof / numbers ("Trusted by 10,000+ Teams", "4.8★ on G2", "$50M Saved")
- 3 with urgency / CTA ("Start Free Trial", "Get a Demo Today", "See Pricing Now")
- 3 with benefit-focused messaging (the literal benefit, not the feature)
4 descriptions:
- 1 feature-focused
- 1 benefit-focused
- 1 social-proof focused
- 1 CTA-focused
Step 3: Generate Version B - Emotional/Aspirational
Same structure but tone shifts to identity, outcomes, transformation. Less about "what it does" and more about "who you become / what changes."
For B2B: emotional angles include relief from frustration, professional pride, peer recognition. For B2C: include identity, lifestyle, status, security, belonging.
Step 4: Pinning recommendations
Don't pin everything - Google's RSA learning works best when it can rotate freely. Default pinning approach:
- Pin one strong headline to position 1 (highest visibility): pick the one with primary keyword insertion + clear value prop. Pin to ensure consistency across impressions.
- Pin one strong headline to position 2 (still visible): pick the strongest social proof or differentiator headline.
- Leave position 3 and beyond unpinned for Google to optimize.
For descriptions: pin the strongest CTA-focused description to position 1; leave position 2 unpinned.
Step 5: Hypothesis and test guidance
For each variation, write a 2–3 sentence hypothesis:
Version A should outperform with high-intent searchers who want specifics - pricing, features, proof. The numbers and CTAs reduce friction for ready-to-buy clicks.
Version B should outperform with mid-funnel searchers who haven't decided yet - the aspirational angle creates consideration intent.
Suggest test duration based on traffic volume:
| Ad group monthly clicks | Test duration |
|---|---|
| 1,000+ | 2 weeks |
| 300–1,000 | 4 weeks |
| 100–300 | 6 weeks |
| <100 | 8+ weeks (or skip A/B; combine into one ad) |
If the ad group sees fewer than 100 clicks/month, recommend ONE strong RSA instead of A/B. Tell the user: "Below 100 clicks/month, A/B test won't reach significance in a reasonable time."
Output format
Markdown response with this structure:
## Ad Copy A/B Test - Ad Group: [name]
### Version A - Direct/Rational
**Headlines:** (each on its own line, with character count and pinning)
1. [Headline A1] (28) - PIN POS 1
2. [Headline A2] (29) - PIN POS 2
3. [Headline A3] (25)
... (15 total)
**Descriptions:**
1. [Desc A1] (89) - PIN POS 1
2. [Desc A2] (87)
...
**Hypothesis:** ...
**Test duration:** ...
### Version B - Emotional/Aspirational
[same structure]
### Implementation notes
- Set up both ads in the same ad group with rotation set to "Optimize"
- Don't change the ads during the test period
- Compare CTR, conv. rate, and CPA at the end of the test window
If the user requests a "deliverable" or "spreadsheet I can give my team," generate an Excel workbook (xlsx skill) with separate tabs for each variation.
What this skill must NOT do
- Don't exceed character limits. 30 chars/headline, 90 chars/description. Count exactly. If a headline is 31 chars, rewrite it.
- Don't generate generic copy. "Best [Product]" is a placeholder, not a headline. Every headline should include something specific to the user's offering.
- Don't pin every headline. Over-pinning kills RSA performance.
- Don't include emojis unless the user is in a B2C-friendly vertical and explicitly OK with them.
- Don't promise "this will increase your CTR by X%" - copywriting outcomes are unpredictable.
- Don't write ads that promise things the user didn't say they offer. "Free shipping" isn't a freebie unless they said they offer it.
- Don't include competitor brand names in copy (trademark risk).
Reference files
references/copy-frameworks.md- PAS, AIDA, social proof, and the RSA category breakdownreferences/character-count-rules.md- exact rules for what counts as a character + style notes