Ad Copy (Global)
Step 0: Check context file
Before writing ad copy, read context file (if exists):
.agents/product-marketing-context.md (product marketing)
.agents/personal-brand-context.md (personal brand)
Decide mode:
- Only
product-marketing-context.md exists -> MODE A (default — 6 TOFU/MOFU/BOFU variations)
- Only
personal-brand-context.md exists -> MODE B (Personal Brand Mode)
- Both exist -> ASK 1 question: "Are you running ads to sell a product or boost personal brand?"
- Neither exists -> Suggest creating appropriate context
Information gathering
Ask up to 4 questions before writing:
- What product / service? Short description, main USP, price, current promotion (if any).
- Which ad platform? Meta Ads (Facebook/Instagram), TikTok Ads, Google Ads. If not specified — default to Meta Ads.
- Target audience? Gender, age range, main pain point, decision maker. Cold (unaware) or Warm (engaged)?
- Ad objective? Messages (DM), Lead form, Traffic, Conversions. If not specified — default to Messages.
Core principles
125-character rule
On Meta Ads, only the first 125 characters show before "See more" button. Line 1 of primary text must:
- Spark curiosity OR hit pain point
- Include USP or specific number
- Be self-contained (don't cut mid-sentence)
GOOD: "Tired of acne for 3+ years? A 28-day routine — guaranteed clear skin or refund." (76 chars)
BAD: "Hello there, thank you for your interest in our services. Today I want to share..." (cut mid-sentence)
Emotional trigger library
| # |
Trigger |
Description |
Example |
| 1 |
Pain |
Hit current problem — create empathy |
"Tired of breakouts? You're not alone..." |
| 2 |
Aspiration |
Paint a better future image |
"Imagine clear, confident skin without filters" |
| 3 |
FOMO |
Fear of missing out, scarcity |
"Only 12 slots left this month — 89 people booked" |
| 4 |
Social Proof |
Others did and succeeded |
"1,200 customers tried — 4.8/5 stars" |
| 5 |
Authority |
Experts, certifications, experience |
"10 years experience — board-certified dermatologist consults directly" |
| 6 |
Curiosity |
Spark questions, want to know more |
"There's 1 thing 90% of skincare users get wrong — do you know?" |
Trigger rules by funnel:
- TOFU: Curiosity (6), Pain (1), Aspiration (2)
- MOFU: Social Proof (4), Authority (5), Pain (1)
- BOFU: FOMO (3), Social Proof (4), Pain (1)
6 Professional Copy Frameworks
Choose framework by audience temperature
| Temperature |
Priority frameworks |
Why |
| Cold (unaware) |
AIDA, Star·Story·Solution |
Logic from scratch; storytelling without ad-feel |
| Warm (engaged, no purchase) |
PAS, 4P |
Re-trigger pain; build trust with proof |
| Hot (high intent, near purchase) |
FAB, BAB |
Hammer specific benefits; visual transformation |
| Retarget (viewed, no purchase) |
PAS or BAB |
Reinforce consequences or transformation |
Framework summary
| Framework |
Structure |
When to use |
Best platforms |
| AIDA |
Attention -> Interest -> Desire -> Action |
Cold audience, new product launch |
Meta feed, TikTok, YouTube pre-roll |
| PAS |
Problem -> Agitate -> Solution |
Warm audience, clear pain (spa, health, edu) |
Meta feed, LinkedIn, Google RSA |
| BAB |
Before -> After -> Bridge |
Transformation offer (spa, fitness, edu) |
Meta Reels/Stories, TikTok |
| 4P |
Promise -> Picture -> Proof -> Push |
High-ticket, requires trust (real estate, courses, B2B) |
LinkedIn, Google, long Meta feed |
| FAB |
Features -> Advantages -> Benefits |
High-intent, comparison stage |
Google RSA, Meta retarget |
| Star·Story·Solution |
Star -> Story -> Solution |
Brand storytelling, UGC-style, no ad-feel |
TikTok, Reels, YouTube Shorts |
Common mistake: Writing freeform (intro -> features -> CTA) instead of using a framework. Result: bland copy, low CTR. Each of the 6 variations should use a different framework.
Andromeda Warning — Don't clone ads
Meta 2026: Andromeda system clusters ads with Creative Similarity Score > 60% — auto-reduces delivery. 100 minor variations (color swap, clip cut, font change) is NOT better than 10 truly distinct creatives.
Safety thresholds:
| Similarity Score |
Status |
Action |
| < 40% |
Safe |
Continue |
| 40-60% |
Warning |
Re-check — may cluster |
| > 60% |
Danger |
Andromeda clusters -> auto delivery cut |
5 dimensions of diversity:
- Different hooks — Pain vs Curiosity vs Aspiration (not just text swap, change angle)
- Different formats — Vertical 9:16 vs Square 1:1 vs Carousel
- Different characters — Founder vs Customer review vs KOC/expert
- Different audio — Trending music vs Inspirational vs Voiceover
- Different settings — Studio vs Outdoor vs UGC living room
6 ad hook types — Line 1 decides everything
First 125 chars = ad hook. Each variation should use a different hook type:
| # |
Hook type |
Formula |
Example |
| 1 |
Number |
Specific, surprising stat |
"1,247 customers tried — 98% returned for round 2" |
| 2 |
Counterintuitive |
Flip common belief |
"Running MORE ads won't get you more customers" |
| 3 |
Before/After |
Specific transformation |
"From 5 orders/week to 40 orders/week — in 60 days" |
| 4 |
Borrowed authority |
Name expert/cert/brand |
"Top dermatologist with 15 years experience recommends — surprising reason" |
| 5 |
Confession |
Share real mistake/lesson |
"I burned $200K on bad ads — here's what I do now" |
| 6 |
Urgency |
Time/quantity limit |
"8 slots left this June — 34 people waiting" |
Hook selection by funnel:
- TOFU (cold): Hook 1 (number), 2 (counterintuitive) — grab attention
- MOFU (warm): Hook 3 (before/after), 4 (authority) — build trust
- BOFU (hot): Hook 5 (confession), 6 (urgency) — drive action
Hook check:
Copy Scoring — Score before delivery
Score on 5 criteria, 1-10 each. Only deliver if >= 35/50.
| Criterion |
8-10 points |
5-7 points |
1-4 points |
| Hook strength |
Strong curiosity, specific number/detail, funnel-fit |
Acceptable but unimpressive |
Generic, no anchor |
| Emotional trigger |
Clear trigger (Pain/FOMO/Social proof), felt |
Has trigger but mild |
No trigger, no feeling |
| CTA clarity |
Specific, clear action, single step |
CTA exists but unclear |
Vague ("Learn more", "Click here") |
| Compliance |
0 policy violations |
1 mild warning |
Clear violation = rejected |
| Platform fit |
Char limit correct, voice matches platform |
Close enough |
Wrong limit or wrong voice |
| Total |
Rating |
Action |
| 45-50 |
Excellent |
Ship now, monitor performance |
| 35-44 |
Good |
Ship with improvement notes |
| 25-34 |
Average |
Revise before shipping |
| < 25 |
Weak |
Rewrite from scratch |
Add this line to every output: Copy Score: [X]/50 — [Rating]
Platform rules
| Rule |
Meta Ads |
TikTok Ads |
Google Ads |
| Primary text length |
125 char line 1 + 300-500 full |
80-100 char (text overlay) |
No primary text |
| Headline |
Max 40 char |
None |
Max 30 char x 3 |
| Description |
Max 30 char |
None |
Max 90 char x 2 |
| Voice |
Professional but friendly |
Young, natural, conversational |
Direct, keyword-driven |
| CTA button |
Pick from Meta list |
No button — CTA in text |
No button — CTA in headline |
| Image / Video |
1:1 (feed), 9:16 (story/reel) |
9:16 mandatory |
N/A (search) |
CTA — Priority order
Specific > vague. Clear action > ambiguous.
| Strength |
CTA |
When to use |
| Strongest |
"Message us to book a slot" |
Messages goal, BOFU |
| Strong |
"Book free consultation" |
Lead form, MOFU/BOFU |
| Medium |
"See pricing details" |
Traffic, MOFU |
| Light |
"Learn more" |
Awareness, TOFU |
Avoid: Generic CTAs without action ("Click here", "Contact now").
Ad policy compliance checklist
| Rule |
Detail |
Violation = ad rejected |
| No absolute claims |
Avoid "guaranteed", "100%", "definitely" |
Yes |
| No "free" in headline |
Meta flags "free" in headline — use in body instead |
Yes |
| No excessive "promo" |
Once in body — no repeat |
Yes |
| No personal attributes |
Avoid "Are you fat?", "Do you have acne?" — use "Many people experience..." |
Yes |
| Realistic before/after |
No heavy retouching of before/after photos |
Yes |
| No sensitive imagery |
No close-up acne, wounds, body parts |
Yes |
| Mandatory disclaimer |
Supplements, medical — disclaimer required |
Yes |
Output structure
General info
# Ad Copy: [Product/Campaign Name]
Date: [YYYY-MM-DD]
Platform: [Meta Ads / TikTok Ads / Google Ads]
Goal: [Messages / Lead / Traffic / Conversion]
Audience: [Brief description]
Main USP: [1 sentence]
TOFU — Awareness (Cold audience)
Variation 1: [Angle name — e.g., "Hit the pain"]
| Component |
Content |
| Trigger |
[Pain / Curiosity / Aspiration] |
| Primary text (125 char) |
[Line 1 — shown before "See more"] |
| Primary text (full) |
[Full content — 300-500 char] |
| Headline |
[Max 40 char] |
| Description |
[Max 30 char] |
| CTA button |
[Learn More / Send Message] |
| Creative note |
[Image/video brief] |
Variation 2: [Angle name — e.g., "Curiosity"]
(Same structure, different angle and trigger)
MOFU — Persuasion (Warm audience)
Variation 3: [Angle — e.g., "Social Proof"]
| Component |
Content |
| Trigger |
[Social Proof / Authority] |
| Primary text (125 char) |
[Line 1] |
| Primary text (full) |
[Full content — emphasize proof, reviews, numbers] |
| Headline |
[Max 40 char] |
| Description |
[Max 30 char] |
| CTA button |
[Send Message / Book Now] |
| Creative note |
[Use review/before-after creative] |
Variation 4: [Angle — e.g., "Expert"]
(Same structure, different angle)
BOFU — Close (Hot audience + Retarget)
Variation 5: [Angle — e.g., "FOMO"]
| Component |
Content |
| Trigger |
[FOMO / Social Proof] |
| Primary text (125 char) |
[Line 1 — emphasize urgency, scarcity] |
| Primary text (full) |
[Full content — deadline, quantity, specific offer] |
| Headline |
[Max 40 char] |
| Description |
[Max 30 char] |
| CTA button |
[Book Now / Send Message / Buy Now] |
| Creative note |
[Numbers, countdown] |
Variation 6: Retarget — [Angle — e.g., "Reminder"]
For users who messaged but didn't book / viewed but didn't purchase.
| Component |
Content |
| Trigger |
[Pain + FOMO] |
| Primary text (125 char) |
[Reminder — "Last week you asked about..."] |
| Primary text (full) |
[Re-trigger pain, add new proof, limited offer] |
| Headline |
[Max 40 char] |
| Description |
[Max 30 char] |
| CTA button |
[Send Message / Book Now] |
| Creative note |
[Different from first ad — avoid ad fatigue] |
Summary table
| # |
Funnel |
Angle |
Trigger |
Hook (125 char) |
CTA |
| 1 |
TOFU |
[Angle 1] |
[Trigger] |
[125 char] |
[CTA] |
| 2 |
TOFU |
[Angle 2] |
[Trigger] |
[125 char] |
[CTA] |
| 3 |
MOFU |
[Angle 3] |
[Trigger] |
[125 char] |
[CTA] |
| 4 |
MOFU |
[Angle 4] |
[Trigger] |
[125 char] |
[CTA] |
| 5 |
BOFU |
[Angle 5] |
[Trigger] |
[125 char] |
[CTA] |
| 6 |
BOFU |
Retarget |
[Trigger] |
[125 char] |
[CTA] |
A/B test guide
| Test |
Variation A |
Variation B |
Metric |
Duration |
| Hook |
Variation 1 |
Variation 2 |
CTR, CPMess |
3-5 days |
| CTA |
Variation 3 |
Variation 4 |
Conversion rate |
3-5 days |
| Offer |
Variation 5 |
Variation 6 |
ROAS, CPA |
5-7 days |
Test rules:
- Test 1 element per test (hook OR CTA OR offer)
- Test budget: minimum $10/day/variation
- Min data: 1,000 impressions or 50 clicks before concluding
- Win/loss: >20% gap = statistically significant
Dropshipping Mode
Activates when user mentions: "dropshipping", "shopify product", "winning product".
Different from regular ad copy — focused on impulse purchase, urgency, scarcity.
4 Dropshipping Ad Templates
Template 1: Urgency Hook
- Primary text: "Selling out FAST — only 27 units left in stock! Get yours before midnight..."
- Headline: "Almost Gone"
- CTA: "Shop Now"
Template 2: Scarcity Hook
- Primary text: "We can only restock this every 6 weeks. If you've been thinking about it..."
- Headline: "Limited Restock"
- CTA: "Order Now"
Template 3: Problem-Aware Hook
- Primary text: "Tired of [pain point]? This [product] solves it in 30 seconds. Watch how ->"
- Headline: "Solved In 30 Seconds"
- CTA: "Learn More"
Template 4: Transformation Hook
- Primary text: "Before: [problem image] -> After: [solution image]. Real customer photo, no editing."
- Headline: "Before & After"
- CTA: "See How"
Dropshipping Ad Copy Rules
- Use specific numbers — "27 units" not "limited stock"
- Photo-first creative — text overlays, not text-only ads
- Always have urgency or scarcity — countdown, limited stock, restock date
- Social proof tile — "1,247 ordered today" in primary text
- Free shipping mention — if applicable, primary text line 2
Reference
For full dropshipping pipeline, see skill 29-dropshipping-mastery-global and reference dropshipping-tools-global.md.
Related skills
- 04-script-video-global — Use ad copy as voiceover/text overlay for video ads
- 02-campaign-brief-global — Ad copy is part of overall campaign brief
- 17-pricing-strategy-global — Pricing affects offer in BOFU copy
- 29-dropshipping-mastery-global — Full dropshipping pipeline
Quality checklist
Check before delivery:
1---
2name: 05-ad-copy-global
3description: "Use when the user needs PAID ad copy for Meta, Google, or TikTok — six variants across TOFU, MOFU, and BOFU using AIDA, PAS, and BAB, respecting each platform character limit and ad policy, with a dropshipping mode. Trigger on 'ad copy', 'write Facebook ads', 'TikTok ad copy', 'Google RSA headlines', 'primary text for this ad', 'my ad copy is not converting'. Also use when the user has a product page and asks what to run as an ad. Not for — organic social captions, see `37-social-caption-global`; spoken video lines, see `04-script-video-global`; approving copy already written, see `62-marketing-review-global`; the page the ad points at, see `12-landing-page-brief-global`."
4metadata:
5 version: 1.0.1
6 category: content
7license: MIT
8triggers:
9 - "ad copy"
10 - "Facebook ads"
11 - "TikTok ads"
12 - "Google Ads copy"
13 - "dropshipping ads"
14 - "Shopify ads"
15related:
16 - product-marketing-context-global
17 - 04-script-video-global
18 - 02-campaign-brief-global
19 - 17-pricing-strategy-global
20 - 29-dropshipping-mastery-global
21 - references/hook-formulas-global
22---
23
24# Ad Copy (Global)
25
26## Step 0: Check context file
27
28Before writing ad copy, read context file (if exists):
29
301. `.agents/product-marketing-context.md` (product marketing)
312. `.agents/personal-brand-context.md` (personal brand)
32
33Decide mode:
34- Only `product-marketing-context.md` exists -> **MODE A** (default — 6 TOFU/MOFU/BOFU variations)
35- Only `personal-brand-context.md` exists -> **MODE B** (Personal Brand Mode)
36- Both exist -> **ASK 1 question**: "Are you running ads to sell a product or boost personal brand?"
37- Neither exists -> Suggest creating appropriate context
38
39---
40
41## Information gathering
42
43Ask up to 4 questions before writing:
44
451. **What product / service?** Short description, main USP, price, current promotion (if any).
462. **Which ad platform?** Meta Ads (Facebook/Instagram), TikTok Ads, Google Ads. If not specified — default to Meta Ads.
473. **Target audience?** Gender, age range, main pain point, decision maker. Cold (unaware) or Warm (engaged)?
484. **Ad objective?** Messages (DM), Lead form, Traffic, Conversions. If not specified — default to Messages.
49
50---
51
52## Core principles
53
54### 125-character rule
55
56On Meta Ads, only the **first 125 characters** show before "See more" button. Line 1 of primary text must:
57- Spark curiosity OR hit pain point
58- Include USP or specific number
59- Be self-contained (don't cut mid-sentence)
60
61```
62GOOD: "Tired of acne for 3+ years? A 28-day routine — guaranteed clear skin or refund." (76 chars)
63BAD: "Hello there, thank you for your interest in our services. Today I want to share..." (cut mid-sentence)
64```
65
66### Emotional trigger library
67
68| # | Trigger | Description | Example |
69|---|---------|-------------|---------|
70| 1 | Pain | Hit current problem — create empathy | "Tired of breakouts? You're not alone..." |
71| 2 | Aspiration | Paint a better future image | "Imagine clear, confident skin without filters" |
72| 3 | FOMO | Fear of missing out, scarcity | "Only 12 slots left this month — 89 people booked" |
73| 4 | Social Proof | Others did and succeeded | "1,200 customers tried — 4.8/5 stars" |
74| 5 | Authority | Experts, certifications, experience | "10 years experience — board-certified dermatologist consults directly" |
75| 6 | Curiosity | Spark questions, want to know more | "There's 1 thing 90% of skincare users get wrong — do you know?" |
76
77**Trigger rules by funnel:**
78- TOFU: Curiosity (6), Pain (1), Aspiration (2)
79- MOFU: Social Proof (4), Authority (5), Pain (1)
80- BOFU: FOMO (3), Social Proof (4), Pain (1)
81
82---
83
84## 6 Professional Copy Frameworks
85
86### Choose framework by audience temperature
87
88| Temperature | Priority frameworks | Why |
89|-------------|---------------------|-----|
90| **Cold** (unaware) | AIDA, Star·Story·Solution | Logic from scratch; storytelling without ad-feel |
91| **Warm** (engaged, no purchase) | PAS, 4P | Re-trigger pain; build trust with proof |
92| **Hot** (high intent, near purchase) | FAB, BAB | Hammer specific benefits; visual transformation |
93| **Retarget** (viewed, no purchase) | PAS or BAB | Reinforce consequences or transformation |
94
95### Framework summary
96
97| Framework | Structure | When to use | Best platforms |
98|-----------|-----------|-------------|----------------|
99| **AIDA** | Attention -> Interest -> Desire -> Action | Cold audience, new product launch | Meta feed, TikTok, YouTube pre-roll |
100| **PAS** | Problem -> Agitate -> Solution | Warm audience, clear pain (spa, health, edu) | Meta feed, LinkedIn, Google RSA |
101| **BAB** | Before -> After -> Bridge | Transformation offer (spa, fitness, edu) | Meta Reels/Stories, TikTok |
102| **4P** | Promise -> Picture -> Proof -> Push | High-ticket, requires trust (real estate, courses, B2B) | LinkedIn, Google, long Meta feed |
103| **FAB** | Features -> Advantages -> Benefits | High-intent, comparison stage | Google RSA, Meta retarget |
104| **Star·Story·Solution** | Star -> Story -> Solution | Brand storytelling, UGC-style, no ad-feel | TikTok, Reels, YouTube Shorts |
105
106> **Common mistake:** Writing freeform (intro -> features -> CTA) instead of using a framework. Result: bland copy, low CTR. Each of the 6 variations should use a **different framework**.
107
108### Andromeda Warning — Don't clone ads
109
110> **Meta 2026:** Andromeda system clusters ads with **Creative Similarity Score > 60%** — auto-reduces delivery. 100 minor variations (color swap, clip cut, font change) is NOT better than 10 truly distinct creatives.
111
112**Safety thresholds:**
113
114| Similarity Score | Status | Action |
115|------------------|--------|--------|
116| < 40% | Safe | Continue |
117| 40-60% | Warning | Re-check — may cluster |
118| > 60% | Danger | Andromeda clusters -> auto delivery cut |
119
120**5 dimensions of diversity:**
1211. **Different hooks** — Pain vs Curiosity vs Aspiration (not just text swap, change angle)
1222. **Different formats** — Vertical 9:16 vs Square 1:1 vs Carousel
1233. **Different characters** — Founder vs Customer review vs KOC/expert
1244. **Different audio** — Trending music vs Inspirational vs Voiceover
1255. **Different settings** — Studio vs Outdoor vs UGC living room
126
127---
128
129### 6 ad hook types — Line 1 decides everything
130
131First 125 chars = ad hook. Each variation should use a **different hook type**:
132
133| # | Hook type | Formula | Example |
134|---|-----------|---------|---------|
135| 1 | **Number** | Specific, surprising stat | "1,247 customers tried — 98% returned for round 2" |
136| 2 | **Counterintuitive** | Flip common belief | "Running MORE ads won't get you more customers" |
137| 3 | **Before/After** | Specific transformation | "From 5 orders/week to 40 orders/week — in 60 days" |
138| 4 | **Borrowed authority** | Name expert/cert/brand | "Top dermatologist with 15 years experience recommends — surprising reason" |
139| 5 | **Confession** | Share real mistake/lesson | "I burned $200K on bad ads — here's what I do now" |
140| 6 | **Urgency** | Time/quantity limit | "8 slots left this June — 34 people waiting" |
141
142**Hook selection by funnel:**
143- TOFU (cold): Hook 1 (number), 2 (counterintuitive) — grab attention
144- MOFU (warm): Hook 3 (before/after), 4 (authority) — build trust
145- BOFU (hot): Hook 5 (confession), 6 (urgency) — drive action
146
147**Hook check:**
148- [ ] Line 1 <= 125 chars and self-contained
149- [ ] Includes specific number or detail (not generic)
150- [ ] Sparks curiosity or emotional hit — reader WANTS to click "See more"
151- [ ] 6 variations use 6 DIFFERENT hook types
152
153---
154
155### Copy Scoring — Score before delivery
156
157Score on 5 criteria, 1-10 each. **Only deliver if >= 35/50.**
158
159| Criterion | 8-10 points | 5-7 points | 1-4 points |
160|-----------|-------------|------------|------------|
161| **Hook strength** | Strong curiosity, specific number/detail, funnel-fit | Acceptable but unimpressive | Generic, no anchor |
162| **Emotional trigger** | Clear trigger (Pain/FOMO/Social proof), felt | Has trigger but mild | No trigger, no feeling |
163| **CTA clarity** | Specific, clear action, single step | CTA exists but unclear | Vague ("Learn more", "Click here") |
164| **Compliance** | 0 policy violations | 1 mild warning | Clear violation = rejected |
165| **Platform fit** | Char limit correct, voice matches platform | Close enough | Wrong limit or wrong voice |
166
167| Total | Rating | Action |
168|-------|--------|--------|
169| 45-50 | Excellent | Ship now, monitor performance |
170| 35-44 | Good | Ship with improvement notes |
171| 25-34 | Average | Revise before shipping |
172| < 25 | Weak | Rewrite from scratch |
173
174> **Add this line to every output:** `Copy Score: [X]/50 — [Rating]`
175
176---
177
178### Platform rules
179
180| Rule | Meta Ads | TikTok Ads | Google Ads |
181|------|----------|------------|------------|
182| Primary text length | 125 char line 1 + 300-500 full | 80-100 char (text overlay) | No primary text |
183| Headline | Max 40 char | None | Max 30 char x 3 |
184| Description | Max 30 char | None | Max 90 char x 2 |
185| Voice | Professional but friendly | Young, natural, conversational | Direct, keyword-driven |
186| CTA button | Pick from Meta list | No button — CTA in text | No button — CTA in headline |
187| Image / Video | 1:1 (feed), 9:16 (story/reel) | 9:16 mandatory | N/A (search) |
188
189### CTA — Priority order
190
191Specific > vague. Clear action > ambiguous.
192
193| Strength | CTA | When to use |
194|----------|-----|-------------|
195| Strongest | "Message us to book a slot" | Messages goal, BOFU |
196| Strong | "Book free consultation" | Lead form, MOFU/BOFU |
197| Medium | "See pricing details" | Traffic, MOFU |
198| Light | "Learn more" | Awareness, TOFU |
199
200**Avoid:** Generic CTAs without action ("Click here", "Contact now").
201
202### Ad policy compliance checklist
203
204| Rule | Detail | Violation = ad rejected |
205|------|--------|------------------------|
206| No absolute claims | Avoid "guaranteed", "100%", "definitely" | Yes |
207| No "free" in headline | Meta flags "free" in headline — use in body instead | Yes |
208| No excessive "promo" | Once in body — no repeat | Yes |
209| No personal attributes | Avoid "Are you fat?", "Do you have acne?" — use "Many people experience..." | Yes |
210| Realistic before/after | No heavy retouching of before/after photos | Yes |
211| No sensitive imagery | No close-up acne, wounds, body parts | Yes |
212| Mandatory disclaimer | Supplements, medical — disclaimer required | Yes |
213
214---
215
216## Output structure
217
218### General info
219
220```markdown
221# Ad Copy: [Product/Campaign Name]
222Date: [YYYY-MM-DD]
223Platform: [Meta Ads / TikTok Ads / Google Ads]
224Goal: [Messages / Lead / Traffic / Conversion]
225Audience: [Brief description]
226Main USP: [1 sentence]
227```
228
229---
230
231### TOFU — Awareness (Cold audience)
232
233#### Variation 1: [Angle name — e.g., "Hit the pain"]
234
235| Component | Content |
236|-----------|---------|
237| **Trigger** | [Pain / Curiosity / Aspiration] |
238| **Primary text (125 char)** | [Line 1 — shown before "See more"] |
239| **Primary text (full)** | [Full content — 300-500 char] |
240| **Headline** | [Max 40 char] |
241| **Description** | [Max 30 char] |
242| **CTA button** | [Learn More / Send Message] |
243| **Creative note** | [Image/video brief] |
244
245#### Variation 2: [Angle name — e.g., "Curiosity"]
246
247_(Same structure, different angle and trigger)_
248
249---
250
251### MOFU — Persuasion (Warm audience)
252
253#### Variation 3: [Angle — e.g., "Social Proof"]
254
255| Component | Content |
256|-----------|---------|
257| **Trigger** | [Social Proof / Authority] |
258| **Primary text (125 char)** | [Line 1] |
259| **Primary text (full)** | [Full content — emphasize proof, reviews, numbers] |
260| **Headline** | [Max 40 char] |
261| **Description** | [Max 30 char] |
262| **CTA button** | [Send Message / Book Now] |
263| **Creative note** | [Use review/before-after creative] |
264
265#### Variation 4: [Angle — e.g., "Expert"]
266
267_(Same structure, different angle)_
268
269---
270
271### BOFU — Close (Hot audience + Retarget)
272
273#### Variation 5: [Angle — e.g., "FOMO"]
274
275| Component | Content |
276|-----------|---------|
277| **Trigger** | [FOMO / Social Proof] |
278| **Primary text (125 char)** | [Line 1 — emphasize urgency, scarcity] |
279| **Primary text (full)** | [Full content — deadline, quantity, specific offer] |
280| **Headline** | [Max 40 char] |
281| **Description** | [Max 30 char] |
282| **CTA button** | [Book Now / Send Message / Buy Now] |
283| **Creative note** | [Numbers, countdown] |
284
285#### Variation 6: Retarget — [Angle — e.g., "Reminder"]
286
287For users who messaged but didn't book / viewed but didn't purchase.
288
289| Component | Content |
290|-----------|---------|
291| **Trigger** | [Pain + FOMO] |
292| **Primary text (125 char)** | [Reminder — "Last week you asked about..."] |
293| **Primary text (full)** | [Re-trigger pain, add new proof, limited offer] |
294| **Headline** | [Max 40 char] |
295| **Description** | [Max 30 char] |
296| **CTA button** | [Send Message / Book Now] |
297| **Creative note** | [Different from first ad — avoid ad fatigue] |
298
299---
300
301### Summary table
302
303| # | Funnel | Angle | Trigger | Hook (125 char) | CTA |
304|---|--------|-------|---------|-----------------|-----|
305| 1 | TOFU | [Angle 1] | [Trigger] | [125 char] | [CTA] |
306| 2 | TOFU | [Angle 2] | [Trigger] | [125 char] | [CTA] |
307| 3 | MOFU | [Angle 3] | [Trigger] | [125 char] | [CTA] |
308| 4 | MOFU | [Angle 4] | [Trigger] | [125 char] | [CTA] |
309| 5 | BOFU | [Angle 5] | [Trigger] | [125 char] | [CTA] |
310| 6 | BOFU | Retarget | [Trigger] | [125 char] | [CTA] |
311
312### A/B test guide
313
314| Test | Variation A | Variation B | Metric | Duration |
315|------|-------------|-------------|--------|----------|
316| Hook | Variation 1 | Variation 2 | CTR, CPMess | 3-5 days |
317| CTA | Variation 3 | Variation 4 | Conversion rate | 3-5 days |
318| Offer | Variation 5 | Variation 6 | ROAS, CPA | 5-7 days |
319
320**Test rules:**
321- Test 1 element per test (hook OR CTA OR offer)
322- Test budget: minimum $10/day/variation
323- Min data: 1,000 impressions or 50 clicks before concluding
324- Win/loss: >20% gap = statistically significant
325
326---
327
328## Dropshipping Mode
329
330> Activates when user mentions: "dropshipping", "shopify product", "winning product".
331> Different from regular ad copy — focused on impulse purchase, urgency, scarcity.
332
333### 4 Dropshipping Ad Templates
334
335**Template 1: Urgency Hook**
336- Primary text: "Selling out FAST — only 27 units left in stock! Get yours before midnight..."
337- Headline: "Almost Gone"
338- CTA: "Shop Now"
339
340**Template 2: Scarcity Hook**
341- Primary text: "We can only restock this every 6 weeks. If you've been thinking about it..."
342- Headline: "Limited Restock"
343- CTA: "Order Now"
344
345**Template 3: Problem-Aware Hook**
346- Primary text: "Tired of [pain point]? This [product] solves it in 30 seconds. Watch how ->"
347- Headline: "Solved In 30 Seconds"
348- CTA: "Learn More"
349
350**Template 4: Transformation Hook**
351- Primary text: "Before: [problem image] -> After: [solution image]. Real customer photo, no editing."
352- Headline: "Before & After"
353- CTA: "See How"
354
355### Dropshipping Ad Copy Rules
356
3571. **Use specific numbers** — "27 units" not "limited stock"
3582. **Photo-first creative** — text overlays, not text-only ads
3593. **Always have urgency or scarcity** — countdown, limited stock, restock date
3604. **Social proof tile** — "1,247 ordered today" in primary text
3615. **Free shipping mention** — if applicable, primary text line 2
362
363### Reference
364
365For full dropshipping pipeline, see skill `29-dropshipping-mastery-global` and reference `dropshipping-tools-global.md`.
366
367---
368
369## Related skills
370
371- **04-script-video-global** — Use ad copy as voiceover/text overlay for video ads
372- **02-campaign-brief-global** — Ad copy is part of overall campaign brief
373- **17-pricing-strategy-global** — Pricing affects offer in BOFU copy
374- **29-dropshipping-mastery-global** — Full dropshipping pipeline
375
376---
377
378## Quality checklist
379
380Check before delivery:
381
382- [ ] Has 6 variations: 2 TOFU + 2 MOFU + 2 BOFU (1 retarget)
383- [ ] Line 1 of each variation <= 125 chars
384- [ ] Headline <= 40 chars
385- [ ] Each variation uses different emotional trigger
386- [ ] CTA specific, actionable — not generic
387- [ ] No policy violations (see compliance checklist)
388- [ ] No "free" in headline
389- [ ] No personal attributes ("Are you...?", "You have...?")
390- [ ] Has creative note (image/video) for each variation
391- [ ] Voice matches platform (Meta vs TikTok vs Google)
392- [ ] Has clear A/B test guide
393- [ ] Retarget creative differs from first ad
394- [ ] Each variation uses framework matching audience temperature (Cold/Warm/Hot)
395- [ ] No 2 variations using same framework + same hook -> Andromeda risk
396- [ ] Creatives truly differentiated — not just color/clip swap