Strategic Paid Advertising Plan skill

Strategic paid advertising planning with industry-specific templates.

by naveedharri·MIT license·GitHub ↗

★ 65 Stars on the repo·Checked

npx degit naveedharri/benai-skills/plugins/ads/skills/ads-plan#develop ~/.claude/skills/ads-plan-2

SKILL.md · 19.4 KB · names 6 other files — download is this file only · installs the whole folder to ~/.claude/skills/ads-plan-2

Files of Strategic Paid Advertising Plan

Files 1 file
Show the full text488 lines

Strategic Paid Advertising Plan

Process

0. Brand Context Setup

Check for ./branding.md in the project root.

If found: Load brand identity, voice, audience, visual guidelines, competitor positioning. Confirm with the user: "I found your brand context (branding.md). Using it for this plan." Skip to step 1.

If not found: Collect brand context before proceeding. This information shapes every downstream step — platform selection, creative strategy, audience targeting, and budget allocation.

"Before building your ad strategy, I need to understand your brand. What's your brand name and website URL?"

0.1 — Brand Identity + Website (required)

Ask for the brand name and website URL first. If the user provides a URL, immediately run the full website extraction (step 0.2) before asking any further questions. Everything that can be extracted from the website should be extracted — never ask the user for information that's already on their site.

Also collect (if not already clear from the website):

  • Industry
  • Business model (SaaS, e-commerce, service, B2B, B2C, hybrid)
0.2 — Website Extraction (when URL provided)

This is the most important part of brand context setup. Do not guess or assume anything. Extract the actual values the business uses on their live website.

0.2a — Fetch the homepage

Use WebFetch on the homepage URL. Instruct it to extract ALL of the following:

Visual identity:

  • All colors used prominently: backgrounds, buttons, headers, links, text, borders, footer. Report exact hex values. Identify which is primary (most prominent brand color, usually on CTAs and headers), secondary, accent, background, and text color.
  • Font families: read the actual font-family declarations used on headings and body text. Look in CSS, <link> tags for Google Fonts / Typekit / custom font URLs, and inline styles. Report the exact font names (e.g., "Plus Jakarta Sans", "DM Sans", "Geist"), not generic fallbacks like "sans-serif".
  • Logo: describe the logo from the header/nav. Note if it's text-based, icon-based, or both.
  • Visual style: describe what you observe — is it minimal with lots of whitespace? Bold with saturated colors? Dark mode? Gradient-heavy? Illustration-driven? Corporate?
  • Button styles: rounded, square, pill-shaped? What color? What text color on buttons?
  • Spacing and density: tight and information-dense, or airy and spacious?

Copy and messaging:

  • Tagline / slogan: extract from the hero section
  • Hero headline: the main H1 or hero text
  • Value proposition: what the homepage says they do and why it matters
  • Key benefits: any benefit sections, feature highlights, or selling points
  • Social proof: testimonials, customer logos, metrics ("10,000+ customers"), awards, trust badges, star ratings
  • CTAs: every call-to-action button text on the page (e.g., "Get Started Free", "Book a Demo", "See Pricing")
  • Navigation items: main nav labels reveal product/service categories and priorities

Brand voice signals:

  • Tone of the copy: formal or casual? Technical or plain? Playful or serious?
  • Person: first person ("We help...") or second person ("You can...") or third?
  • Specific words/phrases: any repeated brand language, trademarked terms
0.2b — Fetch additional pages (if needed)

If the homepage alone doesn't give a complete picture, also fetch:

  • /about or /about-us — for company story, mission, team info, more voice signals
  • /pricing — for pricing model (free trial, freemium, contact-us, subscription tiers)

Only fetch these if there are genuine gaps after the homepage. Don't fetch for the sake of it.

0.2c — Present extraction to user

Show the user everything extracted, organized clearly:

Here's what I found on [website]:

  Brand: [name]
  Tagline: "[extracted tagline]"
  Industry: [detected industry]
  Business model: [detected model]

  Colors:
    Primary:    [name] #[hex] — used on [CTAs, headers, etc.]
    Secondary:  [name] #[hex] — used on [subheadings, etc.]
    Accent:     [name] #[hex] — used on [highlights, badges, etc.]
    Background: #[hex]
    Text:       #[hex]

  Fonts:
    Headings: [exact font name]
    Body:     [exact font name]

  Visual style: [description of what you observed]
  Button style: [pill/rounded/square], [color], [hover behavior if visible]

  Voice: [formal/casual], [serious/playful], [technical/simple]
  Hero: "[exact hero headline]"
  Value prop: "[extracted value proposition]"
  CTAs found: "[CTA 1]", "[CTA 2]", "[CTA 3]"
  Social proof: [what's shown — logos, metrics, testimonials]

Does this look right? Anything to correct or add?

The user confirms or corrects. Only after confirmation, proceed with remaining questions.

0.3 — Fill gaps with questions

After the website extraction, only ask about things that could not be determined from the website. Skip any section where the website gave a clear answer.

Likely still needed (websites rarely cover these):

Target audience specifics:

  • Who is your primary customer? (job title/role, age range)
  • What are their biggest pain points?
  • What motivates them to buy?
  • Where do they spend time online?
  • Secondary audience?

Competitor positioning:

  • Who are your top 2-3 competitors?
  • How are you different from each? (If skipped, note: "To be completed — run /ads-competitor for analysis.")

Ad-specific guidelines:

  • Preferred CTAs (pre-fill from extracted CTAs, ask user to confirm/adjust)
  • Show pricing in ads?
  • Required elements? (trust badges, ratings, certifications)
  • Anything forbidden in ads?

Brand voice refinement (if the website extraction was ambiguous):

  • Words or phrases you always use?
  • Words or phrases you never use?

Do NOT ask about colors, fonts, tagline, visual style, or value proposition if the website extraction already captured them. Only ask if the extraction was inconclusive.

0.4 — No-URL fallback

If the user does not provide a website URL, fall back to asking all questions manually:

Visual identity:

  • Brand colors (primary, secondary, accent — hex codes)
  • Headline and body fonts
  • Visual style description
  • Logo description

Copy and messaging:

  • Tagline or slogan
  • One-sentence value proposition
  • Top 3 benefits with proof points
  • Social proof highlights

Brand voice:

  • Formal vs casual (1-10)
  • Serious vs playful
  • Technical vs simple
  • Brand words (always use)
  • Forbidden words (never use)

Target audience, competitor positioning, and ad guidelines — same as step 0.3.

0.5 — Save branding.md

Write ./branding.md in the project root using the canonical format from ads/references/brand-context.md.

Every value in branding.md must come from the website extraction or the user's direct answers. Never fill in defaults or placeholders. If a field has no data, leave it blank or omit the section entirely.

Validate before writing:

  • Brand name is not empty
  • At least one color with hex value exists
  • At least one audience description exists
  • Business model is identified

Display summary:

Brand context saved: ./branding.md

  Brand: [name]
  Industry: [industry]
  Voice: [tone summary]
  Audience: [persona summary]
  USP: [one-line value prop]
  Colors: [primary hex] [secondary hex] [accent hex]
  Fonts: [heading font] / [body font]

Now building your ad strategy...

Note: Many of these answers feed directly into step 1 (Discovery) — do not re-ask questions the user already answered. Carry forward business type, audience, goals, and budget context.

1. Discovery
  • Carry forward from step 0: business type, target audience, value proposition
  • Current advertising status (active platforms, spend, performance)
  • Goals: brand awareness, lead generation, e-commerce sales, app installs
  • Budget range (monthly/quarterly)
  • Timeline and urgency
  • In-house team capacity vs agency needs
2. Competitive Analysis
  • Identify top 3-5 competitors
  • Analyze their ad presence across platforms (Google Ads Transparency, Meta Ad Library)
  • Estimate competitor spend levels and platform mix
  • Identify messaging themes and creative approaches
  • Note keyword/audience gaps (opportunities competitors are missing)
3. Platform Selection
  • Load industry template from assets/ directory
  • Match business type to recommended platform mix
  • Read ads/references/budget-allocation.md for platform selection matrix
  • Read ads/references/conversion-tracking.md for tracking setup requirements
  • Assess platform fit based on:
    • Target audience demographics per platform
    • Product/service type suitability
    • Budget requirements per platform (minimums)
    • Sales cycle length and attribution needs
    • Creative capabilities and content availability
4. Campaign Architecture
Naming Convention
[Platform]_[Objective]_[Audience]_[Geo]_[Date]

Example: META_CONV_Prospecting_US_2026Q1

Campaign Structure Template
Account
├── Brand Campaign (always-on, protect brand terms)
├── Non-Brand Prospecting
│   ├── Campaign 1: [Top Funnel - Awareness]
│   │   ├── Ad Group/Set 1: [Audience A]
│   │   └── Ad Group/Set 2: [Audience B]
│   ├── Campaign 2: [Mid Funnel - Consideration]
│   │   ├── Ad Group/Set 1: [Interest-based]
│   │   └── Ad Group/Set 2: [Lookalike/Similar]
│   └── Campaign 3: [Bottom Funnel - Conversion]
│       ├── Ad Group/Set 1: [High-intent]
│       └── Ad Group/Set 2: [Custom audience]
├── Retargeting
│   ├── Website Visitors (7-30 days)
│   ├── Engaged Users (video views, social engagement)
│   └── Cart Abandoners / Form Starters
└── Testing
    └── New audiences, formats, or messaging
5. Budget Planning
Monthly Budget Distribution

Read ads/references/budget-allocation.md for the 70/20/10 framework.

Tier Allocation Purpose
Proven (70%) Primary platforms with proven ROI Revenue engine
Scaling (20%) Platforms showing promise Growth engine
Testing (10%) New platforms or strategies Innovation
Budget Pacing
  • Month 1-2: heavy testing, expect higher CPA (learning)
  • Month 3-4: optimize based on data, tighten targeting
  • Month 5-6: scale winners, kill losers, expand
  • Ongoing: 70/20/10 maintenance with quarterly reviews
6. Creative Strategy
Content Pillars
  • Pain Point: address specific problems your audience faces
  • Social Proof: testimonials, case studies, reviews
  • Product Demo: show the product/service in action
  • Offer: promotions, free trials, lead magnets
  • Education: teach something valuable related to your product
Creative Production Plan
Priority Asset Type Platforms Quantity
P1 Product/service videos (15-30s) Meta, TikTok, YouTube 5-10
P2 Static images with copy Google, Meta, LinkedIn 10-15
P3 Carousel/collection Meta, LinkedIn 3-5
P4 UGC/testimonial video TikTok, Meta 3-5
P5 Long-form video (1-3 min) YouTube 2-3
Brand-Aware Creative Production

If branding.md is available, personalize CREATIVE-BRIEF.md with:

  • Ad copy written in brand voice (tone dimensions from Brand Voice section)
  • Visual descriptions referencing brand colors (hex values) and typography
  • CTAs pulled from approved CTA list (Ad-Specific Guidelines)
  • Headlines using brand words; avoiding forbidden words
  • Audience messaging mapped to primary/secondary persona pain points
  • Competitor differentiation woven into positioning

Read ads/references/creative-volume.md for per-platform volume requirements.

7. Tracking Setup Plan

Before launching any ads, ensure tracking is configured:

Platform Client-Side Server-Side Priority
Google gtag.js Enhanced Conversions, GTM SS P1
Meta Pixel CAPI P1
LinkedIn Insight Tag CAPI (2025) P2
TikTok Pixel Events API + ttclid P2
Microsoft UET Tag Enhanced Conversions P2
8. Implementation Roadmap
Phase 1 — Foundation (Weeks 1-2)
  • Install all tracking pixels and server-side tracking
  • Set up conversion events and goals
  • Create campaign structure and naming conventions
  • Build initial audiences (custom, lookalike/predictive)
  • Produce first batch of creative assets
Phase 2 — Launch (Weeks 3-4)
  • Launch campaigns on primary platform(s) first
  • Set conservative budgets and bidding (Maximize Clicks / Lowest Cost)
  • Monitor daily for the first 7 days
  • Verify conversion tracking is firing correctly
Phase 3 — Optimize (Weeks 5-8)
  • Analyze initial data (minimum 2 weeks of data)
  • Adjust bidding strategies based on conversion volume
  • Kill underperforming ad groups/creatives (3x Kill Rule)
  • Launch secondary platforms
  • Begin A/B testing (creative, landing pages, audiences)
Phase 4 — Scale (Weeks 9-12)
  • Scale winning campaigns (20% rule)
  • Expand to testing platforms (10% budget)
  • Implement advanced strategies (ABM, Shopping feeds, Smart+)
  • Monthly performance reviews

Industry Templates

Load from assets/ directory based on detected or specified business type:

  • saas.md — SaaS companies
  • ecommerce.md — E-commerce stores
  • local-service.md — Local service businesses
  • b2b-enterprise.md — B2B enterprise
  • info-products.md — Info products and courses
  • mobile-app.md — Mobile app companies
  • real-estate.md — Real estate
  • healthcare.md — Healthcare
  • finance.md — Financial services
  • agency.md — Marketing agencies
  • hybrid.md — Multi-model businesses (product + service, B2B + B2C)
  • seasonal.md — Seasonal businesses (holiday, summer, event-driven)
  • nonprofit.md — 501(c)(3) organizations, Google Ad Grants compliance
  • government.md — Public sector, WCAG accessibility, government compliance
  • generic.md — General business template

Output

Deliverables (Markdown + PDF)

Every deliverable is written as markdown first, then converted to a brand-styled PDF.

Markdown PDF Contents
ADS-STRATEGY.md ADS-STRATEGY.pdf Complete strategic advertising plan
CAMPAIGN-ARCHITECTURE.md CAMPAIGN-ARCHITECTURE.pdf Campaign structure with naming conventions
BUDGET-PLAN.md BUDGET-PLAN.pdf Budget allocation with monthly pacing
CREATIVE-BRIEF.md CREATIVE-BRIEF.pdf Creative production plan (brand-personalized)
TRACKING-SETUP.md TRACKING-SETUP.pdf Tracking implementation checklist
IMPLEMENTATION-ROADMAP.md IMPLEMENTATION-ROADMAP.pdf Phased rollout timeline
PDF Generation

After writing all markdown deliverables, generate branded PDFs using md-to-pdf. The stylesheet is not a template — it is generated from scratch every time by reading ./branding.md and translating the brand's full identity into CSS.

Step 1: Read branding.md and generate a stylesheet

Read ./branding.md in full. Extract everything relevant to visual presentation:

  • Colors: primary, secondary, accent hex values. Derive tints (lighten for backgrounds, hover states) and shades (darken for borders, emphasis) from those base colors.
  • Typography: heading and body font families. If Google Fonts, add an @import rule. If the fonts are not web-available, pick the closest system font match.
  • Visual style: the described style (clean/minimal, bold/colorful, professional, playful, premium) drives the overall design personality:
    • Clean/minimal — generous whitespace, thin borders, light backgrounds, subtle accents
    • Bold/colorful — saturated colors, strong contrasts, colored section backgrounds
    • Professional — muted palette, structured grid feel, heavier typography
    • Playful — rounded corners, warmer tones, lighter font weights
    • Premium — dark accents, generous padding, restrained color use, serif headings
  • Brand voice: formal vs casual tone influences typographic choices — formal brands get tighter letter-spacing and traditional headings; casual brands get looser, friendlier type.
  • Industry: tailor the aesthetic — finance/healthcare lean conservative, SaaS/tech lean modern, e-commerce leans vibrant.

Write a complete CSS file to _brand-pdf.css that covers:

@page setup          — A4, margins, page numbers in brand font/color
Body                 — Brand body font, size, line-height, text color
Headings (h1-h4)     — Brand heading font, h1 in primary color with a styled underline
                       (solid, gradient, or accent-colored depending on visual style)
Tables               — thead background in primary color (white text), striped rows
                       using a light tint of the primary, borders in a derived border color
Blockquotes          — Left border in accent color, light tint background
Code blocks          — Light background, left border in primary, brand monospace stack
Links                — Primary color
Lists                — Appropriate spacing and markers
Horizontal rules     — Styled with brand colors
Print helpers        — page-break-after: avoid on headings, page-break-inside: avoid
                       on tables/code/blockquotes

Every color in the CSS must trace back to branding.md. Do not use any hardcoded colors that don't derive from the brand palette. Derive light backgrounds, border colors, and muted text from the primary/secondary using opacity or HSL manipulation.

Example derivation for a brand with primary #2563eb:

  • Light background: #2563eb0a (primary at 4% opacity) or manually lighten to #eff6ff
  • Border: #2563eb20 (primary at 12% opacity) or manually lighten to #dbeafe
  • Muted text: secondary color, or primary darkened
Step 2: Convert each deliverable
npx md-to-pdf --stylesheet _brand-pdf.css ADS-STRATEGY.md
npx md-to-pdf --stylesheet _brand-pdf.css CAMPAIGN-ARCHITECTURE.md
npx md-to-pdf --stylesheet _brand-pdf.css BUDGET-PLAN.md
npx md-to-pdf --stylesheet _brand-pdf.css CREATIVE-BRIEF.md
npx md-to-pdf --stylesheet _brand-pdf.css TRACKING-SETUP.md
npx md-to-pdf --stylesheet _brand-pdf.css IMPLEMENTATION-ROADMAP.md

Each command produces a .pdf alongside the .md.

Step 3: Clean up
rm _brand-pdf.css
Step 4: Confirm
PDFs generated with [Brand Name] styling:
  ADS-STRATEGY.pdf
  CAMPAIGN-ARCHITECTURE.pdf
  BUDGET-PLAN.pdf
  CREATIVE-BRIEF.pdf
  TRACKING-SETUP.pdf
  IMPLEMENTATION-ROADMAP.pdf

Brand applied:
  Colors: [primary] [secondary] [accent]
  Fonts: [heading font] / [body font]
  Style: [visual style description]

If npx md-to-pdf fails (Node.js not installed, network error, Puppeteer issue), inform the user and suggest npm install -g md-to-pdf then retry. The markdown files are always the primary deliverables — PDFs are supplementary.

KPI Targets
Metric Month 1 Month 3 Month 6 Month 12
ROAS Baseline Target -20% Target Target +20%
CPA Baseline Target +30% Target Target -10%
CVR Baseline +10% +20% +30%
CTR Baseline +15% +25% +30%
Budget Testing Optimizing Scaling Maintaining
1---
2name: ads-plan
3description: >
4 Strategic paid advertising planning with industry-specific templates.
5 Covers platform selection, campaign architecture, budget planning,
6 creative strategy, and phased implementation roadmap. Use when user says
7 "ad plan", "ad strategy", "campaign planning", "media plan", "PPC strategy",
8 or "advertising plan".
9disable-model-invocation: true
10---
11 
12# Strategic Paid Advertising Plan
13 
14## Process
15 
16### 0. Brand Context Setup
17 
18Check for `./branding.md` in the project root.
19 
20**If found:** Load brand identity, voice, audience, visual guidelines, competitor positioning. Confirm with the user: "I found your brand context (branding.md). Using it for this plan." Skip to step 1.
21 
22**If not found:** Collect brand context before proceeding. This information shapes every downstream step — platform selection, creative strategy, audience targeting, and budget allocation.
23 
24> "Before building your ad strategy, I need to understand your brand. What's your brand name and website URL?"
25 
26#### 0.1 — Brand Identity + Website (required)
27 
28Ask for the brand name and website URL first. If the user provides a URL, immediately
29run the full website extraction (step 0.2) before asking any further questions. Everything
30that can be extracted from the website should be extracted — never ask the user for
31information that's already on their site.
32 
33Also collect (if not already clear from the website):
34- Industry
35- Business model (SaaS, e-commerce, service, B2B, B2C, hybrid)
36 
37#### 0.2 — Website Extraction (when URL provided)
38 
39This is the most important part of brand context setup. **Do not guess or assume anything.**
40Extract the actual values the business uses on their live website.
41 
42##### 0.2a — Fetch the homepage
43 
44Use WebFetch on the homepage URL. Instruct it to extract ALL of the following:
45 
46**Visual identity:**
47- All colors used prominently: backgrounds, buttons, headers, links, text, borders,
48 footer. Report exact hex values. Identify which is primary (most prominent brand color,
49 usually on CTAs and headers), secondary, accent, background, and text color.
50- Font families: read the actual `font-family` declarations used on headings and body text.
51 Look in CSS, `<link>` tags for Google Fonts / Typekit / custom font URLs, and inline styles.
52 Report the exact font names (e.g., "Plus Jakarta Sans", "DM Sans", "Geist"), not generic
53 fallbacks like "sans-serif".
54- Logo: describe the logo from the header/nav. Note if it's text-based, icon-based, or both.
55- Visual style: describe what you observe — is it minimal with lots of whitespace? Bold with
56 saturated colors? Dark mode? Gradient-heavy? Illustration-driven? Corporate?
57- Button styles: rounded, square, pill-shaped? What color? What text color on buttons?
58- Spacing and density: tight and information-dense, or airy and spacious?
59 
60**Copy and messaging:**
61- Tagline / slogan: extract from the hero section
62- Hero headline: the main H1 or hero text
63- Value proposition: what the homepage says they do and why it matters
64- Key benefits: any benefit sections, feature highlights, or selling points
65- Social proof: testimonials, customer logos, metrics ("10,000+ customers"), awards,
66 trust badges, star ratings
67- CTAs: every call-to-action button text on the page (e.g., "Get Started Free",
68 "Book a Demo", "See Pricing")
69- Navigation items: main nav labels reveal product/service categories and priorities
70 
71**Brand voice signals:**
72- Tone of the copy: formal or casual? Technical or plain? Playful or serious?
73- Person: first person ("We help...") or second person ("You can...") or third?
74- Specific words/phrases: any repeated brand language, trademarked terms
75 
76##### 0.2b — Fetch additional pages (if needed)
77 
78If the homepage alone doesn't give a complete picture, also fetch:
79- `/about` or `/about-us` — for company story, mission, team info, more voice signals
80- `/pricing` — for pricing model (free trial, freemium, contact-us, subscription tiers)
81 
82Only fetch these if there are genuine gaps after the homepage. Don't fetch for the sake of it.
83 
84##### 0.2c — Present extraction to user
85 
86Show the user everything extracted, organized clearly:
87 
88```
89Here's what I found on [website]:
90 
91 Brand: [name]
92 Tagline: "[extracted tagline]"
93 Industry: [detected industry]
94 Business model: [detected model]
95 
96 Colors:
97 Primary: [name] #[hex] — used on [CTAs, headers, etc.]
98 Secondary: [name] #[hex] — used on [subheadings, etc.]
99 Accent: [name] #[hex] — used on [highlights, badges, etc.]
100 Background: #[hex]
101 Text: #[hex]
102 
103 Fonts:
104 Headings: [exact font name]
105 Body: [exact font name]
106 
107 Visual style: [description of what you observed]
108 Button style: [pill/rounded/square], [color], [hover behavior if visible]
109 
110 Voice: [formal/casual], [serious/playful], [technical/simple]
111 Hero: "[exact hero headline]"
112 Value prop: "[extracted value proposition]"
113 CTAs found: "[CTA 1]", "[CTA 2]", "[CTA 3]"
114 Social proof: [what's shown — logos, metrics, testimonials]
115 
116Does this look right? Anything to correct or add?
117```
118 
119The user confirms or corrects. Only after confirmation, proceed with remaining questions.
120 
121#### 0.3 — Fill gaps with questions
122 
123After the website extraction, only ask about things that **could not** be determined from
124the website. Skip any section where the website gave a clear answer.
125 
126**Likely still needed (websites rarely cover these):**
127 
128Target audience specifics:
129- Who is your primary customer? (job title/role, age range)
130- What are their biggest pain points?
131- What motivates them to buy?
132- Where do they spend time online?
133- Secondary audience?
134 
135Competitor positioning:
136- Who are your top 2-3 competitors?
137- How are you different from each?
138(If skipped, note: "To be completed — run `/ads-competitor` for analysis.")
139 
140Ad-specific guidelines:
141- Preferred CTAs (pre-fill from extracted CTAs, ask user to confirm/adjust)
142- Show pricing in ads?
143- Required elements? (trust badges, ratings, certifications)
144- Anything forbidden in ads?
145 
146Brand voice refinement (if the website extraction was ambiguous):
147- Words or phrases you always use?
148- Words or phrases you never use?
149 
150**Do NOT ask about colors, fonts, tagline, visual style, or value proposition if the
151website extraction already captured them.** Only ask if the extraction was inconclusive.
152 
153#### 0.4 — No-URL fallback
154 
155If the user does not provide a website URL, fall back to asking all questions manually:
156 
157Visual identity:
158- Brand colors (primary, secondary, accent — hex codes)
159- Headline and body fonts
160- Visual style description
161- Logo description
162 
163Copy and messaging:
164- Tagline or slogan
165- One-sentence value proposition
166- Top 3 benefits with proof points
167- Social proof highlights
168 
169Brand voice:
170- Formal vs casual (1-10)
171- Serious vs playful
172- Technical vs simple
173- Brand words (always use)
174- Forbidden words (never use)
175 
176Target audience, competitor positioning, and ad guidelines — same as step 0.3.
177 
178#### 0.5 — Save branding.md
179 
180Write `./branding.md` in the project root using the canonical format from `ads/references/brand-context.md`.
181 
182**Every value in branding.md must come from the website extraction or the user's direct
183answers. Never fill in defaults or placeholders.** If a field has no data, leave it blank
184or omit the section entirely.
185 
186Validate before writing:
187- Brand name is not empty
188- At least one color with hex value exists
189- At least one audience description exists
190- Business model is identified
191 
192Display summary:
193 
194```
195Brand context saved: ./branding.md
196 
197 Brand: [name]
198 Industry: [industry]
199 Voice: [tone summary]
200 Audience: [persona summary]
201 USP: [one-line value prop]
202 Colors: [primary hex] [secondary hex] [accent hex]
203 Fonts: [heading font] / [body font]
204 
205Now building your ad strategy...
206```
207 
208**Note:** Many of these answers feed directly into step 1 (Discovery) — do not re-ask questions the user already answered. Carry forward business type, audience, goals, and budget context.
209 
210### 1. Discovery
211- Carry forward from step 0: business type, target audience, value proposition
212- Current advertising status (active platforms, spend, performance)
213- Goals: brand awareness, lead generation, e-commerce sales, app installs
214- Budget range (monthly/quarterly)
215- Timeline and urgency
216- In-house team capacity vs agency needs
217 
218### 2. Competitive Analysis
219- Identify top 3-5 competitors
220- Analyze their ad presence across platforms (Google Ads Transparency, Meta Ad Library)
221- Estimate competitor spend levels and platform mix
222- Identify messaging themes and creative approaches
223- Note keyword/audience gaps (opportunities competitors are missing)
224 
225### 3. Platform Selection
226- Load industry template from `assets/` directory
227- Match business type to recommended platform mix
228- Read `ads/references/budget-allocation.md` for platform selection matrix
229- Read `ads/references/conversion-tracking.md` for tracking setup requirements
230- Assess platform fit based on:
231 - Target audience demographics per platform
232 - Product/service type suitability
233 - Budget requirements per platform (minimums)
234 - Sales cycle length and attribution needs
235 - Creative capabilities and content availability
236 
237### 4. Campaign Architecture
238 
239#### Naming Convention
240```
241[Platform]_[Objective]_[Audience]_[Geo]_[Date]
242```
243Example: `META_CONV_Prospecting_US_2026Q1`
244 
245#### Campaign Structure Template
246```
247Account
248├── Brand Campaign (always-on, protect brand terms)
249├── Non-Brand Prospecting
250│ ├── Campaign 1: [Top Funnel - Awareness]
251│ │ ├── Ad Group/Set 1: [Audience A]
252│ │ └── Ad Group/Set 2: [Audience B]
253│ ├── Campaign 2: [Mid Funnel - Consideration]
254│ │ ├── Ad Group/Set 1: [Interest-based]
255│ │ └── Ad Group/Set 2: [Lookalike/Similar]
256│ └── Campaign 3: [Bottom Funnel - Conversion]
257│ ├── Ad Group/Set 1: [High-intent]
258│ └── Ad Group/Set 2: [Custom audience]
259├── Retargeting
260│ ├── Website Visitors (7-30 days)
261│ ├── Engaged Users (video views, social engagement)
262│ └── Cart Abandoners / Form Starters
263└── Testing
264 └── New audiences, formats, or messaging
265```
266 
267### 5. Budget Planning
268 
269#### Monthly Budget Distribution
270Read `ads/references/budget-allocation.md` for the 70/20/10 framework.
271 
272| Tier | Allocation | Purpose |
273|------|-----------|---------|
274| Proven (70%) | Primary platforms with proven ROI | Revenue engine |
275| Scaling (20%) | Platforms showing promise | Growth engine |
276| Testing (10%) | New platforms or strategies | Innovation |
277 
278#### Budget Pacing
279- Month 1-2: heavy testing, expect higher CPA (learning)
280- Month 3-4: optimize based on data, tighten targeting
281- Month 5-6: scale winners, kill losers, expand
282- Ongoing: 70/20/10 maintenance with quarterly reviews
283 
284### 6. Creative Strategy
285 
286#### Content Pillars
287- **Pain Point**: address specific problems your audience faces
288- **Social Proof**: testimonials, case studies, reviews
289- **Product Demo**: show the product/service in action
290- **Offer**: promotions, free trials, lead magnets
291- **Education**: teach something valuable related to your product
292 
293#### Creative Production Plan
294| Priority | Asset Type | Platforms | Quantity |
295|----------|-----------|-----------|----------|
296| P1 | Product/service videos (15-30s) | Meta, TikTok, YouTube | 5-10 |
297| P2 | Static images with copy | Google, Meta, LinkedIn | 10-15 |
298| P3 | Carousel/collection | Meta, LinkedIn | 3-5 |
299| P4 | UGC/testimonial video | TikTok, Meta | 3-5 |
300| P5 | Long-form video (1-3 min) | YouTube | 2-3 |
301 
302#### Brand-Aware Creative Production
303If `branding.md` is available, personalize CREATIVE-BRIEF.md with:
304- Ad copy written in brand voice (tone dimensions from Brand Voice section)
305- Visual descriptions referencing brand colors (hex values) and typography
306- CTAs pulled from approved CTA list (Ad-Specific Guidelines)
307- Headlines using brand words; avoiding forbidden words
308- Audience messaging mapped to primary/secondary persona pain points
309- Competitor differentiation woven into positioning
310 
311Read `ads/references/creative-volume.md` for per-platform volume requirements.
312 
313### 7. Tracking Setup Plan
314 
315Before launching any ads, ensure tracking is configured:
316 
317| Platform | Client-Side | Server-Side | Priority |
318|----------|------------|-------------|----------|
319| Google | gtag.js | Enhanced Conversions, GTM SS | P1 |
320| Meta | Pixel | CAPI | P1 |
321| LinkedIn | Insight Tag | CAPI (2025) | P2 |
322| TikTok | Pixel | Events API + ttclid | P2 |
323| Microsoft | UET Tag | Enhanced Conversions | P2 |
324 
325### 8. Implementation Roadmap
326 
327#### Phase 1 — Foundation (Weeks 1-2)
328- Install all tracking pixels and server-side tracking
329- Set up conversion events and goals
330- Create campaign structure and naming conventions
331- Build initial audiences (custom, lookalike/predictive)
332- Produce first batch of creative assets
333 
334#### Phase 2 — Launch (Weeks 3-4)
335- Launch campaigns on primary platform(s) first
336- Set conservative budgets and bidding (Maximize Clicks / Lowest Cost)
337- Monitor daily for the first 7 days
338- Verify conversion tracking is firing correctly
339 
340#### Phase 3 — Optimize (Weeks 5-8)
341- Analyze initial data (minimum 2 weeks of data)
342- Adjust bidding strategies based on conversion volume
343- Kill underperforming ad groups/creatives (3x Kill Rule)
344- Launch secondary platforms
345- Begin A/B testing (creative, landing pages, audiences)
346 
347#### Phase 4 — Scale (Weeks 9-12)
348- Scale winning campaigns (20% rule)
349- Expand to testing platforms (10% budget)
350- Implement advanced strategies (ABM, Shopping feeds, Smart+)
351- Monthly performance reviews
352 
353## Industry Templates
354 
355Load from `assets/` directory based on detected or specified business type:
356- `saas.md` — SaaS companies
357- `ecommerce.md` — E-commerce stores
358- `local-service.md` — Local service businesses
359- `b2b-enterprise.md` — B2B enterprise
360- `info-products.md` — Info products and courses
361- `mobile-app.md` — Mobile app companies
362- `real-estate.md` — Real estate
363- `healthcare.md` — Healthcare
364- `finance.md` — Financial services
365- `agency.md` — Marketing agencies
366- `hybrid.md` — Multi-model businesses (product + service, B2B + B2C)
367- `seasonal.md` — Seasonal businesses (holiday, summer, event-driven)
368- `nonprofit.md` — 501(c)(3) organizations, Google Ad Grants compliance
369- `government.md` — Public sector, WCAG accessibility, government compliance
370- `generic.md` — General business template
371 
372## Output
373 
374### Deliverables (Markdown + PDF)
375 
376Every deliverable is written as markdown first, then converted to a brand-styled PDF.
377 
378| Markdown | PDF | Contents |
379|----------|-----|----------|
380| `ADS-STRATEGY.md` | `ADS-STRATEGY.pdf` | Complete strategic advertising plan |
381| `CAMPAIGN-ARCHITECTURE.md` | `CAMPAIGN-ARCHITECTURE.pdf` | Campaign structure with naming conventions |
382| `BUDGET-PLAN.md` | `BUDGET-PLAN.pdf` | Budget allocation with monthly pacing |
383| `CREATIVE-BRIEF.md` | `CREATIVE-BRIEF.pdf` | Creative production plan (brand-personalized) |
384| `TRACKING-SETUP.md` | `TRACKING-SETUP.pdf` | Tracking implementation checklist |
385| `IMPLEMENTATION-ROADMAP.md` | `IMPLEMENTATION-ROADMAP.pdf` | Phased rollout timeline |
386 
387### PDF Generation
388 
389After writing all markdown deliverables, generate branded PDFs using `md-to-pdf`.
390The stylesheet is **not a template** — it is generated from scratch every time by reading
391`./branding.md` and translating the brand's full identity into CSS.
392 
393#### Step 1: Read branding.md and generate a stylesheet
394 
395Read `./branding.md` in full. Extract everything relevant to visual presentation:
396 
397- **Colors:** primary, secondary, accent hex values. Derive tints (lighten for backgrounds,
398 hover states) and shades (darken for borders, emphasis) from those base colors.
399- **Typography:** heading and body font families. If Google Fonts, add an `@import` rule.
400 If the fonts are not web-available, pick the closest system font match.
401- **Visual style:** the described style (clean/minimal, bold/colorful, professional, playful,
402 premium) drives the overall design personality:
403 - **Clean/minimal** — generous whitespace, thin borders, light backgrounds, subtle accents
404 - **Bold/colorful** — saturated colors, strong contrasts, colored section backgrounds
405 - **Professional** — muted palette, structured grid feel, heavier typography
406 - **Playful** — rounded corners, warmer tones, lighter font weights
407 - **Premium** — dark accents, generous padding, restrained color use, serif headings
408- **Brand voice:** formal vs casual tone influences typographic choices — formal brands
409 get tighter letter-spacing and traditional headings; casual brands get looser, friendlier type.
410- **Industry:** tailor the aesthetic — finance/healthcare lean conservative, SaaS/tech lean
411 modern, e-commerce leans vibrant.
412 
413Write a complete CSS file to `_brand-pdf.css` that covers:
414 
415```
416@page setup — A4, margins, page numbers in brand font/color
417Body — Brand body font, size, line-height, text color
418Headings (h1-h4) — Brand heading font, h1 in primary color with a styled underline
419 (solid, gradient, or accent-colored depending on visual style)
420Tables — thead background in primary color (white text), striped rows
421 using a light tint of the primary, borders in a derived border color
422Blockquotes — Left border in accent color, light tint background
423Code blocks — Light background, left border in primary, brand monospace stack
424Links — Primary color
425Lists — Appropriate spacing and markers
426Horizontal rules — Styled with brand colors
427Print helpers — page-break-after: avoid on headings, page-break-inside: avoid
428 on tables/code/blockquotes
429```
430 
431**Every color in the CSS must trace back to branding.md.** Do not use any hardcoded
432colors that don't derive from the brand palette. Derive light backgrounds, border colors,
433and muted text from the primary/secondary using opacity or HSL manipulation.
434 
435**Example derivation for a brand with primary #2563eb:**
436- Light background: `#2563eb0a` (primary at 4% opacity) or manually lighten to `#eff6ff`
437- Border: `#2563eb20` (primary at 12% opacity) or manually lighten to `#dbeafe`
438- Muted text: secondary color, or primary darkened
439 
440#### Step 2: Convert each deliverable
441 
442```bash
443npx md-to-pdf --stylesheet _brand-pdf.css ADS-STRATEGY.md
444npx md-to-pdf --stylesheet _brand-pdf.css CAMPAIGN-ARCHITECTURE.md
445npx md-to-pdf --stylesheet _brand-pdf.css BUDGET-PLAN.md
446npx md-to-pdf --stylesheet _brand-pdf.css CREATIVE-BRIEF.md
447npx md-to-pdf --stylesheet _brand-pdf.css TRACKING-SETUP.md
448npx md-to-pdf --stylesheet _brand-pdf.css IMPLEMENTATION-ROADMAP.md
449```
450 
451Each command produces a `.pdf` alongside the `.md`.
452 
453#### Step 3: Clean up
454 
455```bash
456rm _brand-pdf.css
457```
458 
459#### Step 4: Confirm
460 
461```
462PDFs generated with [Brand Name] styling:
463 ADS-STRATEGY.pdf
464 CAMPAIGN-ARCHITECTURE.pdf
465 BUDGET-PLAN.pdf
466 CREATIVE-BRIEF.pdf
467 TRACKING-SETUP.pdf
468 IMPLEMENTATION-ROADMAP.pdf
469 
470Brand applied:
471 Colors: [primary] [secondary] [accent]
472 Fonts: [heading font] / [body font]
473 Style: [visual style description]
474```
475 
476**If `npx md-to-pdf` fails** (Node.js not installed, network error, Puppeteer issue),
477inform the user and suggest `npm install -g md-to-pdf` then retry. The markdown files
478are always the primary deliverables — PDFs are supplementary.
479 
480### KPI Targets
481| Metric | Month 1 | Month 3 | Month 6 | Month 12 |
482|--------|---------|---------|---------|----------|
483| ROAS | Baseline | Target -20% | Target | Target +20% |
484| CPA | Baseline | Target +30% | Target | Target -10% |
485| CVR | Baseline | +10% | +20% | +30% |
486| CTR | Baseline | +15% | +25% | +30% |
487| Budget | Testing | Optimizing | Scaling | Maintaining |
488 

Discussion

Alternatives

Also in Roadmap & prioritiesSee all 281 in Product →