{"id":"539235d2-cb44-44a3-b1ef-dd3a9078c14a","shortId":"k9DJXn","kind":"skill","title":"ads-creative-development","tagline":"How to produce ad creative that converts at performance scale. Hook patterns, format selection, video pacing, variation systems, sequential testing methodology, fatigue detection, brand-voice alignment without conversion dilution, and platform-specific creative norms. Triggers on","description":"# Ads Creative Development\n\nA senior creative strategist's playbook for producing ad creative that performs.\n\nPerformance creative is a different discipline from brand creative. Brand work optimizes for memorability, emotional resonance, and distinctive identity. Performance creative optimizes for stopping the scroll, communicating value in three seconds, and producing a click. Both matter. Mixing them up costs money. Brand creative running as performance ads bleeds budget; performance creative running as brand ads erodes equity.\n\nThis skill is the discipline that produces performance creative without diluting brand. It assumes you know your audience and offer (see `paid-media-strategy`). It assumes you have brand-voice guidance (see `brand-voice`). The hard part is the systematic production of variations that test cleanly and ship without manual approval bottlenecks, and that is what is here.\n\nWhen to use this skill: producing ad creative for paid campaigns, planning a creative testing cycle, diagnosing creative fatigue, or auditing why creative is not converting.\n\n---\n\n## What this skill is for\n\nThis skill spans creative production, hook patterns, testing methodology, and fatigue diagnosis. It does not cover paid media strategy (use `paid-media-strategy`), result interpretation (use `ads-performance-analytics` once it ships), or brand voice authoring (use `brand-voice`). Pair this skill with the relevant integrations microsite for platform-specific MCP details and example prompts.\n\nThe audience is an ad creative producer, a growth marketer responsible for creative testing, or an agency producing creative at scale. The voice is tactical. There is no \"consider every option.\" Performance creative has shape, and a senior practitioner can map a brief to a production-ready variation matrix in an afternoon.\n\n---\n\n## Performance vs brand creative\n\nThe two disciplines optimize for different metrics. Brand creative optimizes for memorability, distinctiveness, and emotional resonance over months. Performance creative optimizes for scroll-stop in 1 second, value comprehension by 5 seconds, and click by 15.\n\nThe shared layer. Both should reflect brand voice. Both should look like they came from the same brand. The difference is structure, pacing, and where the creative effort concentrates.\n\nThe failure mode. Most agency creative tries to do both and does neither well. The brand video that runs as a 60-second performance ad has a strong narrative arc and zero CTR. The performance ad that ignores brand voice converts but trains the audience to not recognize the brand. The fix is not to compromise; it is to produce both, in their respective formats, with shared voice and divergent structure.\n\nA worked example. A premium coffee brand running a 60-second YouTube awareness ad gets to build the world: cinematography, the founder's hands, slow-pour rituals, music that sets a mood. That same brand running a 15-second Meta Reels performance ad gets 1 second to stop the scroll (a visual pattern interrupt: the steam rising from a cup, fast cut, brand logo dropping in), 4 seconds to clarify the offer (the new flavor, the price, the deal), 8 seconds for social proof (three customer-style testimonials, fast cuts), and 2 seconds for CTA (shop now, end card with logo). Same voice. Different structure. Different pacing. Different creative effort distribution.\n\n---\n\n## Hook patterns: the first 3 seconds\n\nThe biggest lever in performance creative. If the hook fails, no amount of body copy or CTA can recover the impression. A user who scrolled past the first second has already decided. The hook is the whole game until the body justifies why the user kept watching.\n\nTwelve hook patterns work consistently. Detail in [`references/hook-pattern-library.md`](references/hook-pattern-library.md).\n\n1. **Problem-agitate-solve.** Open with the problem the audience feels. Agitate by naming the consequence. Solve with the offer. Works when the audience recognizes the pain.\n2. **Direct callout to audience.** \"If you are a B2B founder running paid ads...\" Triggers self-identification. Works when the audience is narrow and self-aware.\n3. **Contrarian claim.** \"Stop using lookalike audiences.\" Hooks attention by violating expectation. Works when the audience has heard the conventional wisdom too often.\n4. **Result-led.** \"How we cut CAC 40% in 30 days.\" Specific number, specific timeframe. Works when the result is real and documented.\n5. **Curiosity gap.** \"The mistake 80% of marketers make...\" Promises a payoff after the gap. Works when the gap is real; clickbait without payoff trains the audience to scroll past.\n6. **Social proof at top.** \"Used by 10,000+ teams.\" Validation before pitch. Works when the proof is impressive enough to do the heavy lifting.\n7. **Visual pattern interrupt.** A surprising visual that does not match the platform's usual feed flow. Works on TikTok and Reels where the pattern is fast and the interrupt is louder.\n8. **Question that hits intent.** \"Tired of paying $400 for project management software?\" The question pre-qualifies the audience. Works when the question matches a real search query the audience has typed.\n9. **Number-led.** \"3 changes that doubled our ROAS.\" Lists trigger the brain's pattern-completion instinct. Works for educational content; less so for product ads.\n10. **Personal story open.** \"Last year I was burning $50K a month on Meta ads with no return...\" First-person specificity is hard to skip. Works when the story is real and the conclusion is action-relevant.\n11. **Comparison.** \"X vs Y: which actually works.\" Pits two options against each other. Works when the audience is in evaluation mode.\n12. **Behind-the-scenes / process.** \"How we onboard a new client in 7 days...\" Demystifies the work. Works when the process is the differentiator.\n\nFor each pattern, the anti-pattern is the same: a hook that does not actually hook. Generic openings (\"In today's world...\", brand-logo cards, slow zooms over title cards) train the audience to scroll past. The first second is for the hook. The brand can wait.\n\n---\n\n## Format selection\n\nDifferent formats fit different combinations of audience, platform, and offer.\n\n- **Static image.** Best for simple value props, retargeting, and quick test cycles. Lowest production cost. Limited room for narrative.\n- **Carousel.** Best for multi-feature products, educational content, and B2B SaaS. Each card carries one idea; users swipe through at their own pace. Strong for considered purchases.\n- **Video (in-feed).** Best for demonstration, story, and broad audiences. Higher production cost. Performance correlates strongly with hook quality.\n- **UGC-style video.** Best for trust building, social proof, and lower production cost. Looks like an ordinary user filmed it. Especially strong on TikTok and Reels.\n- **Stories or Reels (vertical 9:16).** Best for TikTok, Instagram, and Snap. Native to the platform's primary surface. Skipping anything not vertical here is leaving performance on the table.\n- **Spark Ads (boosted organic).** Best for TikTok. Promotes an existing organic post as an ad. Retains organic engagement signals; consistently outperforms pure paid creative on TikTok.\n\nThe decision rule. Match format to platform native style and to audience consumption pattern. Detail in [`references/format-decision-matrix.md`](references/format-decision-matrix.md).\n\n---\n\n## Video pacing\n\nVideo performance correlates more with pacing than with production value. A well-paced phone-shot video outperforms a poorly-paced agency-produced spot. Specific guidance for the 15-second performance video.\n\n| Time window | Job |\n|---|---|\n| 0 to 1s | Hook. Visual pattern interrupt plus audio hook. |\n| 1 to 3s | Clarify what this is. Brand and offer registered. |\n| 3 to 7s | Value proposition. The problem-solution moment. |\n| 7 to 12s | Social proof or demonstration. Show, do not just tell. |\n| 12 to 15s | CTA. End card with logo and call to action. |\n\nAnything past 15 seconds in a performance video is awareness territory. Performance creative should resolve by 15s.\n\nPlatform variations. TikTok performs at 15 to 30 seconds; the platform tolerates longer because the audience is in a longer dwell mode. Meta In-Feed performs at 15s. YouTube Shorts at 15 to 60s. Long-form YouTube at 30s+ for awareness, with the value prop still front-loaded.\n\n---\n\n## Variation systems\n\nThe systematic way to produce 20 to 50 ad variations from one core concept without manual creative authoring per variation.\n\nThe decomposition. A creative is a hook plus a body plus a CTA in a format. Treat each as a variable.\n\n- 1 concept times 5 hooks times 4 bodies times 3 CTAs times 2 formats equals 120 theoretical variations.\n- Most are not worth shipping. The matrix narrows to 20 to 40 variations the team will actually run.\n- Asset library structure: organize by concept, not by date. `concepts/launch-2026/hooks/`, `concepts/launch-2026/bodies/`, etc.\n\nNaming convention. Use a structured naming system so the analyst can join performance data back to creative components. Example: `launch2026_meta-reel_hookA_bodyB_ctaC_v1`. The analyst pulls the report, joins on the naming components, and identifies which hook is winning across body and CTA combinations.\n\nWorked example in [`references/creative-variation-templates.md`](references/creative-variation-templates.md). A half-day production session produces 40 variations from one core concept by using the matrix. Without the matrix, the same 40 variations require five days of authoring overhead.\n\n---\n\n## Sequential testing methodology\n\nThe waterfall. Most teams test everything at once and lose the signal. Sequential testing isolates the variable that matters at each step.\n\n1. **Test hooks first.** 5 to 10 hook variants, same body, same CTA, same format. The hook is the biggest lever; isolate it first.\n2. **Winners advance to body testing.** Top 2 to 3 hooks each get 5 to 10 body variants. Now you are testing what the audience watches after the hook lands.\n3. **Winners advance to CTA testing.** Top hook plus body combinations each get 3 to 5 CTAs. Smaller search space at this stage; the differences are usually marginal.\n4. **Winners advance to format testing.** Top combinations each render in 2 to 3 formats (vertical video, carousel, static). Catches format-specific drop-offs.\n5. **Top combos go into evergreen rotation.** Two to four winners run on rotation. Refresh on the cadence below.\n\nThe common mistake. Testing all variables at once. Variance compounds; the team cannot tell whether the hook, the body, the CTA, or the format made the difference. Sequential is slower but produces real learnings the team can apply to the next campaign.\n\nDetail in [`references/testing-cadence-playbook.md`](references/testing-cadence-playbook.md).\n\n---\n\n## Creative fatigue detection\n\nFatigue is real. The same audience seeing the same creative six times a week tunes it out, or worse, develops negative associations. Five signals indicate fatigue.\n\n1. **Frequency above 4 to 5 per user per week.** Set explicit caps. Defaults are usually too high.\n2. **CTR declining 30%+ week over week.** The creative is no longer fresh to the audience.\n3. **CPM increasing without audience saturation explanation.** The platform is having to bid harder to deliver impressions because engagement signals are weakening.\n4. **Negative comments increasing.** A direct user signal that the audience is irritated.\n5. **Hide ratio increasing.** Meta exposes this as \"negative feedback rate.\" TikTok exposes \"not interested\" rate.\n\nRefresh cadence. Weekly for high-spend campaigns ($50K+/month). Biweekly for medium spend. Monthly for low spend. The economics: producing a fresh variant is cheaper than running tired creative for one extra week.\n\nThe decision tree. If a top performer's metrics are still strong but frequency is climbing, ship variants of the same concept (same hook structure, different copy and visuals). If the metrics are dropping, retire the concept and ship a new one. Detail in [`references/fatigue-detection-checklist.md`](references/fatigue-detection-checklist.md).\n\n---\n\n## Brand-voice alignment without conversion dilution\n\nThe tension. Brand voice can feel off-brand when squeezed into 15-second ads. The fix is hierarchy, not compromise.\n\nVoice attributes that survive compression. Tone (playful, serious, expert, irreverent). Cadence (short sentences vs long-form). Vocabulary (industry-specific or accessible). Visual treatment (color, type, motion language). These survive in 15s because they live in the texture of every frame.\n\nVoice attributes that do not survive compression. Deep narrative arcs. Complex metaphors. Layered humor that requires setup. Long-form storytelling. These need 30s+ of runtime to land. Forcing them into 15s produces diluted versions that read as off-brand.\n\nThe hierarchy. Brand voice in every frame; performance discipline in the structure. The brand voice shows up in tone, cadence, vocabulary, and visual treatment. The performance discipline shows up in pacing, hook strength, and CTA placement.\n\nA worked example. A brand whose voice is \"warm and direct, slightly contrarian, plain-language\" runs three creatives. The 60-second YouTube awareness piece has the founder talking to camera, plain language, contrarian framing of the category. The 15-second Meta performance ad has fast cuts, plain language captions on screen, contrarian hook (\"Stop overpaying for project management software\"), specific value prop, CTA. The static carousel has 6 cards, plain language, contrarian opening card, value prop progression, CTA on the last card. Same voice. Different structure. None feels off-brand to a customer who has seen all three.\n\nDetail in [`references/brand-voice-performance-balance.md`](references/brand-voice-performance-balance.md).\n\n---\n\n## Platform-specific creative norms\n\nEach platform has native norms. Violating them tanks performance. The fix is producing platform-native, not repurposing.\n\n**Meta (Facebook plus Instagram).** In-feed visual hierarchy. Captions on by default (most users watch sound-off). Native-feeling production beats studio production for direct response. Vertical 9:16 for Reels and Stories; 1:1 or 4:5 for in-feed. CTAs above the fold or in first 2 lines of caption.\n\n**TikTok.** Vertical 9:16 only. Native-creator aesthetic; phone-shot is the default. Fast cuts every 1 to 2 seconds. Captions for accessibility. Music-driven; trending sounds compound reach but expire fast. Spark Ads (boost an existing organic post) consistently outperform pure paid because they retain organic engagement signal.\n\n**LinkedIn.** Professional tone. Slower pacing tolerated; B2B audiences are in research mode rather than scroll mode. B2B vocabulary is fine; consumer-style copy reads as off-platform. Thought leadership angle works; product pitches feel salesy.\n\n**Google Search.** Text-only headlines plus descriptions. Character limits are real constraints (30-character headlines, 90-character descriptions). RSA (Responsive Search Ads) optimization rewards 15+ headline variations and 4+ descriptions; the platform mixes them.\n\n**Google Display and YouTube.** Depends on placement. YouTube allows longer narrative (15s to 6m); Display is fast banner-style. Skippable YouTube ads need to earn the next second of attention; non-skippable annoys.\n\nDetail in [`references/platform-creative-norms.md`](references/platform-creative-norms.md).\n\n---\n\n## Common failures\n\nEight patterns recur across creative production work. The short version.\n\n- \"We made a beautiful brand video and ran it as performance.\" Wrong format and length for the channel. Brand video belongs in awareness; performance ads need the 15-second structure.\n- \"All our ads use the same hook.\" Saturation. Ship five to ten hook variants per concept and rotate.\n- \"Our ads stopped working after 3 days.\" Fatigue plus narrow audience. Either ship more variants or expand the audience; usually both.\n- \"We A/B tested 50 ad variations.\" Too many simultaneous variables. Run sequential tests instead.\n- \"Creative passes brand approval but underperforms.\" Brand discipline at the cost of performance discipline. The hierarchy is wrong; voice in every frame, performance in the structure.\n- \"TikTok ad uses Meta-style production.\" Platform norm violation. TikTok rejects polished ad creative; phone-shot native wins.\n- \"Our hooks all start with the brand logo.\" Kills the first-3-second hook. Brand logo belongs at second 1 to 3 (after the hook lands), not at second 0.\n- \"We never refresh creative because the old set still works ok.\" Incremental loss compounds. CTR decay is gradual; the team that does not refresh discovers a 40% performance gap when they finally check.\n\n---\n\n## The framework: 10 considerations for sustainable creative production\n\nWhen designing or auditing ad creative, walk these 10 considerations.\n\n1. **Performance vs brand.** Name what this creative is optimizing for; do not mix.\n2. **Hook strength.** First 3 seconds. Scroll-stopping. Specific.\n3. **Format-platform fit.** Native to the channel.\n4. **Pacing.** Value prop hits within 5 seconds; CTA by 15s.\n5. **Variation system.** Matrix-based, not ad-hoc.\n6. **Sequential testing.** Hooks, then bodies, then CTAs, then formats.\n7. **Fatigue monitoring.** Frequency, CTR decay, CPM trend, negative feedback.\n8. **Brand-voice alignment.** Voice that survives compression; performance in the structure.\n9. **Platform creative norms.** Vertical for short-video platforms, captions on, native production.\n10. **Refresh cadence.** Weekly to monthly by spend tier.\n\nThe output of the framework is a production plan. A list of variations to ship in the next testing cycle, the testing waterfall to run, the fatigue thresholds that trigger refresh, and the platform-specific norms the variations respect. Three answers from the framework: ship as planned, revise the plan, or stop because a precondition is missing.\n\n---\n\n## Reference files\n\n- [`references/hook-pattern-library.md`](references/hook-pattern-library.md) - Twelve hook patterns with worked examples and anti-patterns for each.\n- [`references/format-decision-matrix.md`](references/format-decision-matrix.md) - Audience-objective context to recommended format with reasoning and common alternatives.\n- [`references/creative-variation-templates.md`](references/creative-variation-templates.md) - Matrix-based production system, naming conventions, asset library structure, half-day worked example.\n- [`references/testing-cadence-playbook.md`](references/testing-cadence-playbook.md) - Sequential testing waterfall with per-stage variant counts, durations, and winner-advancement criteria.\n- [`references/fatigue-detection-checklist.md`](references/fatigue-detection-checklist.md) - Five fatigue signals with thresholds and refresh decision tree.\n- [`references/platform-creative-norms.md`](references/platform-creative-norms.md) - Per-platform aspect ratios, lengths, audio expectations, caption norms, and native-aesthetic anti-patterns.\n- [`references/brand-voice-performance-balance.md`](references/brand-voice-performance-balance.md) - Voice attributes that survive 15-second compression vs those that do not, with a four-format worked example.\n\n---\n\n## Closing: the hook is the whole game\n\nIn performance creative, the hook is the whole game. If the hook fails, no body copy or CTA can recover the impression. A user who scrolled past the first second has already decided.\n\nSpend the disproportionate creative effort on the first 3 seconds. The rest is delivery. The team that puts 60% of its creative effort into the hook and 40% into everything else outperforms the team that distributes effort evenly. The team that puts 90% of its effort into hooks and 10% into delivery beats both, as long as it ships enough variations for the testing waterfall to find which hooks actually work.\n\nWhen in doubt, ship the variant. A weak variant ships; a perfect variant never does. The sequential testing waterfall finds the winners; the variation system makes shipping cheap. The asymmetric cost of inaction is real; the asymmetric cost of shipping a marginal variant is small.","tags":["ads","creative","development","claude","skills","rampstackco","agent-skills","anthropic","awesome-claude-code","awesome-claude-prompts","awesome-claude-skills","claude-code"],"capabilities":["skill","source-rampstackco","skill-ads-creative-development","topic-agent-skills","topic-anthropic","topic-awesome-claude-code","topic-awesome-claude-prompts","topic-awesome-claude-skills","topic-claude","topic-claude-code","topic-claude-skills","topic-good-first-issue","topic-mcp","topic-product-management","topic-seo"],"categories":["claude-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/rampstackco/claude-skills/ads-creative-development","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add rampstackco/claude-skills","source_repo":"https://github.com/rampstackco/claude-skills","install_from":"skills.sh"}},"qualityScore":"0.540","qualityRationale":"deterministic score 0.54 from registry signals: · indexed on github topic:agent-skills · 181 github stars · SKILL.md body (20,229 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T18:55:11.818Z","embedding":null,"createdAt":"2026-05-05T18:56:09.585Z","updatedAt":"2026-05-18T18:55:11.818Z","lastSeenAt":"2026-05-18T18:55:11.818Z","tsv":"'-3':2576 '/month':1860 '0':1242,2594 '000':777 '1':350,506,636,1252,1408,1564,1766,2241,2242,2279,2584,2646 '10':776,887,1570,1603,2630,2644,2747,3018 '11':926 '12':948,1285 '120':1423 '12s':1275 '15':360,499,1235,1299,1319,1346,1950,2117,2375,2463,2914 '15s':1287,1313,1342,1991,2032,2396,2689 '16':1133,2236,2264 '1s':1244 '2':554,664,1420,1588,1595,1657,1784,2257,2281,2660 '20':1372,1435 '3':578,692,863,1263,1417,1597,1618,1631,1659,1800,2489,2586,2664,2670,2977 '30':725,1321,1787,2363 '30s':1354,2024 '3s':1254 '4':528,715,1414,1646,1769,1822,2244,2379,2679 '40':723,1437,1516,1531,2621,2996 '400':834 '5':355,739,1411,1568,1601,1633,1672,1771,1835,2245,2685,2690 '50':1374,2508 '50k':896,1859 '6':769,2146,2700 '60':411,470,2098,2987 '60s':1348 '6m':2398 '7':794,961,1273,2710 '7s':1265 '8':541,826,2720 '80':744 '9':859,1132,2235,2263,2733 '90':2366,3011 'a/b':2506 'access':1981,2285 'across':1499,2429 'action':924,1296 'action-relev':923 'actual':932,988,1442,3038 'ad':2,8,43,54,105,113,183,236,271,414,425,474,504,677,886,901,1159,1172,1375,1952,2121,2297,2372,2407,2460,2468,2485,2509,2546,2558,2640,2698 'ad-hoc':2697 'ads-creative-develop':1 'ads-performance-analyt':235 'advanc':1590,1620,1648,2876 'aesthet':2269,2904 'afternoon':319 'agenc':283,394,1228 'agency-produc':1227 'agit':639,648 'align':31,1934,2724 'allow':2393 'alreadi':610,2967 'altern':2843 'amount':591 'analyst':1465,1484 'analyt':238 'angl':2344 'annoy':2419 'answer':2797 'anti':978,2826,2906 'anti-pattern':977,2825,2905 'anyth':1148,1297 'appli':1728 'approv':169,2522 'arc':419,2010 'aspect':2894 'asset':1444,2853 'associ':1761 'assum':129,142 'asymmetr':3069,3076 'attent':700,2415 'attribut':1960,2002,2911 'audienc':133,268,434,646,660,668,685,698,707,765,845,856,943,1007,1030,1091,1195,1329,1612,1745,1799,1804,1832,2320,2494,2502,2833 'audience-object':2832 'audio':1250,2897 'audit':197,2639 'author':245,1384,1537 'awar':473,691,1306,1356,2101,2458 'b2b':673,1063,2319,2329 'back':1470 'banner':2403 'banner-styl':2402 'base':2695,2848 'beat':2228,3021 'beauti':2439 'behind':950 'behind-the-scen':949 'belong':2456,2581 'best':1036,1054,1085,1105,1134,1162 'bid':1812 'biggest':581,1583 'biweek':1861 'bleed':106 'bodi':593,620,1396,1415,1500,1574,1592,1604,1627,1709,2705,2950 'bodyb':1480 'boost':1160,2298 'bottleneck':170 'brain':872 'brand':29,65,67,100,112,127,146,151,243,248,322,331,367,378,405,428,439,467,496,524,997,1019,1259,1932,1940,1946,2041,2044,2055,2082,2169,2440,2454,2521,2525,2571,2579,2649,2722 'brand-logo':996 'brand-voic':28,145,150,247,1931,2721 'brief':309 'broad':1090 'budget':107 'build':477,1108 'burn':895 'cac':722 'cadenc':1689,1852,1969,2061,2749 'call':1294 'callout':666 'came':374 'camera':2108 'campaign':187,1732,1858 'cannot':1703 'cap':1778 'caption':2127,2214,2260,2283,2743,2899 'card':561,999,1004,1066,1290,2147,2152,2160 'carousel':1053,1663,2144 'carri':1067 'catch':1665 'categori':2115 'chang':864 'channel':2453,2678 'charact':2358,2364,2367 'cheap':3067 'cheaper':1876 'check':2627 'cinematographi':480 'claim':694 'clarifi':531,1255 'clean':164 'click':92,358 'clickbait':760 'client':959 'climb':1900 'close':2929 'coffe':466 'color':1984 'combin':1028,1503,1628,1653 'combo':1674 'comment':1824 'common':1692,2424,2842 'communic':84 'comparison':927 'complet':876 'complex':2011 'compon':1473,1492 'compound':1700,2291,2608 'comprehens':353 'compress':1963,2007,2728,2916 'compromis':445,1958 'concentr':389 'concept':1380,1409,1449,1521,1906,1921,2481 'concepts/launch-2026/bodies':1454 'concepts/launch-2026/hooks':1453 'conclus':921 'consequ':652 'consid':295,1079 'consider':2631,2645 'consist':631,1177,2303 'constraint':2362 'consum':2334 'consumer-styl':2333 'consumpt':1196 'content':881,1061 'context':2835 'contrarian':693,2090,2111,2130,2150 'convent':711,1457,2852 'convers':33,1936 'convert':11,202,430 'copi':594,1911,2336,2951 'core':1379,1520 'correl':1096,1206 'cost':98,1048,1094,1114,2529,3070,3077 'count':2871 'cover':223 'cpm':1801,2716 'creativ':3,9,39,44,48,55,59,66,78,101,109,124,184,190,194,199,211,272,279,285,299,323,332,343,387,395,571,585,1181,1309,1383,1390,1472,1737,1749,1792,1880,2096,2185,2430,2519,2559,2598,2634,2641,2653,2735,2938,2972,2990 'creator':2268 'criteria':2877 'cta':557,596,1288,1399,1502,1576,1622,1711,2076,2141,2156,2687,2953 'ctac':1481 'ctas':1418,1634,2250,2707 'ctr':422,1785,2609,2714 'cup':521 'curios':740 'custom':548,2172 'customer-styl':547 'cut':523,552,721,2124,2277 'cycl':192,1045,2775 'data':1469 'date':1452 'day':726,962,1512,1535,2490,2858 'deal':540 'decay':2610,2715 'decid':611,2968 'decis':1185,1886,2887 'declin':1786 'decomposit':1388 'deep':2008 'default':1779,2217,2275 'deliv':1815 'deliveri':2982,3020 'demonstr':1087,1279 'demystifi':963 'depend':2389 'descript':2357,2368,2380 'design':2637 'detail':263,632,1198,1733,1927,2178,2420 'detect':27,1739 'develop':4,45,1759 'diagnos':193 'diagnosi':219 'differ':62,329,380,566,568,570,1024,1027,1642,1717,1910,2163 'differenti':972 'dilut':34,126,1937,2034 'direct':665,1827,2088,2232 'disciplin':63,120,326,2050,2068,2526,2532 'discov':2619 'display':2386,2399 'disproportion':2971 'distinct':75,336 'distribut':573,3004 'diverg':459 'document':738 'doubl':866 'doubt':3042 'driven':2288 'drop':526,1670,1918 'drop-off':1669 'durat':2872 'dwell':1334 'earn':2410 'econom':1870 'educ':880,1060 'effort':388,572,2973,2991,3005,3014 'eight':2426 'either':2495 'els':2999 'emot':72,338 'end':560,1289 'engag':1175,1818,2311 'enough':788,3028 'equal':1422 'equiti':115 'erod':114 'especi':1122 'etc':1455 'evalu':946 'even':3006 'evergreen':1677 'everi':296,1999,2047,2278,2539 'everyth':1547,2998 'exampl':265,463,1474,1505,2080,2823,2860,2928 'exist':1167,2300 'expand':2500 'expect':703,2898 'expert':1967 'expir':2294 'explan':1806 'explicit':1777 'expos':1840,1847 'extra':1883 'facebook':2206 'fail':589,2948 'failur':391,2425 'fast':522,551,820,2123,2276,2295,2401 'fatigu':26,195,218,1738,1740,1765,2491,2711,2782,2881 'featur':1058 'feed':809,1084,1339,2211,2249 'feedback':1844,2719 'feel':647,1943,2166,2226,2348 'file':2815 'film':1120 'final':2626 'find':3035,3059 'fine':2332 'first':577,607,906,1012,1567,1587,2256,2575,2663,2964,2976 'first-person':905 'fit':1026,2674 'five':1534,1762,2475,2880 'fix':441,1954,2197 'flavor':536 'flow':810 'fold':2253 'forc':2029 'form':1351,1975,2020 'format':17,454,1022,1025,1188,1402,1421,1578,1650,1660,1667,1714,2448,2672,2709,2838,2926 'format-platform':2671 'format-specif':1666 'founder':482,674,2105 'four':1681,2925 'four-format':2924 'frame':2000,2048,2112,2540 'framework':2629,2760,2800 'frequenc':1767,1898,2713 'fresh':1796,1873 'front':1363 'front-load':1362 'game':617,2935,2944 'gap':741,753,757,2623 'generic':990 'get':475,505,1600,1630 'go':1675 'googl':2350,2385 'gradual':2612 'growth':275 'guidanc':148,1232 'half':1511,2857 'half-day':1510,2856 'hand':484 'hard':154,910 'harder':1813 'headlin':2355,2365,2376 'heard':709 'heavi':792 'hide':1836 'hierarchi':1956,2043,2213,2534 'high':1783,1856 'high-spend':1855 'higher':1092 'hit':829,2683 'hoc':2699 'hook':15,213,574,588,613,628,699,984,989,1017,1099,1245,1251,1393,1412,1496,1566,1571,1580,1598,1616,1625,1707,1908,2073,2131,2472,2478,2566,2578,2589,2661,2703,2819,2931,2940,2947,2994,3016,3037 'hooka':1479 'humor':2014 'idea':1069 'ident':76 'identif':681 'identifi':1494 'ignor':427 'imag':1035 'impress':600,787,1816,2957 'in-fe':1082,1337,2209,2247 'inact':3072 'increas':1802,1825,1838 'increment':2606 'indic':1764 'industri':1978 'industry-specif':1977 'instagram':1137,2208 'instead':2518 'instinct':877 'integr':256 'intent':830 'interest':1849 'interpret':233 'interrupt':515,797,823,1248 'irrever':1968 'irrit':1834 'isol':1556,1585 'job':1241 'join':1467,1488 'justifi':621 'kept':625 'kill':2573 'know':131 'land':1617,2028,2590 'languag':1987,2093,2110,2126,2149 'last':891,2159 'launch2026':1475 'layer':363,2013 'leadership':2343 'learn':1724 'leav':1153 'led':718,862 'length':2450,2896 'less':882 'lever':582,1584 'librari':1445,2854 'lift':793 'like':372,1116 'limit':1049,2359 'line':2258 'linkedin':2313 'list':869,2766 'live':1994 'load':1364 'logo':525,563,998,1292,2572,2580 'long':1350,1974,2019,3024 'long-form':1349,1973,2018 'longer':1326,1333,1795,2394 'look':371,1115 'lookalik':697 'lose':1551 'loss':2607 'louder':825 'low':1867 'lower':1112 'lowest':1046 'made':1715,2437 'make':747,3065 'manag':837,2136 'mani':2512 'manual':168,1382 'map':307 'margin':1645,3081 'market':276,746 'match':804,850,1187 'matrix':316,1432,1525,1528,2694,2847 'matrix-bas':2693,2846 'matter':94,1560 'mcp':262 'media':139,225,230 'medium':1863 'memor':71,335 'meta':501,900,1336,1477,1839,2119,2205,2549 'meta-reel':1476 'meta-styl':2548 'metaphor':2012 'methodolog':25,216,1541 'metric':330,1893,1916 'microsit':257 'miss':2813 'mistak':743,1693 'mix':95,2383,2659 'mode':392,947,1335,2324,2328 'moment':1272 'money':99 'monitor':2712 'month':341,898,1865,2752 'mood':493 'motion':1986 'multi':1057 'multi-featur':1056 'music':489,2287 'music-driven':2286 'name':650,1456,1461,1491,2650,2851 'narrat':418,1052,2009,2395 'narrow':687,1433,2493 'nativ':1140,1191,2190,2202,2225,2267,2563,2675,2745,2903 'native-aesthet':2902 'native-cr':2266 'native-feel':2224 'need':2023,2408,2461 'negat':1760,1823,1843,2718 'neither':402 'never':2596,3053 'new':535,958,1925 'next':1731,2412,2773 'non':2417 'non-skipp':2416 'none':2165 'norm':40,2186,2191,2553,2736,2792,2900 'number':728,861 'number-l':860 'object':2834 'off':1671 'off-brand':1944,2039,2167 'off-platform':2339 'offer':135,533,656,1033,1261 'often':714 'ok':2605 'old':2601 'onboard':956 'one':1068,1378,1519,1882,1926 'open':641,890,991,2151 'optim':69,79,327,333,344,2373,2655 'option':297,936 'ordinari':1118 'organ':1161,1168,1174,1447,2301,2310 'outperform':1178,1222,2304,3000 'output':2757 'overhead':1538 'overpay':2133 'pace':20,383,569,1076,1203,1209,1217,1226,2072,2317,2680 'paid':138,186,224,229,676,1180,2306 'paid-media-strategi':137,228 'pain':663 'pair':250 'part':155 'pass':2520 'past':605,768,1010,1298,2962 'pattern':16,214,514,575,629,796,818,875,975,979,1197,1247,2427,2820,2827,2907 'pattern-complet':874 'pay':833 'payoff':750,762 'per':1385,1772,1774,2480,2868,2892 'per-platform':2891 'per-stag':2867 'perfect':3051 'perform':13,57,58,77,104,108,123,237,298,320,342,413,424,503,584,1095,1154,1205,1237,1303,1308,1317,1340,1468,1891,2049,2067,2120,2195,2446,2459,2531,2541,2622,2647,2729,2937 'person':888,907 'phone':1219,2271,2561 'phone-shot':1218,2270,2560 'piec':2102 'pit':934 'pitch':781,2347 'placement':2077,2391 'plain':2092,2109,2125,2148 'plain-languag':2091 'plan':188,2764,2803,2806 'platform':37,260,806,1031,1143,1190,1314,1324,1808,2183,2188,2201,2341,2382,2552,2673,2734,2742,2790,2893 'platform-n':2200 'platform-specif':36,259,2182,2789 'play':1965 'playbook':51 'plus':1249,1394,1397,1626,2207,2356,2492 'polish':2557 'poor':1225 'poorly-pac':1224 'post':1169,2302 'pour':487 'practition':305 'pre':842 'pre-qualifi':841 'precondit':2811 'premium':465 'price':538 'primari':1145 'problem':638,644,1270 'problem-agitate-solv':637 'problem-solut':1269 'process':953,969 'produc':7,53,90,122,182,273,284,449,1229,1371,1515,1722,1871,2033,2199 'product':159,212,313,885,1047,1059,1093,1113,1212,1513,2227,2230,2346,2431,2551,2635,2746,2763,2849 'production-readi':312 'profession':2314 'progress':2155 'project':836,2135 'promis':748 'promot':1165 'prompt':266 'proof':545,771,785,1110,1277 'prop':1040,1360,2140,2154,2682 'proposit':1267 'pull':1485 'purchas':1080 'pure':1179,2305 'put':2986,3010 'qualifi':843 'qualiti':1100 'queri':854 'question':827,840,849 'quick':1043 'ran':2443 'rate':1845,1850 'rather':2325 'ratio':1837,2895 'reach':2292 'read':2037,2337 'readi':314 'real':736,759,852,918,1723,1742,2361,3074 'reason':2840 'recogn':437,661 'recommend':2837 'recov':598,2955 'recur':2428 'reel':502,815,1127,1130,1478,2238 'refer':2814 'references/brand-voice-performance-balance.md':2180,2181,2908,2909 'references/creative-variation-templates.md':1507,1508,2844,2845 'references/fatigue-detection-checklist.md':1929,1930,2878,2879 'references/format-decision-matrix.md':1200,1201,2830,2831 'references/hook-pattern-library.md':634,635,2816,2817 'references/platform-creative-norms.md':2422,2423,2889,2890 'references/testing-cadence-playbook.md':1735,1736,2861,2862 'reflect':366 'refresh':1686,1851,2597,2618,2748,2786,2886 'regist':1262 'reject':2556 'relev':255,925 'render':1655 'report':1487 'repurpos':2204 'requir':1533,2016 'research':2323 'resolv':1311 'reson':73,339 'respect':453,2795 'respons':277,2233,2370 'rest':2980 'result':232,717,734 'result-l':716 'retain':1173,2309 'retarget':1041 'retir':1919 'return':904 'revis':2804 'reward':2374 'rise':518 'ritual':488 'roa':868 'room':1050 'rotat':1678,1685,2483 'rsa':2369 'rule':1186 'run':102,110,408,468,497,675,1443,1683,1878,2094,2515,2780 'runtim':2026 'saa':1064 'salesi':2349 'satur':1805,2473 'scale':14,287 'scene':952 'screen':2129 'scroll':83,347,511,604,767,1009,2327,2667,2961 'scroll-stop':346,2666 'search':853,1636,2351,2371 'second':88,351,356,412,471,500,507,529,542,555,579,608,1013,1236,1300,1322,1951,2099,2118,2282,2413,2464,2577,2583,2593,2665,2686,2915,2965,2978 'see':136,149,1746 'seen':2175 'select':18,1023 'self':680,690 'self-awar':689 'self-identif':679 'senior':47,304 'sentenc':1971 'sequenti':23,1539,1554,1718,2516,2701,2863,3056 'serious':1966 'session':1514 'set':491,1776,2602 'setup':2017 'shape':301 'share':362,456 'ship':166,241,1430,1901,1923,2474,2496,2770,2801,3027,3043,3049,3066,3079 'shop':558 'short':1344,1970,2434,2740 'short-video':2739 'shot':1220,2272,2562 'show':1280,2057,2069 'signal':1176,1553,1763,1819,1829,2312,2882 'simpl':1038 'simultan':2513 'six':1750 'skill':117,181,205,209,252 'skill-ads-creative-development' 'skip':912,1147 'skippabl':2405,2418 'slight':2089 'slow':486,1000 'slow-pour':485 'slower':1720,2316 'small':3084 'smaller':1635 'snap':1139 'social':544,770,1109,1276 'softwar':838,2137 'solut':1271 'solv':640,653 'sound':2222,2290 'sound-off':2221 'source-rampstackco' 'space':1637 'span':210 'spark':1158,2296 'specif':38,261,727,729,908,1231,1668,1979,2138,2184,2669,2791 'spend':1857,1864,1868,2754,2969 'spot':1230 'squeez':1948 'stage':1640,2869 'start':2568 'static':1034,1664,2143 'steam':517 'step':1563 'still':1361,1895,2603 'stop':81,348,509,695,2132,2486,2668,2808 'stori':889,916,1088,1128,2240 'storytel':2021 'strategi':140,226,231 'strategist':49 'strength':2074,2662 'strong':417,1077,1097,1123,1896 'structur':382,460,567,1446,1460,1909,2053,2164,2465,2544,2732,2855 'studio':2229 'style':549,1103,1192,2335,2404,2550 'surfac':1146 'surpris':799 'surviv':1962,1989,2006,2727,2913 'sustain':2633 'swipe':1071 'system':22,1366,1462,2692,2850,3064 'systemat':158,1368 'tabl':1157 'tactic':291 'talk':2106 'tank':2194 'team':778,1440,1545,1702,1726,2614,2984,3002,3008 'tell':1284,1704 'ten':2477 'tension':1939 'territori':1307 'test':24,163,191,215,280,1044,1540,1546,1555,1565,1593,1609,1623,1651,1694,2507,2517,2702,2774,2777,2864,3032,3057 'testimoni':550 'text':2353 'text-on':2352 'textur':1997 'theoret':1424 'thought':2342 'three':87,546,2095,2177,2796 'threshold':2783,2884 'tier':2755 'tiktok':813,1125,1136,1164,1183,1316,1846,2261,2545,2555 'time':1239,1410,1413,1416,1419,1751 'timefram':730 'tire':831,1879 'titl':1003 'today':993 'toler':1325,2318 'tone':1964,2060,2315 'top':773,1594,1624,1652,1673,1890 'topic-agent-skills' 'topic-anthropic' 'topic-awesome-claude-code' 'topic-awesome-claude-prompts' 'topic-awesome-claude-skills' 'topic-claude' 'topic-claude-code' 'topic-claude-skills' 'topic-good-first-issue' 'topic-mcp' 'topic-product-management' 'topic-seo' 'train':432,763,1005 'treat':1403 'treatment':1983,2065 'tree':1887,2888 'trend':2289,2717 'tri':396 'trigger':41,678,870,2785 'trust':1107 'tune':1754 'twelv':627,2818 'two':325,935,1679 'type':858,1985 'ugc':1102 'ugc-styl':1101 'underperform':2524 'use':179,227,234,246,696,774,1458,1523,2469,2547 'user':602,624,1070,1119,1773,1828,2219,2959 'usual':808,1644,1781,2503 'v1':1482 'valid':779 'valu':85,352,1039,1213,1266,1359,2139,2153,2681 'variabl':1407,1558,1696,2514 'varianc':1699 'variant':1572,1605,1874,1902,2479,2498,2870,3045,3048,3052,3082 'variat':21,161,315,1315,1365,1376,1386,1425,1438,1517,1532,2377,2510,2691,2768,2794,3029,3063 'version':2035,2435 'vertic':1131,1150,1661,2234,2262,2737 'video':19,406,1081,1104,1202,1204,1221,1238,1304,1662,2441,2455,2741 'violat':702,2192,2554 'visual':513,795,800,1246,1913,1982,2064,2212 'vocabulari':1976,2062,2330 'voic':30,147,152,244,249,289,368,429,457,565,1933,1941,1959,2001,2045,2056,2084,2162,2537,2723,2725,2910 'vs':321,929,1972,2648,2917 'wait':1021 'walk':2642 'warm':2086 'watch':626,1613,2220 'waterfal':1543,2778,2865,3033,3058 'way':1369 'weak':3047 'weaken':1821 'week':1753,1775,1788,1790,1853,1884,2750 'well':403,1216 'well-pac':1215 'whether':1705 'whole':616,2934,2943 'whose':2083 'win':1498,2564 'window':1240 'winner':1589,1619,1647,1682,2875,3061 'winner-advanc':2874 'wisdom':712 'within':2684 'without':32,125,167,761,1381,1526,1803,1935 'work':68,462,630,657,682,704,731,754,782,811,846,878,913,933,940,965,966,1504,2079,2345,2432,2487,2604,2822,2859,2927,3039 'world':479,995 'wors':1758 'worth':1429 'wrong':2447,2536 'x':928 'y':930 'year':892 'youtub':472,1343,1352,2100,2388,2392,2406 'zero':421 'zoom':1001","prices":[{"id":"6dbe2d98-6fdf-474e-89e4-177a01af2c24","listingId":"539235d2-cb44-44a3-b1ef-dd3a9078c14a","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"rampstackco","category":"claude-skills","install_from":"skills.sh"},"createdAt":"2026-05-05T18:56:09.585Z"}],"sources":[{"listingId":"539235d2-cb44-44a3-b1ef-dd3a9078c14a","source":"github","sourceId":"rampstackco/claude-skills/ads-creative-development","sourceUrl":"https://github.com/rampstackco/claude-skills/tree/main/skills/ads-creative-development","isPrimary":false,"firstSeenAt":"2026-05-05T18:56:09.585Z","lastSeenAt":"2026-05-18T18:55:11.818Z"}],"details":{"listingId":"539235d2-cb44-44a3-b1ef-dd3a9078c14a","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"rampstackco","slug":"ads-creative-development","github":{"repo":"rampstackco/claude-skills","stars":181,"topics":["agent-skills","anthropic","awesome-claude-code","awesome-claude-prompts","awesome-claude-skills","claude","claude-code","claude-skills","good-first-issue","mcp","product-management","seo","show-hn","showcase","showdev","web-design","web-development"],"license":"mit","html_url":"https://github.com/rampstackco/claude-skills","pushed_at":"2026-05-10T22:40:22Z","description":"Stack-agnostic Claude Skills covering the full website lifecycle: brand, design, content, SEO, dev, ops, growth, and research. Build, ship, audit, optimize.","skill_md_sha":"7fb0a7b41c5fc4028b8b8246d481f6c19cb12de0","skill_md_path":"skills/ads-creative-development/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/rampstackco/claude-skills/tree/main/skills/ads-creative-development"},"layout":"multi","source":"github","category":"claude-skills","frontmatter":{"name":"ads-creative-development","description":"How to produce ad creative that converts at performance scale. Hook patterns, format selection, video pacing, variation systems, sequential testing methodology, fatigue detection, brand-voice alignment without conversion dilution, and platform-specific creative norms. Triggers on ad creative, ad design, hook patterns, ad video pacing, creative testing, ad variations, creative refresh, creative fatigue, refresh ad creative, video ads for Meta, TikTok creative, LinkedIn ad creative, ad asset library. Also triggers when a team is producing creative at scale, planning a creative test cycle, or auditing why creative is not converting."},"skills_sh_url":"https://skills.sh/rampstackco/claude-skills/ads-creative-development"},"updatedAt":"2026-05-18T18:55:11.818Z"}}