Skill Purpose
Generate 10+ production-ready ad copy variations for a specified ad platform. Each ad is written to the platform’s exact specifications (character limits, format requirements, best practices), includes A/B variations, and uses proven direct-response copywriting frameworks. The output is ready to copy and paste—a media buyer can enter the text directly into the ad platform without editing.
When to Use
- The user runs
/ads copy <plataforma> - The user requests ad copy generation for a specific platform
- Called as a subagent from
/ads strategy(the main orchestrator) - The user needs ready-to-use ad copy for any major ad platform
- The user wants multiple copy variations for A/B testing
Entry Requirements
- Required: Destination platform (google, meta, linkedin, tiktok, youtube, pinterest)
- Required: Business context — a URL for analysis or previous audience/strategy data
- Optional: Specific product/service to advertise, target audience persona, offer/promotion details, tone preferences
Supported Advertising Platforms and Formats
Google Ads
| Format | Titles | Descriptions | Other |
|---|---|---|---|
| Responsive Search Ad (RSA) | Up to 15 headlines (30 characters each) | Up to 4 descriptions (90 characters each) | Display URL paths (15 characters each) |
| Display ad | 1–5 headlines (30 characters), 1 long headline (90 characters) | 1–5 descriptions (90 characters) | Company name (25 characters) |
| Performance Max | 5 headlines (30 characters), 5 long headlines (90 characters) | 5 descriptions (90 characters) | Call-to-Action Text |
Meta (Facebook/Instagram)
| Format | Primary Text | Title | Description | Other |
|---|---|---|---|---|
| Facebook Feed | 125 characters (visible), 500+ allowed | 40 characters | 30 characters | CTA button |
| Instagram Feed | 125 characters (visible), max. 2200 | 40 characters | N/A | CTA button |
| Stories/Reels | Minimal overlay text | Short overlay text | N/A | Swipe-up CTA |
| Format | Introductory Text | Title | Description | Other |
|---|---|---|---|---|
| Sponsored Content | 150 characters (truncated), max. 600 | 70 characters | 100 characters (optional) | CTA button |
| Message Ads | Subject: 500 characters, body: 1500 | N/A | N/A | CTA button + banner |
| Text Ads | N/A | 25 characters | 75 characters | 50x50 image |
TikTok
| Format | Ad Copy | Display Name | Other |
|---|---|---|---|
| In-Feed | 100 characters | 40 characters | CTA button, hashtags |
| TopView | 100 characters | 40 characters | First ad seen by users |
| Spark Ads | Use the original post caption | Original creator | Promote existing content |
YouTube
| Format | Script Duration | On-Screen Text | Other |
|---|---|---|---|
| Bumper Ad (6s) | ~15-20 words | 1–2 overlapping texts | Not skippable |
| Pre-roll (15s) | ~35-45 words | 2–3 overlapping texts | Skippable after 5s |
| Not skippable (30s) | ~70-90 words | 3-5 overlapping texts | Not skippable |
| Format | Title | Description | Other |
|---|---|---|---|
| Standard Pin | 100 characters | 500 characters | Link URL |
| Video Pin | 100 characters | 500 characters | Link URL |
| Carousel | 100 characters per card | 500 characters | 2–5 cards |
How to Run
Step 1: Gather Business Context
If a URL is provided, retrieve it using WebFetch and extract:
- Business name and industry
- Core value proposition
- Main products/services and pricing
- Target Audience Indicators
- Brand voice and personality
- Unique selling points (USPs)
- Social proof elements (reviews, number of customers, years in business)
- Current Offers or Promotions
If audience data from a previous run of /ads audience, refer to the primary personas.
Run supplementary research:
WebSearch: "[Nome da Empresa]" ads OR advertising
WebSearch: "[Setor]" best performing ad copy examples
WebSearch: "[Setor]" [plataforma] ad examplesStage 2: Define Copy Inputs
Before writing any listing, establish these fundamentals:
## Fundação da Copy
**Negócio:** [Nome]
**Setor:** [Categoria]
**Plataforma:** [Plataforma selecionada]
**Oferta Principal:** [O que estão vendendo/promovendo]
**USP:** [O que os torna diferentes — o principal diferencial]
**Persona Alvo:** [Persona principal da pesquisa de público]
**Ação Desejada:** [O que queremos que o espectador FAÇA]
**Tom:** [Profissional / Casual / Ousado / Lúdico / Urgente / Autoritativo]
**Pontos de Prova:** [Estatísticas, depoimentos, prêmios, número de clientes, resultados]
**Preço/Oferta:** [Preços, desconto, teste grátis, consulta gratuita]Stage 3: Generate Ad Variations Using 4 Copywriting Frameworks
For each ad, apply one of the four frameworks:
Framework 1: PAS (Problem-Agitate-Solve)
- Problem: State the pain the audience feels
- Agitate: Twist the knife — make them feel the cost of inaction
- Resolve: Present the product/service as the relief
Framework 2: AIDA (Attention-Interest-Desire-Action)
- Attention: Bold opening that stops the scroll
- Interest: Interesting fact, story, or angle that draws them in
- Desire: Paint the outcome — what life is like after the purchase
- Action: Clear and compelling CTA
Framework 3: BAB (Before-After-Bridge)
- Before: Your current painful situation
- Then: The transformed state they want
- Bridge: The product/service that gets them there
Framework 4: 4Ps (Promise-Picture-Proof-Push)
- Promise: Bold claim or guarantee
- Image: Vivid Image of the Result
- Proof: Evidence (testimonial, statistic, case study)
- Boost: Urgency or scarcity to act now
Step 4: Write Platform-Specific Ads
Generate at least 10 ad variations with A/B pairs for each. Use this structure:
Ad Variation Template (Google RSA Example)
### Anúncio [Número] — [Framework Usado] | Ângulo: [Dor/Benefício/Prova Social/Urgência]
**Versão A:**
| Elemento | Copy | Caract. |
|---|---|---|
| Título 1 | [texto do título] | [contagem]/30 |
| Título 2 | [texto do título] | [contagem]/30 |
| Título 3 | [texto do título] | [contagem]/30 |
| Descrição 1 | [texto da descrição] | [contagem]/90 |
| Descrição 2 | [texto da descrição] | [contagem]/90 |
| Caminho de Exibição 1 | [texto do caminho] | [contagem]/15 |
| Caminho de Exibição 2 | [texto do caminho] | [contagem]/15 |
| CTA | [chamada para ação] | — |
**Versão B (Variação A/B):**
| Elemento | Copy | Caract. |
|---|---|---|
| Título 1 | [título alternativo] | [contagem]/30 |
| Título 2 | [título alternativo] | [contagem]/30 |
| Título 3 | [título alternativo] | [contagem]/30 |
| Descrição 1 | [descrição alternativa] | [contagem]/90 |
| Descrição 2 | [descrição alternativa] | [contagem]/90 |
| Caminho de Exibição 1 | [texto do caminho] | [contagem]/15 |
| Caminho de Exibição 2 | [texto do caminho] | [contagem]/15 |
| CTA | [chamada para ação] | — |
**Por que funciona:** [2-3 frases explicando a psicologia e o ângulo]
**Melhor para:** [qual persona de público / etapa do funil]
**Nota de teste:** [o que está sendo testado entre A e B]Ad Variation Template (Meta Example)
### Anúncio [Número] — [Framework Usado] | Ângulo: [Dor/Benefício/Prova Social/Urgência]
**Versão A:**
| Elemento | Copy | Caract. |
|---|---|---|
| Texto Principal | [copy completa do anúncio — pode ser multi-linha, incluir emojis onde apropriado] | [contagem] |
| Título | [texto do título] | [contagem]/40 |
| Descrição | [texto da descrição] | [contagem]/30 |
| Botão de CTA | [Comprar Agora / Saiba Mais / Inscreva-se / Receber Oferta / Agendar / Fale Conosco] | — |
**Versão B (Variação A/B):**
| Elemento | Copy | Caract. |
|---|---|---|
| Texto Principal | [copy alternativa] | [contagem] |
| Título | [título alternativo] | [contagem]/40 |
| Descrição | [descrição alternativa] | [contagem]/30 |
| Botão de CTA | [CTA alternativo] | — |
**Por que funciona:** [explicação]
**Melhor para:** [persona / etapa do funil]
**Nota de teste:** [o que está sendo testado]Step 5: Distribute Ads Across Frameworks and Angles
Ensure the 10+ ads are distributed across frameworks and angles:
| # | Framework | Angle | Funnel Stage |
|---|---|---|---|
| Announcement 1-2 | PAS | Pain/Problem | TOFU (awareness) |
| Announcement 3-4 | AIDA | Benefit/Transformation | TOFU (awareness) |
| Ad 5-6 | BAB | Before/After | MOFU (consideration) |
| Ad 7-8 | 4Ps | Social Proof/Authority | MOFU (consideration) |
| Ad 9-10 | PAS | Urgency/Scarcity | BOFU (conversion) |
| Announcement 11-12 | AIDA | Objection Handling | BOFU (conversion) |
Step 6: Platform-Specific Best Practices
Include a best practices section at the end of the output:
Google Ads:
- Pin Headline 1 with the brand name or main keyword for RSAs
- Use keyword insertion syntax: {KeyWord:Default Text}
- Include numbers and percentages (they increase CTR)
- Each title should make sense on its own and in combination
- Use at least 1 headline with a CTA, 1 with a benefit, and 1 with a keyword
Meta (Facebook/Instagram):
- The first line must grab attention — only 125 characters appear before "See More"
- Use line breaks and emojis to improve readability
- Social proof in the main copy outperforms features
- Questions as headlines generate 30-50% more engagement
- Stories Ads: keep text to a minimum and let the visuals carry the message
LinkedIn:
- Professional but not boring tone — conversational authority works best
- Statistics and data outperform emotional appeals
- Tag company pages in Sponsored Content for social proof
- Message Ads: personalize the subject line and keep the body under 500 words
- Questions in the intro text generate 50% more clicks
TikTok:
- Write like a creator, not a brand
- Use trending language and a casual tone
- Hashtag strategy: 3-5 relevant hashtags, 1 branded hashtag
- Spark Ads (boosting organic posts) outperform traditional ads 2:1
- The first 2 seconds determine whether they watch or scroll
YouTube:
- Bumper (6s): One message, one visual, one CTA—that’s it
- Pre-roll (15s): Grab attention in the first 5 seconds before the skip button appears
- Include a clear verbal CTA + on-screen CTA
- Cards and end screens extend engagement
Pinterest:
- Use keyword-rich descriptions (Pinterest is a search engine)
- Descriptions of 500 characters perform best
- Include prices in Pin titles when relevant
- Vertical format (2:3 aspect ratio) gets 60% more engagement
- Call-to-action language increases clicks by 70%
Step 7: Headline Bank
Include a supplementary title bank organized by angle:
## Banco de Títulos (Referência Rápida)
### Títulos Orientados a Benefícios
1. [título] ([contagem de caracteres])
2. [título] ([contagem de caracteres])
3. [título] ([contagem de caracteres])
4. [título] ([contagem de caracteres])
5. [título] ([contagem de caracteres])
### Títulos de Pontos de Dor
1. [título] ([contagem de caracteres])
2. [título] ([contagem de caracteres])
3. [título] ([contagem de caracteres])
4. [título] ([contagem de caracteres])
5. [título] ([contagem de caracteres])
### Títulos de Prova Social
1. [título] ([contagem de caracteres])
2. [título] ([contagem de caracteres])
3. [título] ([contagem de caracteres])
### Títulos de Urgência/Escassez
1. [título] ([contagem de caracteres])
2. [título] ([contagem de caracteres])
3. [título] ([contagem de caracteres])
### Títulos de Pergunta
1. [título] ([contagem de caracteres])
2. [título] ([contagem de caracteres])
3. [título] ([contagem de caracteres])Output Format
Save the complete output to ADS-COPY-[PLATAFORMA].md in the current working directory.
Replace [PLATAFORMA] by the platform's actual name in uppercase: GOOGLE, META, LINKEDIN, TIKTOK, YOUTUBE, PINTEREST.
File structure:
# Texto Publicitário — [Plataforma]: [Nome do Negócio]
> Gerado em [data] | Fonte: [URL]
> Plataforma: [Plataforma] | Formatos: [lista de formatos de anúncio cobertos]
> Mistura de Estruturas: PAS, AIDA, BAB, 4Ps
## Base do Texto
[seção de entradas para o texto]
## Variações de Anúncios
### Anúncio 1 — [Estrutura] | [Ângulo]
[anúncio completo com variação A/B]
### Anúncio 2 — [Estrutura] | [Ângulo]
[anúncio completo com variação A/B]
[...continuar para todos os 10+ anúncios]
## Banco de Títulos
[coleção organizada de títulos]
## Boas Práticas da Plataforma
[dicas específicas da plataforma]
## Próximos Passos
1. Carregar os anúncios no Gerenciador de Anúncios da [Plataforma]
2. Configurar testes A/B: começar com Anúncio [X]a vs Anúncio [X]b
3. Executar `/ads hooks` para gerar aberturas adicionais que prendam a atenção
4. Executar `/ads video <produto>` se anúncios em vídeo forem necessários
5. Monitorar o CTR nas primeiras 72 horas e pausar os de baixo desempenho em [limite]Quality Checklist
Before delivering the output, verify:
- [ ] At least 10 ad variations generated
- [ ] Each ad has an A/B variation
- [ ] All character counts within platform limits
- [ ] Character counts are displayed next to each text element
- [ ] All 4 copy frameworks represented
- [ ] Ads cover the TOFU, MOFU, and BOFU stages of the funnel
- [ ] Each ad includes an explanation of “why this works”
- [ ] Platform-specific formatting is correct (emojis for Meta, professional tone for LinkedIn, etc.)
- [ ] CTA buttons/text match the platform options
- [ ] The headline bank is included
- [ ] The best practices section is included
- [ ] The output file is named correctly: ADS-COPY-[PLATAFORMA].md
Text Quality Standards
Each piece of ad copy must follow these rules:
- Specific instead of vague — "Save 3 hours a week" beats "Save time"
- Numbers beat words — "4.9-star rating" beats "Highly rated"
- You instead of us — "You’ll get..." beats "We offer..."
- Active voice only — "Cut your costs by 40%" beats "Costs can be reduced"
- One CTA per ad — Never split attention between two actions
- Proof over claims — "Trusted by over 10,000 companies" beats "The best solution"
- Benefit Instead of Feature — "Sleep better tonight" beats "Memory foam mattress"
- Platform-native tone — TikTok sounds like a friend, LinkedIn sounds like a thought leader, Google sounds like an answer
--- skills/ads-landing/SKILL.md ---
name: ads-landing description: Landing Page Audit and Optimizer. Analyzes landing pages for ad-to-page alignment, message match, CTA clarity, trust signals, mobile optimization, and form friction. Generates specific rewrite suggestions with before/after copy, or builds a complete landing page outline from scratch.