start-vibing-stacks 2.28.0 → 2.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/migrate.js +81 -43
- package/dist/setup.js +20 -1
- package/package.json +1 -1
- package/stacks/_shared/ads-agents/README.md +452 -0
- package/stacks/_shared/ads-agents/RESEARCH-REPORT.md +157 -0
- package/stacks/_shared/ads-agents/SKILL.md +210 -0
- package/stacks/_shared/ads-agents/SKILLS-UPDATE-REPORT.md +255 -0
- package/stacks/_shared/ads-agents/agents/audit-budget.md +116 -0
- package/stacks/_shared/ads-agents/agents/audit-compliance.md +131 -0
- package/stacks/_shared/ads-agents/agents/audit-creative.md +127 -0
- package/stacks/_shared/ads-agents/agents/audit-google.md +113 -0
- package/stacks/_shared/ads-agents/agents/audit-meta.md +112 -0
- package/stacks/_shared/ads-agents/agents/audit-tracking.md +134 -0
- package/stacks/_shared/ads-agents/agents/copy-writer.md +188 -0
- package/stacks/_shared/ads-agents/agents/creative-strategist.md +199 -0
- package/stacks/_shared/ads-agents/agents/format-adapter.md +175 -0
- package/stacks/_shared/ads-agents/agents/visual-designer.md +245 -0
- package/stacks/_shared/ads-agents/references/additional-platforms.md +106 -0
- package/stacks/_shared/ads-agents/references/benchmarks.md +257 -0
- package/stacks/_shared/ads-agents/references/bidding-strategies.md +333 -0
- package/stacks/_shared/ads-agents/references/brand-dna-template.md +190 -0
- package/stacks/_shared/ads-agents/references/budget-allocation.md +150 -0
- package/stacks/_shared/ads-agents/references/compliance.md +280 -0
- package/stacks/_shared/ads-agents/references/conversion-tracking.md +246 -0
- package/stacks/_shared/ads-agents/references/copy-frameworks.md +187 -0
- package/stacks/_shared/ads-agents/references/funnel-content-copy-rules.md +44 -0
- package/stacks/_shared/ads-agents/references/gaql-notes.md +49 -0
- package/stacks/_shared/ads-agents/references/google-audit.md +217 -0
- package/stacks/_shared/ads-agents/references/google-creative-specs.md +119 -0
- package/stacks/_shared/ads-agents/references/image-providers.md +133 -0
- package/stacks/_shared/ads-agents/references/linkedin-audit.md +141 -0
- package/stacks/_shared/ads-agents/references/linkedin-creative-specs.md +129 -0
- package/stacks/_shared/ads-agents/references/mcp-integration.md +125 -0
- package/stacks/_shared/ads-agents/references/meta-audit.md +141 -0
- package/stacks/_shared/ads-agents/references/meta-creative-specs.md +134 -0
- package/stacks/_shared/ads-agents/references/microsoft-audit.md +158 -0
- package/stacks/_shared/ads-agents/references/microsoft-creative-specs.md +123 -0
- package/stacks/_shared/ads-agents/references/platform-specs.md +276 -0
- package/stacks/_shared/ads-agents/references/scoring-system.md +169 -0
- package/stacks/_shared/ads-agents/references/tiktok-audit.md +165 -0
- package/stacks/_shared/ads-agents/references/tiktok-creative-specs.md +139 -0
- package/stacks/_shared/ads-agents/references/voice-to-style.md +87 -0
- package/stacks/_shared/ads-agents/references/youtube-creative-specs.md +134 -0
- package/stacks/_shared/ads-agents/skills/ads-apple/SKILL.md +225 -0
- package/stacks/_shared/ads-agents/skills/ads-audit/SKILL.md +108 -0
- package/stacks/_shared/ads-agents/skills/ads-budget/SKILL.md +198 -0
- package/stacks/_shared/ads-agents/skills/ads-competitor/SKILL.md +198 -0
- package/stacks/_shared/ads-agents/skills/ads-create/SKILL.md +198 -0
- package/stacks/_shared/ads-agents/skills/ads-creative/SKILL.md +208 -0
- package/stacks/_shared/ads-agents/skills/ads-dna/SKILL.md +245 -0
- package/stacks/_shared/ads-agents/skills/ads-generate/SKILL.md +173 -0
- package/stacks/_shared/ads-agents/skills/ads-google/SKILL.md +192 -0
- package/stacks/_shared/ads-agents/skills/ads-landing/SKILL.md +186 -0
- package/stacks/_shared/ads-agents/skills/ads-linkedin/SKILL.md +200 -0
- package/stacks/_shared/ads-agents/skills/ads-math/SKILL.md +216 -0
- package/stacks/_shared/ads-agents/skills/ads-meta/SKILL.md +167 -0
- package/stacks/_shared/ads-agents/skills/ads-microsoft/SKILL.md +163 -0
- package/stacks/_shared/ads-agents/skills/ads-photoshoot/SKILL.md +220 -0
- package/stacks/_shared/ads-agents/skills/ads-plan/SKILL.md +176 -0
- package/stacks/_shared/ads-agents/skills/ads-test/SKILL.md +199 -0
- package/stacks/_shared/ads-agents/skills/ads-tiktok/SKILL.md +190 -0
- package/stacks/_shared/ads-agents/skills/ads-youtube/SKILL.md +199 -0
- package/stacks/_shared/hooks/_state.ts +8 -2
- package/stacks/_shared/hooks/plan-gate.ts +138 -0
- package/stacks/_shared/memories/funnel-content-copy.md +81 -0
- package/templates/CLAUDE-python.md +6 -0
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ads-landing
|
|
3
|
+
version: 1.6.0
|
|
4
|
+
description: "Landing page quality assessment for paid advertising campaigns. Evaluates message match, page speed, mobile experience, trust signals, form optimization, and conversion rate potential. Use when user says landing page, post-click experience, landing page audit, conversion rate, or landing page optimization."
|
|
5
|
+
user-invokable: false
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
<!-- Updated: 2026-05-14 | v1.6: INP confirmed as official Core Web Vital (replaced FID March 12, 2024), Core Web Vitals 2026 thresholds verified -->
|
|
9
|
+
|
|
10
|
+
# Landing Page Quality for Ad Campaigns
|
|
11
|
+
|
|
12
|
+
## Process
|
|
13
|
+
|
|
14
|
+
1. Collect landing page URLs from active ad campaigns
|
|
15
|
+
2. Read `ads-agents/references/benchmarks.md` for conversion rate benchmarks
|
|
16
|
+
3. Read `ads-agents/references/conversion-tracking.md` for pixel/tag verification
|
|
17
|
+
4. Assess each landing page for ad-specific quality factors
|
|
18
|
+
5. Score landing pages and identify improvement opportunities
|
|
19
|
+
6. Generate recommendations prioritized by conversion impact
|
|
20
|
+
|
|
21
|
+
## Message Match Assessment
|
|
22
|
+
|
|
23
|
+
The #1 landing page issue in ad campaigns: does the page match the ad?
|
|
24
|
+
|
|
25
|
+
### What to Check
|
|
26
|
+
- **Headline match**: landing page H1 reflects ad copy headline/keyword
|
|
27
|
+
- **Offer match**: promoted offer (price, discount, trial) is visible above fold
|
|
28
|
+
- **CTA match**: landing page CTA matches ad's promised action
|
|
29
|
+
- **Visual match**: consistent imagery between ad creative and page
|
|
30
|
+
- **Keyword match**: search keyword appears naturally in page content
|
|
31
|
+
|
|
32
|
+
### Message Match Scoring
|
|
33
|
+
| Level | Description | Score |
|
|
34
|
+
|-------|-------------|-------|
|
|
35
|
+
| Exact match | Headline, offer, CTA all align perfectly | 100% |
|
|
36
|
+
| Partial match | Headline matches but offer/CTA differs | 60% |
|
|
37
|
+
| Weak match | Generic page, loosely related to ad | 30% |
|
|
38
|
+
| Mismatch | Page content doesn't reflect ad promise | 0% |
|
|
39
|
+
|
|
40
|
+
## Page Speed Assessment
|
|
41
|
+
|
|
42
|
+
Slow pages kill conversion rates. For every 1s delay, CVR drops ~7%.
|
|
43
|
+
|
|
44
|
+
### Thresholds (Ad Landing Pages)
|
|
45
|
+
| Metric | Pass | Warning | Fail |
|
|
46
|
+
|--------|------|---------|------|
|
|
47
|
+
| LCP | <2.5s | 2.5-4.0s | >4.0s |
|
|
48
|
+
| INP | <200ms | 200-500ms | >500ms |
|
|
49
|
+
| CLS | <0.1 | 0.1-0.25 | >0.25 |
|
|
50
|
+
| Time to Interactive | <3.0s | 3.0-5.0s | >5.0s |
|
|
51
|
+
| Page weight | <2MB | 2-5MB | >5MB |
|
|
52
|
+
|
|
53
|
+
### Common Speed Issues in Ad Pages
|
|
54
|
+
- Hero images not compressed (use WebP/AVIF)
|
|
55
|
+
- Too many third-party scripts (chat widgets, analytics, heatmaps)
|
|
56
|
+
- Render-blocking CSS/JS above fold
|
|
57
|
+
- No lazy loading for below-fold content
|
|
58
|
+
- Font files not preloaded
|
|
59
|
+
|
|
60
|
+
## Mobile Experience
|
|
61
|
+
|
|
62
|
+
75%+ of ad clicks come from mobile. Mobile experience is critical.
|
|
63
|
+
|
|
64
|
+
### Mobile Checklist
|
|
65
|
+
- Tap targets: ≥48x48px with ≥8px spacing
|
|
66
|
+
- Font size: ≥16px body text (no pinch-to-zoom needed)
|
|
67
|
+
- Form fields: properly sized, keyboard type matches input (email, phone, number)
|
|
68
|
+
- CTA button: full-width on mobile, visible without scrolling
|
|
69
|
+
- No horizontal scroll
|
|
70
|
+
- Images responsive and properly sized
|
|
71
|
+
- Phone number clickable (tel: link)
|
|
72
|
+
- No interstitials or popups blocking content on load
|
|
73
|
+
|
|
74
|
+
## Trust Signals
|
|
75
|
+
|
|
76
|
+
### Above-the-Fold Trust Elements
|
|
77
|
+
- Company logo visible
|
|
78
|
+
- Social proof (customer count, reviews, ratings)
|
|
79
|
+
- Security badges (SSL, payment security, guarantees)
|
|
80
|
+
- Recognizable client logos (B2B)
|
|
81
|
+
- Star ratings or testimonial snippet
|
|
82
|
+
|
|
83
|
+
### Below-the-Fold Trust Elements
|
|
84
|
+
- Full testimonials with names, photos, companies
|
|
85
|
+
- Case study highlights with specific metrics
|
|
86
|
+
- Certifications, awards, accreditations
|
|
87
|
+
- Privacy policy link
|
|
88
|
+
- Physical address/phone number (local service businesses)
|
|
89
|
+
|
|
90
|
+
## Form Optimization
|
|
91
|
+
|
|
92
|
+
### Form Length Impact on CVR
|
|
93
|
+
| Fields | Expected CVR Impact | Use Case |
|
|
94
|
+
|--------|-------------------|----------|
|
|
95
|
+
| 1-3 fields | Highest CVR | Top-of-funnel, free offer |
|
|
96
|
+
| 4-5 fields | Moderate CVR | Mid-funnel, qualified leads |
|
|
97
|
+
| 6-8 fields | Lower CVR | Bottom-funnel, sales-ready |
|
|
98
|
+
| 9+ fields | Lowest CVR | Only for high-value offers |
|
|
99
|
+
|
|
100
|
+
### Form Best Practices
|
|
101
|
+
- Pre-fill fields where possible (UTM data, known info)
|
|
102
|
+
- Use multi-step forms for 5+ fields (progressive disclosure)
|
|
103
|
+
- Show progress indicator on multi-step forms
|
|
104
|
+
- Inline validation (don't wait until submit to show errors)
|
|
105
|
+
- Error messages are clear and helpful
|
|
106
|
+
- Submit button text is specific ("Get My Free Quote" not "Submit")
|
|
107
|
+
- Thank you page has clear next steps
|
|
108
|
+
|
|
109
|
+
## Landing Page Health Score Algorithm
|
|
110
|
+
|
|
111
|
+
```
|
|
112
|
+
Landing Page Health Score = (Message Match x 0.25) + (Page Speed x 0.25) + (Mobile x 0.20) + (Trust x 0.15) + (Form x 0.15)
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
Each component is scored 0-100, then weighted. Final score maps to grade: A (90-100), B (75-89), C (60-74), D (40-59), F (<40).
|
|
116
|
+
|
|
117
|
+
## Consent Banner Impact
|
|
118
|
+
|
|
119
|
+
Flag if any of the following are true:
|
|
120
|
+
- Consent banner covers the primary CTA on load
|
|
121
|
+
- Consent banner delays form interaction by >1 second
|
|
122
|
+
- Consent banner pushes critical content (headline, offer, CTA) below the fold
|
|
123
|
+
- Banner cannot be dismissed on mobile without scrolling
|
|
124
|
+
|
|
125
|
+
> **Consent Mode V2**: Verify Consent Mode V2 implementation for EU/EEA traffic to ensure tracking data quality. Without Consent Mode V2, conversion modeling is degraded and remarketing audiences shrink significantly.
|
|
126
|
+
|
|
127
|
+
## Quick Wins
|
|
128
|
+
|
|
129
|
+
| Priority | Fix | Expected Impact |
|
|
130
|
+
|----------|-----|-----------------|
|
|
131
|
+
| 1 | Move primary CTA above the fold on all devices | +15-25% CVR |
|
|
132
|
+
| 2 | Reduce form fields to essential only (name, email, one qualifier) | +10-20% CVR |
|
|
133
|
+
| 3 | Add trust badges near CTA (security, guarantee, reviews) | +5-15% CVR |
|
|
134
|
+
| 4 | Optimize hero image (WebP/AVIF, <200KB, proper dimensions) | -1-2s load time |
|
|
135
|
+
| 5 | Fix mobile tap targets (>=48x48px with >=8px spacing) | +5-10% mobile CVR |
|
|
136
|
+
|
|
137
|
+
## Ad-Specific Landing Page Elements
|
|
138
|
+
|
|
139
|
+
### UTM Parameter Handling
|
|
140
|
+
- UTM parameters captured and stored (for attribution)
|
|
141
|
+
- Click IDs preserved: gclid (Google), fbclid (Meta), ttclid (TikTok), msclkid (Microsoft)
|
|
142
|
+
- Parameters passed to form submissions or CRM
|
|
143
|
+
|
|
144
|
+
### Dynamic Content
|
|
145
|
+
- Dynamic keyword insertion in headline (Google Ads feature)
|
|
146
|
+
- Location-specific content for geo-targeted campaigns
|
|
147
|
+
- Audience-specific messaging (different pages for different segments)
|
|
148
|
+
- A/B testing active on key elements (headline, CTA, hero image)
|
|
149
|
+
|
|
150
|
+
### Conversion Tracking
|
|
151
|
+
- Thank you page/event fires correctly for all platforms
|
|
152
|
+
- Form submission triggers conversion event
|
|
153
|
+
- Phone call tracking configured (if applicable)
|
|
154
|
+
- Chat/live agent triggers tracked as micro-conversions
|
|
155
|
+
|
|
156
|
+
## Landing Page Quality by Platform
|
|
157
|
+
|
|
158
|
+
| Platform | Key Requirement | Notes |
|
|
159
|
+
|----------|----------------|-------|
|
|
160
|
+
| Google | QS component: landing page experience | Directly affects ad rank and CPC |
|
|
161
|
+
| Meta | Page load speed critical | Slow pages = Meta penalizes delivery |
|
|
162
|
+
| LinkedIn | Professional, B2B appropriate | Match LinkedIn's professional context |
|
|
163
|
+
| TikTok | Mobile-first mandatory | 95%+ TikTok traffic is mobile |
|
|
164
|
+
| Microsoft | Desktop-optimized matters more | Higher desktop % than other platforms |
|
|
165
|
+
|
|
166
|
+
## Output
|
|
167
|
+
|
|
168
|
+
### Landing Page Assessment
|
|
169
|
+
|
|
170
|
+
```
|
|
171
|
+
Landing Page Health
|
|
172
|
+
|
|
173
|
+
Message Match: ████████░░ XX/100
|
|
174
|
+
Page Speed: ██████████ XX/100
|
|
175
|
+
Mobile: ███████░░░ XX/100
|
|
176
|
+
Trust Signals: █████░░░░░ XX/100
|
|
177
|
+
Form Quality: ████████░░ XX/100
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
### Deliverables
|
|
181
|
+
- `LANDING-PAGE-REPORT.md`: Per-page assessment with scores
|
|
182
|
+
- Message match analysis per ad-to-page combination
|
|
183
|
+
- Page speed improvement priorities
|
|
184
|
+
- Mobile experience fixes
|
|
185
|
+
- Form optimization recommendations
|
|
186
|
+
- Quick Wins sorted by conversion impact
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ads-linkedin
|
|
3
|
+
version: 1.6.0
|
|
4
|
+
description: "LinkedIn Ads deep analysis for B2B advertising. Evaluates 27 checks across technical setup, audience targeting, creative quality, lead gen forms, and bidding strategy. Includes Thought Leader Ads, ABM, and predictive audiences. Use when user says LinkedIn Ads, B2B ads, sponsored content, lead gen forms, InMail, or LinkedIn campaign."
|
|
5
|
+
user-invokable: false
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
<!-- Updated: 2026-05-14 | v1.6: TLA 6.9x CTR lift verified (Fractional Demand 15-month B2B SaaS portfolio, $3.5M spend), 25-40% budget allocation sweet spot, rotate at week 18 not 4-6 weeks, peak CTR weeks 8-12, 3-layer warm/retarget/convert playbook -->
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
# LinkedIn Ads Deep Analysis
|
|
12
|
+
|
|
13
|
+
**Terminology note (Oct 2025):** Campaign Groups are now called Campaigns, and
|
|
14
|
+
Campaigns are now called Ad Sets. This skill uses the new terminology.
|
|
15
|
+
|
|
16
|
+
## Process
|
|
17
|
+
|
|
18
|
+
1. Collect LinkedIn Ads data (Campaign Manager export, Insight Tag status)
|
|
19
|
+
2. Read `ads-agents/references/linkedin-audit.md` for full 27-check audit
|
|
20
|
+
3. Read `ads-agents/references/benchmarks.md` for LinkedIn-specific benchmarks
|
|
21
|
+
4. Read `ads-agents/references/scoring-system.md` for weighted scoring
|
|
22
|
+
5. Evaluate all applicable checks as PASS, WARNING, or FAIL
|
|
23
|
+
6. Calculate LinkedIn Ads Health Score (0-100)
|
|
24
|
+
7. Generate findings report with action plan
|
|
25
|
+
|
|
26
|
+
## What to Analyze
|
|
27
|
+
|
|
28
|
+
### Technical Setup (25% weight)
|
|
29
|
+
- Insight Tag installed and firing on all pages (L01)
|
|
30
|
+
- Conversions API (CAPI) active, launched 2025 (L02)
|
|
31
|
+
- Conversion events configured for full funnel
|
|
32
|
+
- Revenue attribution tracking enabled
|
|
33
|
+
- Salesforce/HubSpot CRM integration (June 2025) enables closed-loop impression-to-revenue reporting
|
|
34
|
+
|
|
35
|
+
### Audience Targeting (25% weight)
|
|
36
|
+
- Job title targeting uses specific titles, not just functions (L03)
|
|
37
|
+
- Company size filtering matches ICP (L04)
|
|
38
|
+
- Seniority level appropriate for offer (L05)
|
|
39
|
+
- Matched Audiences active: retargeting + contact lists (L06)
|
|
40
|
+
- ABM company lists uploaded (up to 300,000 companies) (L07)
|
|
41
|
+
- Audience expansion OFF for precision campaigns, ON for scale (L08)
|
|
42
|
+
- Predictive audiences tested, replaced Lookalikes Feb 2024 (L09)
|
|
43
|
+
|
|
44
|
+
### Creative Quality (20% weight)
|
|
45
|
+
- Thought Leader Ads active, **25-40% budget allocation sweet spot** for B2B (L10)
|
|
46
|
+
- Ad format diversity: ≥2 formats tested (L11)
|
|
47
|
+
- Video ads tested (L12)
|
|
48
|
+
- Creative refresh every 4-6 weeks for standard formats; **TLA-specific: do NOT rotate at 4-6 weeks** — let strong TLAs (CTR ≥2% at week 6) run; peak CTR is at weeks 8-12; rotate at week 18 (L13)
|
|
49
|
+
|
|
50
|
+
### Lead Gen & Performance (15% weight)
|
|
51
|
+
- Lead Gen Form ≤5 fields (13% CVR benchmark) (L14)
|
|
52
|
+
- Lead Gen Form synced to CRM in real-time (L15)
|
|
53
|
+
- Campaign objective matches funnel stage (L18)
|
|
54
|
+
- A/B testing active: creative or audience (L19)
|
|
55
|
+
- Message ad frequency ≤1 per 30-45 days (L20)
|
|
56
|
+
|
|
57
|
+
### Bidding & Budget (15% weight)
|
|
58
|
+
- Bid strategy: Start with Manual CPC. Maximum Delivery is the most expensive option. (L16)
|
|
59
|
+
- Daily budget ≥$50 for Sponsored Content (L17)
|
|
60
|
+
- CTR ≥0.44% for Sponsored Content (L21)
|
|
61
|
+
- CPC within benchmark: $5-7 average, senior $6.40+ (L22)
|
|
62
|
+
- Lead-to-opportunity rate tracked, not just CPL (L23)
|
|
63
|
+
- Attribution: 30-day click / 7-day view configured (L24)
|
|
64
|
+
- Demographics report reviewed monthly (L25)
|
|
65
|
+
|
|
66
|
+
## Thought Leader Ads (TLA) Assessment (2026 data)
|
|
67
|
+
|
|
68
|
+
Thought Leader Ads use employee/executive personal posts as sponsored content.
|
|
69
|
+
Non-employee members eligible since March 2025. **6.9x CTR lift** vs standard
|
|
70
|
+
formats verified by Fractional Demand's 15-month B2B SaaS portfolio (17.4M
|
|
71
|
+
impressions, 6,280 ads, $3.5M spend).
|
|
72
|
+
|
|
73
|
+
**TLA vs Standard Sponsored Content (verified 2026 benchmarks):**
|
|
74
|
+
- TLA average CTR: **4.65%** vs 0.68% standard (6.9x lift)
|
|
75
|
+
- TLA average CPC: **$0.51** vs $2.42 standard (~5x cheaper)
|
|
76
|
+
- Comment-to-Like ratio: 8.6% TLA vs 1.2% standard (7.2x more comments per like)
|
|
77
|
+
- Best-performing accounts hit 26-35% comment-to-like ratios
|
|
78
|
+
|
|
79
|
+
**Budget allocation sweet spot:**
|
|
80
|
+
| TLA Budget % | Avg CTR | Avg CPC |
|
|
81
|
+
|--------------|---------|---------|
|
|
82
|
+
| 0% | 1.48% | $13.84 |
|
|
83
|
+
| 1-10% | 0.69% | $1.16 (lowest CTR — running TLAs without supporting architecture is worse than none) |
|
|
84
|
+
| **25-50% (sweet spot)** | **5.08%** | **$0.84** |
|
|
85
|
+
| 50%+ | 3.69% | $6.25 (audience exhaustion above 40-50%) |
|
|
86
|
+
|
|
87
|
+
Practical: **25-40% allocation is the optimal range**. Above 40%, expand target account list first to avoid audience exhaustion. Optimal per-campaign budget: $2,000-$5,000/month.
|
|
88
|
+
|
|
89
|
+
**Creative lifespan (DO NOT rotate at 4-6 weeks for TLA):**
|
|
90
|
+
- Week 1 CTR: ~3.9%
|
|
91
|
+
- Week 8-12 peak: 8%+ CTR
|
|
92
|
+
- Week 19: real drop-off (rotation cliff)
|
|
93
|
+
- **Rotation rules:**
|
|
94
|
+
- CTR >2% at week 6 → keep running (peak ahead)
|
|
95
|
+
- CTR 1-2% at week 6 → monitor weekly
|
|
96
|
+
- CTR <1% at any point → rotate immediately
|
|
97
|
+
- Still strong at week 18 → rotate proactively (cliff incoming)
|
|
98
|
+
|
|
99
|
+
**Seasonal pattern (auction dynamics, not audience behavior):**
|
|
100
|
+
- July-September = TLA peak season (CPC $0.16-$0.38, cheapest of year as enterprise advertisers pull back)
|
|
101
|
+
- December = worst month (2.64% CTR, $2.12 CPC — reduce spend)
|
|
102
|
+
- January-February = relaunch + test window (low competition)
|
|
103
|
+
|
|
104
|
+
**3-Layer Playbook (run as stack, not standalone):**
|
|
105
|
+
1. **Warm (50% TLA budget):** Days 1-30, target account list + job title, pure value content, zero CTA, let ICP see creator 3-5x before asking
|
|
106
|
+
2. **Retarget engagers (30%):** Days 31-60, anyone who engaged with Layer 1 moves to retargeting audience
|
|
107
|
+
3. **Convert (20%):** Ongoing, direct CTA (case study, demo, event), they already know who you are
|
|
108
|
+
|
|
109
|
+
**What works in 2026 TLA copy:**
|
|
110
|
+
- Contrarian takes ("Everyone says X. We tested it.")
|
|
111
|
+
- Transparent failures
|
|
112
|
+
- Specific numbers ("We cut CPL 34% doing this one thing")
|
|
113
|
+
- Process reveals (step-by-step)
|
|
114
|
+
- Hooks under 150 words before "see more" cutoff
|
|
115
|
+
- Raw phone video under 90 seconds
|
|
116
|
+
- Promoted organic posts > purpose-built ads
|
|
117
|
+
|
|
118
|
+
**What is dying:**
|
|
119
|
+
- Long-form storytelling as hook (algorithm punishes it)
|
|
120
|
+
- Company milestone posts repurposed as TLA
|
|
121
|
+
- Generic authority content ("leadership is about…")
|
|
122
|
+
- Polished listicle formats
|
|
123
|
+
- Links in post body (LinkedIn penalizes)
|
|
124
|
+
- CTA-heavy copy in post text
|
|
125
|
+
- Same creator past 18 weeks without rotation
|
|
126
|
+
|
|
127
|
+
Evaluate:
|
|
128
|
+
- Are TLAs being used? (If not, HIGH priority recommendation)
|
|
129
|
+
- Are they getting **25-40%** of total LinkedIn budget?
|
|
130
|
+
- Are the right employees selected (industry credibility, active posters)?
|
|
131
|
+
- Is post content authentic and valuable (not salesy)?
|
|
132
|
+
- Are TLAs run as a 3-layer stack or as a standalone campaign?
|
|
133
|
+
|
|
134
|
+
## Ad Format Benchmarks
|
|
135
|
+
|
|
136
|
+
| Format | Key Metric |
|
|
137
|
+
|--------|-----------|
|
|
138
|
+
| Document Ads | 7.00% engagement rate |
|
|
139
|
+
| Conversation Ads | 50-60% open rate |
|
|
140
|
+
|
|
141
|
+
**Note:** EU Sponsored Messaging (InMail/Conversation Ads) discontinued since Jan 2022.
|
|
142
|
+
|
|
143
|
+
## LinkedIn Audience Network
|
|
144
|
+
|
|
145
|
+
Expert consensus is OFF. Quality is poor, and it dilutes campaign performance data.
|
|
146
|
+
Disable LinkedIn Audience Network unless specifically testing with isolated budget.
|
|
147
|
+
|
|
148
|
+
## ABM Strategy Assessment
|
|
149
|
+
|
|
150
|
+
For B2B Enterprise accounts:
|
|
151
|
+
- Company list uploaded and segmented by tier (Tier 1, 2, 3)
|
|
152
|
+
- Custom content per tier (personalized messaging)
|
|
153
|
+
- Account penetration tracking (contacts reached per target account)
|
|
154
|
+
- Integration with CRM/ABM platform (Demandbase, 6sense, etc.)
|
|
155
|
+
|
|
156
|
+
## LinkedIn Context
|
|
157
|
+
|
|
158
|
+
| Setting | Value |
|
|
159
|
+
|---------|-------|
|
|
160
|
+
| Minimum audience size | 500 (for ads to run) |
|
|
161
|
+
| Lead Gen Form CVR benchmark | 13% |
|
|
162
|
+
| TLA CPC (verified 2026, B2B SaaS) | $0.51 avg, $0.16 in Aug peak |
|
|
163
|
+
| Standard SC CPC (verified 2026) | $2.42 avg |
|
|
164
|
+
| TLA vs standard CTR | 6.9x lift (4.65% vs 0.68%) |
|
|
165
|
+
| Hierarchy rename | Oct 2025 (Campaign Group → Campaign → Ad) |
|
|
166
|
+
| Predictive Audiences | Replaced Lookalikes Feb 2024 |
|
|
167
|
+
|
|
168
|
+
## Key Thresholds
|
|
169
|
+
|
|
170
|
+
| Metric | Pass | Warning | Fail |
|
|
171
|
+
|--------|------|---------|------|
|
|
172
|
+
| CTR (Sponsored Content) | ≥0.44% | 0.30-0.44% | <0.30% |
|
|
173
|
+
| CPC (average) | ≤$7.00 | $7-10 | >$10.00 |
|
|
174
|
+
| Lead Gen CVR | ≥10% | 5-10% | <5% |
|
|
175
|
+
| Message frequency | ≤1/30 days | 1/15-30 days | >1/15 days |
|
|
176
|
+
| TLA budget share | 25-40% (sweet spot) | 15-24% or 41-50% | <15% or >50% (audience exhaustion) |
|
|
177
|
+
| TLA CTR | ≥4% | 2-4% | <2% |
|
|
178
|
+
| TLA CPC | ≤$1.00 | $1.00-$2.00 | >$2.00 |
|
|
179
|
+
| TLA creative lifespan | 8-18 weeks | 4-8 weeks | <4 weeks |
|
|
180
|
+
|
|
181
|
+
## Output
|
|
182
|
+
|
|
183
|
+
### LinkedIn Ads Health Score
|
|
184
|
+
|
|
185
|
+
```
|
|
186
|
+
LinkedIn Ads Health Score: XX/100 (Grade: X)
|
|
187
|
+
|
|
188
|
+
Technical Setup: XX/100 ████████░░ (25%)
|
|
189
|
+
Audience: XX/100 ██████████ (25%)
|
|
190
|
+
Creative: XX/100 ███████░░░ (20%)
|
|
191
|
+
Lead Gen: XX/100 █████░░░░░ (15%)
|
|
192
|
+
Budget & Bidding: XX/100 ████████░░ (15%)
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
### Deliverables
|
|
196
|
+
- `LINKEDIN-ADS-REPORT.md`: Full 27-check findings with pass/warning/fail
|
|
197
|
+
- TLA adoption roadmap (if not using)
|
|
198
|
+
- ABM strategy recommendations (for B2B)
|
|
199
|
+
- Lead Gen Form optimization priorities
|
|
200
|
+
- Quick Wins sorted by impact
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ads-math
|
|
3
|
+
version: 1.5.0
|
|
4
|
+
description: "PPC financial calculator and modeling tool. CPA, ROAS, CPL calculations, break-even analysis, impression share opportunity sizing, budget forecasting, LTV:CAC ratio analysis, and MER (Marketing Efficiency Ratio) assessment. Requires zero API access. Works with pasted data from exports. Use when user says PPC math, ad calculator, break-even, budget forecast, ROAS calculator, CPA calculator, impression share, LTV CAC, or MER."
|
|
5
|
+
user-invokable: false
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# PPC Financial Calculator & Modeling
|
|
9
|
+
|
|
10
|
+
<!-- Created: 2026-04-13 | v1.5 -->
|
|
11
|
+
<!-- Source: itallstartedwithaidea/google-ads-skills (PPC math concept) -->
|
|
12
|
+
|
|
13
|
+
## Process
|
|
14
|
+
|
|
15
|
+
1. Ask the user what calculation they need (or detect from context)
|
|
16
|
+
2. Collect required inputs (from pasted data, exports, or verbal description)
|
|
17
|
+
3. Perform calculations with clear formulas shown
|
|
18
|
+
4. Present results with interpretation and recommendations
|
|
19
|
+
5. Flag any concerning metrics or benchmarks
|
|
20
|
+
|
|
21
|
+
## Calculators
|
|
22
|
+
|
|
23
|
+
### 1. CPA Calculator
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
CPA = Total Spend / Total Conversions
|
|
27
|
+
|
|
28
|
+
Inputs needed:
|
|
29
|
+
- Total ad spend (period)
|
|
30
|
+
- Total conversions (same period)
|
|
31
|
+
|
|
32
|
+
Output:
|
|
33
|
+
- CPA with period context
|
|
34
|
+
- CPA trend (if historical data provided)
|
|
35
|
+
- Comparison to industry benchmark (from benchmarks.md)
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### 2. ROAS Calculator
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
ROAS = Revenue from Ads / Ad Spend
|
|
42
|
+
ROAS% = (Revenue - Spend) / Spend × 100
|
|
43
|
+
|
|
44
|
+
Inputs needed:
|
|
45
|
+
- Total ad spend
|
|
46
|
+
- Total revenue attributed to ads
|
|
47
|
+
|
|
48
|
+
Output:
|
|
49
|
+
- ROAS as ratio (e.g., 3.5x) and percentage (250%)
|
|
50
|
+
- Break-even ROAS (based on margins if provided)
|
|
51
|
+
- Comparison to platform benchmarks
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### 3. Break-Even Analysis
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
Break-Even CPA = Average Order Value × Profit Margin
|
|
58
|
+
Break-Even ROAS = 1 / Profit Margin
|
|
59
|
+
|
|
60
|
+
Inputs needed:
|
|
61
|
+
- Average order value (AOV) OR average deal value
|
|
62
|
+
- Profit margin (gross margin %)
|
|
63
|
+
- Current CPA or ROAS
|
|
64
|
+
|
|
65
|
+
Output:
|
|
66
|
+
- Maximum profitable CPA
|
|
67
|
+
- Minimum profitable ROAS
|
|
68
|
+
- Current headroom (how far above/below break-even)
|
|
69
|
+
- Recommendation: scale, maintain, or cut
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### 4. Impression Share Opportunity
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
Impression Share Lost (Budget) = opportunity from budget increase
|
|
76
|
+
Impression Share Lost (Rank) = opportunity from bid/quality improvement
|
|
77
|
+
|
|
78
|
+
Revenue Opportunity = Current Revenue × (1 / Current IS - 1)
|
|
79
|
+
|
|
80
|
+
Inputs needed:
|
|
81
|
+
- Current impression share %
|
|
82
|
+
- IS lost to budget %
|
|
83
|
+
- IS lost to rank %
|
|
84
|
+
- Current spend and conversions
|
|
85
|
+
|
|
86
|
+
Output:
|
|
87
|
+
- Estimated additional conversions from full IS
|
|
88
|
+
- Budget needed for full IS (estimated)
|
|
89
|
+
- Priority: budget increase vs quality improvement
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 5. Budget Forecasting
|
|
93
|
+
|
|
94
|
+
```
|
|
95
|
+
Projected Spend = Daily Budget × Days in Period
|
|
96
|
+
Projected Conversions = Projected Spend / Historical CPA
|
|
97
|
+
Projected Revenue = Projected Conversions × AOV
|
|
98
|
+
|
|
99
|
+
Scaling scenarios:
|
|
100
|
+
- Conservative: +20% budget → estimated impact
|
|
101
|
+
- Moderate: +50% budget → estimated impact
|
|
102
|
+
- Aggressive: +100% budget → estimated impact (with diminishing returns caveat)
|
|
103
|
+
|
|
104
|
+
Inputs needed:
|
|
105
|
+
- Current daily budget
|
|
106
|
+
- Historical CPA (last 30 days)
|
|
107
|
+
- Forecast period
|
|
108
|
+
- AOV (if revenue projection needed)
|
|
109
|
+
|
|
110
|
+
Output:
|
|
111
|
+
- 3 scenarios with spend, conversions, revenue projections
|
|
112
|
+
- Diminishing returns warning for aggressive scaling
|
|
113
|
+
- 20% scaling rule reminder (never increase >20% at a time)
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### 6. LTV:CAC Ratio
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
CAC = Total Marketing Spend / New Customers Acquired
|
|
120
|
+
LTV = Average Revenue per Customer × Average Customer Lifespan
|
|
121
|
+
LTV:CAC Ratio = LTV / CAC
|
|
122
|
+
|
|
123
|
+
Inputs needed:
|
|
124
|
+
- Total marketing spend (all channels)
|
|
125
|
+
- New customers acquired
|
|
126
|
+
- Average revenue per customer (monthly or annual)
|
|
127
|
+
- Average customer lifespan (months)
|
|
128
|
+
- Optional: gross margin for unit economics
|
|
129
|
+
|
|
130
|
+
Output:
|
|
131
|
+
- LTV:CAC ratio with interpretation:
|
|
132
|
+
- <1:1 = losing money on every customer
|
|
133
|
+
- 1:1-2:1 = break-even to marginal
|
|
134
|
+
- 3:1 = healthy (SaaS benchmark)
|
|
135
|
+
- 5:1+ = may be under-investing in growth
|
|
136
|
+
- Payback period: months to recover CAC
|
|
137
|
+
- Recommendation based on ratio
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### 7. MER (Marketing Efficiency Ratio)
|
|
141
|
+
|
|
142
|
+
```
|
|
143
|
+
MER = Total Revenue / Total Marketing Spend
|
|
144
|
+
|
|
145
|
+
Inputs needed:
|
|
146
|
+
- Total business revenue (period)
|
|
147
|
+
- Total marketing spend across ALL channels (same period)
|
|
148
|
+
|
|
149
|
+
Output:
|
|
150
|
+
- MER ratio (e.g., 5.0x)
|
|
151
|
+
- Interpretation:
|
|
152
|
+
- E-commerce: 3-5x typical, 8x+ excellent
|
|
153
|
+
- SaaS: 5-10x typical (higher margins)
|
|
154
|
+
- Local service: 3-8x typical
|
|
155
|
+
- Comparison to business-type benchmark
|
|
156
|
+
- Note: MER captures blended efficiency including organic, brand, and retention
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Incrementality & Advanced Measurement
|
|
160
|
+
|
|
161
|
+
For advanced accounts evaluating cross-channel contribution:
|
|
162
|
+
- **Meta Incremental Attribution** (launched April 2025): AI-powered holdout testing measuring real causal impact. Evaluate if budget exceeds $5K/month.
|
|
163
|
+
- **Google Meridian** (2025): Open-source Marketing Mix Model for incrementality measurement across channels.
|
|
164
|
+
- These tools complement PPC math calculations by measuring what would NOT have happened without the ad spend.
|
|
165
|
+
|
|
166
|
+
For large accounts detecting small effects (5% MDE), multiply the 10% MDE sample by ~4x.
|
|
167
|
+
|
|
168
|
+
## Quick Formulas Reference
|
|
169
|
+
|
|
170
|
+
| Metric | Formula |
|
|
171
|
+
|--------|---------|
|
|
172
|
+
| CPA | Spend / Conversions |
|
|
173
|
+
| ROAS | Revenue / Spend |
|
|
174
|
+
| CTR | Clicks / Impressions × 100 |
|
|
175
|
+
| CVR | Conversions / Clicks × 100 |
|
|
176
|
+
| CPC | Spend / Clicks |
|
|
177
|
+
| CPM | (Spend / Impressions) × 1,000 |
|
|
178
|
+
| CPL | Spend / Leads |
|
|
179
|
+
| Break-Even CPA | AOV × Margin% |
|
|
180
|
+
| Break-Even ROAS | 1 / Margin% |
|
|
181
|
+
| LTV | ARPU × Avg Lifespan |
|
|
182
|
+
| CAC | Total Marketing / New Customers |
|
|
183
|
+
| MER | Total Revenue / Total Marketing |
|
|
184
|
+
| Impression Share Opp | Revenue × (1/IS - 1) |
|
|
185
|
+
|
|
186
|
+
## Output Format
|
|
187
|
+
|
|
188
|
+
```
|
|
189
|
+
## PPC Financial Analysis
|
|
190
|
+
|
|
191
|
+
### [Calculator Name]
|
|
192
|
+
|
|
193
|
+
**Inputs:**
|
|
194
|
+
- [Listed inputs with values]
|
|
195
|
+
|
|
196
|
+
**Results:**
|
|
197
|
+
| Metric | Value | Benchmark | Status |
|
|
198
|
+
|--------|-------|-----------|--------|
|
|
199
|
+
| [Metric] | [Value] | [Benchmark] | PASS/WARNING/FAIL |
|
|
200
|
+
|
|
201
|
+
**Interpretation:**
|
|
202
|
+
[1-2 sentence analysis]
|
|
203
|
+
|
|
204
|
+
**Recommendation:**
|
|
205
|
+
[Actionable next step]
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
## Data to Request
|
|
209
|
+
|
|
210
|
+
If the user doesn't provide enough data, ask for:
|
|
211
|
+
- Platform and campaign type
|
|
212
|
+
- Time period for analysis
|
|
213
|
+
- Spend and conversion data
|
|
214
|
+
- Revenue data (if ROAS/break-even needed)
|
|
215
|
+
- Margin data (if break-even/LTV needed)
|
|
216
|
+
- Business type (for benchmark comparison)
|