Meta Ads Creative Ranker
SKILL.md
sample_input.json
expected_output.json
skillssocial-media-adsSKILL.md
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
# Meta Ads Creative Ranker
## Purpose
Transform raw Meta Ads creative data into actionable insights that answer:
- Which creatives are actually driving profitable results?
- What creative patterns (hooks, formats, CTAs) consistently win?
- Where is creative spend being wasted?
- What should we test next based on winning patterns?
**Core Philosophy:** Platform quality ratings (ad strength, quality ranking) can mislead. Engagement metrics deceive. Only conversion data tells the truth.
---
## When to Use This Skill
- Weekly creative performance reviews
- Before scaling ad spend (know what to scale)
- When creative performance declines
- Before briefing new creative production
- When ROAS drops despite "good" engagement
---
## Required Context
| Data Point | Required | Notes |
|------------|----------|-------|
| Ad-level performance export | Yes | Last 7-30 days minimum |
| Spend per ad | Yes | Need volume for statistical validity |
| Conversions/purchases per ad | Yes | Primary success metric |
| Cost per conversion (CPA) or ROAS | Yes | Efficiency metric |
| CTR (Click-through rate) | Yes | Engagement signal |
| CPM (Cost per 1000 impressions) | Yes | Delivery/competition signal |
| Hook rate (3-sec video views / impressions) | If video | Video engagement metric |
| Hold rate (ThruPlays / 3-sec views) | If video | Content quality signal |
| Creative assets (or descriptions) | Helpful | For pattern analysis |
| Account average CPA/ROAS | Helpful | Benchmark for categorization |
---
## Analysis Framework
### Step 1: Data Sufficiency Check
Before analyzing, verify each creative has enough data:
| Spend Level | Minimum for Analysis | Confidence |
|-------------|---------------------|------------|
| < $50 | Skip - insufficient data | None |
| $50-$200 | Directional only | Low |
| $200-$500 | Analyze with caution | Medium |
| $500-$1,000 | Reliable analysis | High |
| $1,000+ | High confidence | Very High |
**Rule:** Never make definitive judgments on creatives with < $200 spend. They haven't had a fair chance.
---
### Step 2: Creative Performance Tiers
Categorize each creative into one of 6 tiers based on efficiency AND volume:
| Tier | Name | Criteria | Action |
|------|------|----------|--------|
| 1 | **Stars** | CPA < 70% of avg AND spend > $500 | Scale immediately, analyze patterns |
| 2 | **Solid Performers** | CPA 70-100% of avg AND spend > $300 | Maintain, test iterations |
| 3 | **Promising** | CPA < 100% of avg BUT spend < $300 | Increase budget, needs more data |
| 4 | **Average** | CPA 100-130% of avg | Monitor, consider refresh |
| 5 | **Underperformers** | CPA 130-200% of avg | Pause or reduce spend |
| 6 | **Bleeders** | CPA > 200% of avg OR 0 conversions with $200+ spend | Kill immediately |
**For ROAS-focused accounts:**
- Stars: ROAS > 143% of target
- Solid: ROAS 100-143% of target
- Promising: ROAS > target but low spend
- Average: ROAS 77-100% of target
- Underperformers: ROAS 50-77% of target
- Bleeders: ROAS < 50% of target
---
### Step 3: The Engagement vs. Efficiency Matrix
Plot creatives on this matrix to identify deceptive performers:
```
HIGH EFFICIENCY (Low CPA / High ROAS)
โ
"HIDDEN GEMS" โ "TRUE STARS"
Low engagement, โ High engagement,
high conversion. โ high conversion.
Scale carefully. โ Scale aggressively.
โ
LOW โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโ HIGH
ENGAGEMENT โ ENGAGEMENT
(CTR) โ (CTR)
โ
"SILENT FAILURES" โ "ENGAGEMENT TRAPS"
Low engagement, โ High engagement,
low conversion. โ low conversion.
Kill or refresh. โ DANGER: Looks good, wastes money.
โ
LOW EFFICIENCY (High CPA / Low ROAS)
```
**Critical Insight:** "Engagement Traps" are the most dangerous. High CTR, lots of likes/comments, but no conversions. These fool many advertisers into scaling losers.
---
### Step 4: Video Creative Deep Dive (If Applicable)
For video ads, analyze the funnel:
| Metric | Calculation | Benchmark | What It Tells You |
|--------|-------------|-----------|-------------------|
| **Hook Rate** | 3-sec views / Impressions | > 30% good, > 40% excellent | Does the opening grab attention? |
| **Hold Rate** | ThruPlays / 3-sec views | > 20% good, > 30% excellent | Does content maintain interest? |
| **Click Rate** | Clicks / ThruPlays | > 5% good, > 10% excellent | Does CTA drive action? |
| **Convert Rate** | Conversions / Clicks | Varies by offer | Does landing page deliver? |
**Funnel Diagnosis:**
| Pattern | Diagnosis | Fix |
|---------|-----------|-----|
| Low Hook Rate | Opening doesn't grab | Test new first 3 seconds |
| High Hook, Low Hold | Content loses interest | Tighten middle, faster pacing |
| High Hold, Low Click | Weak CTA or unclear offer | Stronger end card, clearer CTA |
| High Click, Low Convert | Landing page problem | Not a creative issue |
---
### Step 5: Creative Pattern Analysis
Identify patterns across winning vs. losing creatives:
#### A. Format Performance
| Format | Avg CPA | Conversion Volume | Verdict |
|--------|---------|-------------------|---------|
| Static Image | $ | | |
| Carousel | $ | | |
| Video (< 15s) | $ | | |
| Video (15-30s) | $ | | |
| Video (30s+) | $ | | |
| UGC Style | $ | | |
| Polished/Brand | $ | | |
#### B. Hook Type Performance (First 3 Seconds / Headlines)
Categorize hooks and track performance:
| Hook Type | Example | Avg CPA | Win Rate |
|-----------|---------|---------|----------|
| **Problem-Agitate** | "Tired of [pain point]?" | $ | |
| **Bold Claim** | "The only [product] that..." | $ | |
| **Social Proof** | "10,000+ customers..." | $ | |
| **Curiosity Gap** | "The secret [experts] won't tell you" | $ | |
| **Direct Benefit** | "Get [result] in [timeframe]" | $ | |
| **Question** | "What if you could [desire]?" | $ | |
| **Demonstration** | Shows product in action immediately | $ | |
| **Transformation** | Before/after or A/B comparison | $ | |
#### C. CTA Performance
| CTA Type | Examples | Avg CPA | Notes |
|----------|----------|---------|-------|
| **Urgency** | "Shop Now", "Get It Today" | $ | |
| **Value** | "Start Free Trial", "Get 20% Off" | $ | |
| **Curiosity** | "Learn More", "See How" | $ | |
| **Social** | "Join 10K+ Members" | $ | |
---
### Step 6: Waste Identification
Calculate total waste from underperforming creatives:
```
Total Creative Spend: $________
Spend on Tiers 5-6 (Underperformers + Bleeders): $________
Waste Percentage: ________%
Conversions Lost (if reallocated to Tier 1-2): ________
```
**Waste Impact Scoring:**
| Waste % | Severity | Priority |
|---------|----------|----------|
| < 10% | Healthy | Maintain vigilance |
| 10-20% | Moderate | Weekly optimization needed |
| 20-35% | Significant | Immediate reallocation required |
| > 35% | Critical | Creative strategy overhaul needed |
---
## Output Deliverables
### 1. Creative Performance Summary
```
CREATIVE PERFORMANCE SUMMARY
Period: [Date Range]
Total Creatives Analyzed: [X]
Total Spend: $[X]
TIER BREAKDOWN:
โโโ Stars (Tier 1): [X] creatives, $[X] spend, [X] conversions
โโโ Solid (Tier 2): [X] creatives, $[X] spend, [X] conversions
โโโ Promising (Tier 3): [X] creatives, $[X] spend, [X] conversions
โโโ Average (Tier 4): [X] creatives, $[X] spend, [X] conversions
โโโ Underperformers (Tier 5): [X] creatives, $[X] spend, [X] conversions
โโโ Bleeders (Tier 6): [X] creatives, $[X] spend, [X] conversions
WASTE ANALYSIS:
โโโ Wasted Spend: $[X] ([X]% of total)
โโโ Potential Conversions Lost: [X]
```
### 2. Top Performers List
| Rank | Creative Name/ID | Format | CPA | ROAS | Spend | Conv | Why It Works |
|------|------------------|--------|-----|------|-------|------|--------------|
| 1 | | | | | | | |
| 2 | | | | | | | |
| 3 | | | | | | | |
### 3. Kill List (Immediate Pause)
| Creative Name/ID | Spend | Conv | CPA | Reason |
|------------------|-------|------|-----|--------|
| | | | | |
### 4. Winning Patterns Summary
```
FORMAT WINNERS:
#1: [Format] - [X]% better than average
#2: [Format] - [X]% better than average
HOOK WINNERS:
#1: [Hook Type] - [X]% better than average
#2: [Hook Type] - [X]% better than average
CTA WINNERS:
#1: [CTA Type] - [X]% better than average
```
### 5. Creative Testing Recommendations
Based on winning patterns, test:
| Priority | Test Concept | Based On | Expected Impact |
|----------|--------------|----------|-----------------|
| 1 | | | |
| 2 | | | |
| 3 | | | |
---
## Red Flags to Call Out
- **High-spend creative with 0 conversions:** Immediate pause, investigate targeting
- **Declining Star:** Previously top performer losing efficiency - creative fatigue likely
- **Engagement Trap pattern:** High CTR/engagement, low conversion - misleading metrics
- **Format imbalance:** All winners same format = opportunity to diversify
- **Hook homogeneity:** All hooks same type = testing gap
---
## Integration with Other Skills
| After This Skill | Use | Purpose |
|------------------|-----|---------|
| โ creative-fatigue-detector | Pass Star/Solid creatives | Monitor for fatigue signals |
| โ ugc-brief-generator | Pass winning patterns | Brief new content based on what works |
| โ social-ads-budget-allocator | Pass efficiency data | Inform budget decisions |
| โ audience-overlap-mapper | Cross-reference by audience | See if creative wins are audience-dependent |
---
## Limitations
- Cannot analyze creative visual quality (only performance data)
- Pattern analysis requires 5+ creatives per category for validity
- Short time windows may not show true performance
- Cannot account for external factors (seasonality, competition, market events)
- Attribution model affects all conversion data
---
## Quality Checklist Before Delivery
- [ ] Data sufficiency verified for all analyzed creatives
- [ ] All 6 tiers populated (or noted as empty with explanation)
- [ ] Engagement vs. Efficiency matrix completed
- [ ] Video metrics analyzed (if applicable)
- [ ] Pattern analysis covers format, hook, and CTA
- [ ] Waste calculation completed
- [ ] Kill list is actionable (not just flagged, but recommended pause)
- [ ] Testing recommendations tied to winning patterns
- [ ] Red flags explicitly called out
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
{
"account_name": "FitGear Pro",
"date_range": "2024-01-15 to 2024-02-14",
"account_avg_cpa": 28.5,
"target_roas": 3.5,
"creatives": [
{
"creative_id": "CR_001",
"creative_name": "UGC_Testimonial_Sarah_V1",
"format": "Video (15-30s)",
"hook_type": "Social Proof",
"cta_type": "Value",
"spend": 2450,
"impressions": 185000,
"clicks": 4625,
"ctr": 2.5,
"cpm": 13.24,
"video_3sec_views": 74000,
"thruplays": 18500,
"conversions": 142,
"cpa": 17.25,
"revenue": 9940,
"roas": 4.06
},
{
"creative_id": "CR_002",
"creative_name": "Static_Product_Hero_Blue",
"format": "Static Image",
"hook_type": "Direct Benefit",
"cta_type": "Urgency",
"spend": 1850,
"impressions": 142000,
"clicks": 2840,
"ctr": 2,
"cpm": 13.03,
"video_3sec_views": null,
"thruplays": null,
"conversions": 78,
"cpa": 23.72,
"revenue": 4680,
"roas": 2.53
},
{
"creative_id": "CR_003",
"creative_name": "Carousel_Features_5Panel",
"format": "Carousel",
"hook_type": "Problem-Agitate",
"cta_type": "Curiosity",
"spend": 980,
"impressions": 89000,
"clicks": 3560,
"ctr": 4,
"cpm": 11.01,
"video_3sec_views": null,
"thruplays": null,
"conversions": 18,
"cpa": 54.44,
"revenue": 1080,
"roas": 1.1
},
{
"creative_id": "CR_004",
"creative_name": "UGC_BeforeAfter_Mike_V2",
"format": "Video (15-30s)",
"hook_type": "Transformation",
"cta_type": "Value",
"spend": 3200,
"impressions": 245000,
"clicks": 5880,
"ctr": 2.4,
"cpm": 13.06,
"video_3sec_views": 110250,
"thruplays": 34300,
"conversions": 168,
"cpa": 19.05,
"revenue": 12600,
"roas": 3.94
},
{
"creative_id": "CR_005",
"creative_name": "Polished_Brand_Anthem_60s",
"format": "Video (30s+)",
"hook_type": "Bold Claim",
"cta_type": "Social",
"spend": 1450,
"impressions": 125000,
"clicks": 1875,
"ctr": 1.5,
"cpm": 11.6,
"video_3sec_views": 31250,
"thruplays": 5000,
"conversions": 12,
"cpa": 120.83,
"revenue": 720,
"roas": 0.5
},
{
"creative_id": "CR_006",
"creative_name": "Static_Lifestyle_Gym_V1",
"format": "Static Image",
"hook_type": "Direct Benefit",
"cta_type": "Urgency",
"spend": 650,
"impressions": 52000,
"clicks": 1144,
"ctr": 2.2,
"cpm": 12.5,
"video_3sec_views": null,
"thruplays": null,
"conversions": 26,
"cpa": 25,
"revenue": 1820,
"roas": 2.8
},
{
"creative_id": "CR_007",
"creative_name": "UGC_Unboxing_Jenna_V1",
"format": "Video (< 15s)",
"hook_type": "Demonstration",
"cta_type": "Value",
"spend": 180,
"impressions": 14000,
"clicks": 420,
"ctr": 3,
"cpm": 12.86,
"video_3sec_views": 6300,
"thruplays": 2100,
"conversions": 9,
"cpa": 20,
"revenue": 630,
"roas": 3.5
},
{
"creative_id": "CR_008",
"creative_name": "Meme_Viral_Attempt_V1",
"format": "Static Image",
"hook_type": "Curiosity Gap",
"cta_type": "Curiosity",
"spend": 420,
"impressions": 68000,
"clicks": 3400,
"ctr": 5,
"cpm": 6.18,
"video_3sec_views": null,
"thruplays": null,
"conversions": 2,
"cpa": 210,
"revenue": 120,
"roas": 0.29
},
{
"creative_id": "CR_009",
"creative_name": "Static_Sale_Banner_20Off",
"format": "Static Image",
"hook_type": "Direct Benefit",
"cta_type": "Value",
"spend": 890,
"impressions": 71000,
"clicks": 1420,
"ctr": 2,
"cpm": 12.54,
"video_3sec_views": null,
"thruplays": null,
"conversions": 38,
"cpa": 23.42,
"revenue": 2280,
"roas": 2.56
},
{
"creative_id": "CR_010",
"creative_name": "Video_Product_Demo_Studio",
"format": "Video (15-30s)",
"hook_type": "Demonstration",
"cta_type": "Urgency",
"spend": 520,
"impressions": 42000,
"clicks": 630,
"ctr": 1.5,
"cpm": 12.38,
"video_3sec_views": 10080,
"thruplays": 2520,
"conversions": 14,
"cpa": 37.14,
"revenue": 840,
"roas": 1.62
}
]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
{
"summary": {
"period": "2024-01-15 to 2024-02-14",
"total_creatives_analyzed": 10,
"total_spend": 12590,
"total_conversions": 507,
"overall_cpa": 24.83,
"overall_roas": 2.74
},
"tier_breakdown": {
"tier_1_stars": {
"count": 2,
"creatives": [
"CR_001",
"CR_004"
],
"spend": 5650,
"conversions": 310,
"avg_cpa": 18.23,
"notes": "Both UGC video format with Value CTA"
},
"tier_2_solid": {
"count": 2,
"creatives": [
"CR_006",
"CR_009"
],
"spend": 1540,
"conversions": 64,
"avg_cpa": 24.06,
"notes": "Static images performing at account average"
},
"tier_3_promising": {
"count": 1,
"creatives": [
"CR_007"
],
"spend": 180,
"conversions": 9,
"avg_cpa": 20,
"notes": "Insufficient spend but strong early signals"
},
"tier_4_average": {
"count": 2,
"creatives": [
"CR_002",
"CR_010"
],
"spend": 2370,
"conversions": 92,
"avg_cpa": 25.76,
"notes": "Near average, monitor for improvement or decline"
},
"tier_5_underperformers": {
"count": 1,
"creatives": [
"CR_003"
],
"spend": 980,
"conversions": 18,
"avg_cpa": 54.44,
"notes": "High engagement (4% CTR) but poor conversion - Engagement Trap"
},
"tier_6_bleeders": {
"count": 2,
"creatives": [
"CR_005",
"CR_008"
],
"spend": 1870,
"conversions": 14,
"avg_cpa": 133.57,
"notes": "Immediate pause recommended"
}
},
"waste_analysis": {
"spend_on_underperformers_and_bleeders": 2850,
"waste_percentage": 22.6,
"severity": "Significant",
"conversions_if_reallocated_to_stars": 156,
"actual_conversions_from_wasted_spend": 32,
"conversion_opportunity_cost": 124
},
"engagement_efficiency_matrix": {
"true_stars": [
"CR_001",
"CR_004"
],
"hidden_gems": [
"CR_007"
],
"engagement_traps": [
"CR_003",
"CR_008"
],
"silent_failures": [
"CR_005",
"CR_010"
]
},
"video_funnel_analysis": [
{
"creative_id": "CR_001",
"hook_rate": "40.0%",
"hook_verdict": "Excellent",
"hold_rate": "25.0%",
"hold_verdict": "Good",
"diagnosis": "Strong throughout funnel"
},
{
"creative_id": "CR_004",
"hook_rate": "45.0%",
"hook_verdict": "Excellent",
"hold_rate": "31.1%",
"hold_verdict": "Excellent",
"diagnosis": "Best video performer - transformation hook highly effective"
},
{
"creative_id": "CR_005",
"hook_rate": "25.0%",
"hook_verdict": "Below Average",
"hold_rate": "16.0%",
"hold_verdict": "Poor",
"diagnosis": "Loses audience early, 60s too long, brand content not engaging"
},
{
"creative_id": "CR_007",
"hook_rate": "45.0%",
"hook_verdict": "Excellent",
"hold_rate": "33.3%",
"hold_verdict": "Excellent",
"diagnosis": "Strong signals despite low spend - scale candidate"
},
{
"creative_id": "CR_010",
"hook_rate": "24.0%",
"hook_verdict": "Below Average",
"hold_rate": "25.0%",
"hold_verdict": "Good",
"diagnosis": "Weak hook, those who stay convert okay - needs new opening"
}
],
"pattern_analysis": {
"format_performance": {
"winner": "Video (15-30s)",
"winner_avg_cpa": 18.15,
"comparison": "36% better than account average",
"loser": "Video (30s+)",
"loser_avg_cpa": 120.83,
"ranking": [
{
"format": "Video (15-30s)",
"avg_cpa": 18.15,
"sample_size": 3
},
{
"format": "Video (< 15s)",
"avg_cpa": 20,
"sample_size": 1
},
{
"format": "Static Image",
"avg_cpa": 47.62,
"sample_size": 4
},
{
"format": "Carousel",
"avg_cpa": 54.44,
"sample_size": 1
},
{
"format": "Video (30s+)",
"avg_cpa": 120.83,
"sample_size": 1
}
]
},
"hook_performance": {
"winner": "Transformation",
"winner_avg_cpa": 19.05,
"comparison": "33% better than account average",
"loser": "Curiosity Gap",
"loser_avg_cpa": 210,
"ranking": [
{
"hook_type": "Transformation",
"avg_cpa": 19.05
},
{
"hook_type": "Social Proof",
"avg_cpa": 17.25
},
{
"hook_type": "Demonstration",
"avg_cpa": 28.57
},
{
"hook_type": "Direct Benefit",
"avg_cpa": 23.76
},
{
"hook_type": "Problem-Agitate",
"avg_cpa": 54.44
},
{
"hook_type": "Bold Claim",
"avg_cpa": 120.83
},
{
"hook_type": "Curiosity Gap",
"avg_cpa": 210
}
]
},
"cta_performance": {
"winner": "Value",
"winner_avg_cpa": 18.48,
"ranking": [
{
"cta_type": "Value",
"avg_cpa": 18.48,
"sample_size": 4
},
{
"cta_type": "Urgency",
"avg_cpa": 35.86,
"sample_size": 3
},
{
"cta_type": "Curiosity",
"avg_cpa": 97,
"sample_size": 2
},
{
"cta_type": "Social",
"avg_cpa": 120.83,
"sample_size": 1
}
]
}
},
"top_performers": [
{
"rank": 1,
"creative_id": "CR_001",
"name": "UGC_Testimonial_Sarah_V1",
"format": "Video (15-30s)",
"cpa": 17.25,
"roas": 4.06,
"spend": 2450,
"conversions": 142,
"why_it_works": "Social proof hook + Value CTA + UGC authenticity. 40% hook rate captures attention, testimonial builds trust, clear value prop converts."
},
{
"rank": 2,
"creative_id": "CR_004",
"name": "UGC_BeforeAfter_Mike_V2",
"format": "Video (15-30s)",
"cpa": 19.05,
"roas": 3.94,
"spend": 3200,
"conversions": 168,
"why_it_works": "Transformation hook is visually compelling and immediately communicates value. Highest hold rate (31%) shows content quality. UGC format builds trust."
},
{
"rank": 3,
"creative_id": "CR_007",
"name": "UGC_Unboxing_Jenna_V1",
"format": "Video (< 15s)",
"cpa": 20,
"roas": 3.5,
"spend": 180,
"conversions": 9,
"why_it_works": "Demonstration hook + short format + UGC style. Strong early metrics suggest scaling potential. Needs more spend to confirm."
}
],
"kill_list": [
{
"creative_id": "CR_005",
"name": "Polished_Brand_Anthem_60s",
"spend": 1450,
"conversions": 12,
"cpa": 120.83,
"reason": "CPA 424% of target. Brand anthem content doesn't convert for direct response. 60s too long for feed. Kill immediately."
},
{
"creative_id": "CR_008",
"name": "Meme_Viral_Attempt_V1",
"spend": 420,
"conversions": 2,
"cpa": 210,
"reason": "ENGAGEMENT TRAP: Highest CTR (5%) but worst CPA. Attracts clickers not buyers. Viral intent misaligned with conversion goal."
}
],
"red_flags": [
{
"flag": "Engagement Trap Detected",
"creative": "CR_003 (Carousel_Features_5Panel)",
"detail": "4% CTR (highest among non-meme content) but CPA of $54.44. High engagement, poor conversion. Consider landing page alignment or offer mismatch."
},
{
"flag": "Engagement Trap Detected",
"creative": "CR_008 (Meme_Viral_Attempt_V1)",
"detail": "5% CTR, $210 CPA. Classic engagement trap. Entertaining content attracts wrong audience."
},
{
"flag": "Format Imbalance Opportunity",
"detail": "All top 3 performers are video. Only 1 carousel tested. Consider testing more carousel formats with winning UGC/testimonial approach."
},
{
"flag": "Winning Pattern Not Replicated",
"detail": "UGC + Transformation hook + Value CTA = best combo. Only 1 creative uses transformation hook. Test more variations."
}
],
"testing_recommendations": [
{
"priority": 1,
"test_concept": "New UGC video with Transformation hook (before/after)",
"based_on": "CR_004 is best performer with this pattern",
"expected_impact": "High - replicating proven winner",
"specific_brief": "Recruit 2-3 new creators for before/after content. Focus on visual transformation in first 3 seconds."
},
{
"priority": 2,
"test_concept": "Scale CR_007 (Unboxing) with increased budget",
"based_on": "Strong early metrics, only $180 spend",
"expected_impact": "Medium-High - validate promising creative",
"specific_brief": "Increase to $500 minimum to confirm performance before further scaling."
},
{
"priority": 3,
"test_concept": "Carousel with UGC testimonial content",
"based_on": "UGC wins in video, carousel format undertested",
"expected_impact": "Medium - format diversification",
"specific_brief": "5-panel carousel with customer testimonials, transformation stories, ending with Value CTA."
},
{
"priority": 4,
"test_concept": "Shorter video versions of CR_001 and CR_004",
"based_on": "CR_007 (<15s) shows strong performance, test if shorter versions of winners perform",
"expected_impact": "Medium - could unlock new placement efficiency",
"specific_brief": "Cut existing winners to <15s versions focusing on strongest 3 seconds + immediate CTA."
}
],
"winning_patterns_summary": {
"format": "Video (15-30s) UGC style - 36% better CPA than average",
"hook": "Transformation (before/after) and Social Proof - 33% better CPA",
"cta": "Value-focused ('Get 20% off', 'Start Free') - 35% better CPA",
"combination": "UGC Video + Transformation/Social Proof Hook + Value CTA = formula for success"
},
"next_actions": {
"immediate": [
"Pause CR_005 and CR_008 (save $1,870/month)",
"Increase budget on CR_007 to $500",
"Reduce spend on CR_003 by 50%"
],
"this_week": [
"Brief new UGC transformation content based on CR_004 success",
"Create shorter versions of CR_001 and CR_004",
"Test carousel with testimonial content"
],
"monitor": [
"CR_002 and CR_010 - close to average, could tip either direction",
"CR_007 after budget increase - confirm performance holds"
]
}
}
ReadyMeta Ads Creative Ranker
MarkdownUTF-8