fix(skill): rewrite marketing-demand-acquisition with proper structure (#72) (#137)

- Reduce SKILL.md from 986 to 310 lines
- Add trigger phrases to frontmatter
- Add Table of Contents
- Remove marketing language ("Expert acquisition playbook", "2025 Best Practice")
- Use imperative voice consistently
- Add validation steps after workflows
- Create 4 missing reference files:
  - hubspot-workflows.md - Lead scoring, nurture, assignment templates
  - campaign-templates.md - LinkedIn, Google, Meta structures
  - international-playbooks.md - EU, US, Canada market tactics
  - attribution-guide.md - Multi-touch attribution, A/B testing

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Alireza Rezvani
2026-01-30 12:46:11 +01:00
committed by GitHub
parent 17661fd4ef
commit 7ffdb9784b
5 changed files with 1042 additions and 911 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,217 @@
# Attribution Guide
Multi-touch attribution setup, analysis, and reporting.
---
## Table of Contents
- [Attribution Models](#attribution-models)
- [HubSpot Attribution Setup](#hubspot-attribution-setup)
- [Google Analytics Configuration](#google-analytics-configuration)
- [Reporting Dashboards](#reporting-dashboards)
- [A/B Testing Framework](#ab-testing-framework)
---
## Attribution Models
### Model Comparison
| Model | Credit Distribution | Best For |
|-------|---------------------|----------|
| First-Touch | 100% to first interaction | Awareness campaigns |
| Last-Touch | 100% to last interaction | Direct response, BOFU |
| Linear | Equal across all touchpoints | Simple full-funnel view |
| Time Decay | More credit to recent touches | Long sales cycles |
| W-Shaped | 40% first, 20% middle, 40% last | Hybrid PLG/Sales-Led |
### Recommended Model: W-Shaped
For Series A hybrid motion:
- 40% credit to first touch (awareness)
- 20% distributed across middle touches
- 40% credit to last touch (conversion)
**Rationale:** Balances discovery and closing influence.
---
## HubSpot Attribution Setup
### Enable Attribution Reports
1. Navigate to Marketing → Reports → Attribution
2. Select attribution model (W-Shaped recommended)
3. Define conversion event (deal created, SQL stage)
4. Set lookback window (90 days typical)
### Attribution Report Types
| Report | Purpose | Frequency |
|--------|---------|-----------|
| Revenue Attribution | Credit revenue to channels | Monthly |
| Content Attribution | Credit to content assets | Weekly |
| Campaign Attribution | Credit to campaigns | Per campaign |
### Custom Attribution Report
Create: Marketing → Reports → Create Report
**Metrics:**
- Marketing-sourced pipeline $
- Marketing-influenced revenue
- CAC by channel
- ROAS by campaign
**Dimensions:**
- Channel (Organic, Paid, Email, Social, Referral)
- Campaign
- Region (US, EU, Canada)
- Funnel stage (TOFU, MOFU, BOFU)
**Validation:** Run report for past 90 days. Verify all channels appear with data.
---
## Google Analytics Configuration
### GA4 Events to Track
**Engagement Events:**
```
page_view (auto-tracked)
scroll (75% depth)
video_play (product demos)
file_download (whitepapers, eBooks)
```
**Conversion Events:**
```
sign_up (free trial, account)
demo_request (calendar booking)
contact_form (inbound interest)
pricing_view (pricing page visit)
```
### Custom Dimensions
| Dimension | Source | Purpose |
|-----------|--------|---------|
| User Type | CRM sync | Free vs Paid |
| Plan Type | CRM sync | Starter, Pro, Enterprise |
| Lead Status | HubSpot | MQL, SQL, Customer |
| Campaign ID | UTM | HubSpot campaign |
### GA4 + HubSpot Integration
1. Install HubSpot tracking code (includes GA4)
2. Or use Google Tag Manager for advanced tracking
3. Sync GA4 audiences → HubSpot lists for retargeting
4. Import GA4 conversions to Google Ads
**Validation:** Real-time report shows events firing. Conversion events marked correctly.
---
## Reporting Dashboards
### Weekly Performance Dashboard
| Metric | Purpose | Target |
|--------|---------|--------|
| Visits | Traffic volume | +10% WoW |
| Unique visitors | Reach | +5% WoW |
| Bounce rate | Engagement | <50% |
| MQLs | Lead volume | Weekly target |
| SQLs | Pipeline | Weekly target |
| Conversion rate | Efficiency | >2% |
### Monthly Executive Dashboard
| KPI | Formula | Target |
|-----|---------|--------|
| Marketing-Sourced Pipeline | Sum of new pipeline $ | $X/month |
| Marketing-Sourced Revenue | Closed-won from marketing | $Y/month |
| Blended CAC | Total spend / customers | <$Z |
| MQL→SQL Rate | SQLs / MQLs | >15% |
| Pipeline Velocity | Avg days in pipeline | <60 days |
| ROMI | Revenue / Marketing spend | >3:1 |
### Dashboard Build Process
1. Define KPIs with leadership
2. Create data sources in HubSpot
3. Build visualizations (charts, tables)
4. Set up automated refresh
5. Schedule weekly/monthly distribution
**Validation:** Dashboard shows last 7 days data. All metrics calculating correctly.
---
## A/B Testing Framework
### ICE Prioritization
**Formula:** ICE = (Impact × Confidence × Ease) ÷ 3
| Factor | Rating | Description |
|--------|--------|-------------|
| Impact | 1-10 | Effect on primary metric |
| Confidence | 1-10 | Certainty of success |
| Ease | 1-10 | Implementation difficulty |
### Test Template
```
Hypothesis: [Adding a case study carousel to pricing will
increase demo requests by 20%]
Metric: [Demo requests from /pricing page]
Sample Size: [1000 visitors per variant]
Duration: [2 weeks or until significance]
Success Criteria: [20% lift, 95% confidence]
Variant A (Control): [Current pricing page]
Variant B (Treatment): [Pricing page + case study carousel]
Tools: [HubSpot A/B test or Google Optimize]
```
### Statistical Requirements
- Minimum confidence: 95%
- Minimum sample: 1000 visitors per variant
- Minimum duration: 2 weeks
- Do not stop tests early (false positives)
### Common Test Categories
**Landing Page:**
- Headline variations
- CTA copy and color
- Form length
- Social proof placement
- Hero image type
**Ad Creative:**
- Format (static vs video)
- Messaging angle
- Audience targeting
- Landing page destination
**Email:**
- Subject line length
- Personalization depth
- Send time
- CTA placement
### Test Velocity Target
Series A: 4-6 tests per month
- Realistic win rate: 30-40%
- Document all results (wins and losses)
- Build testing knowledge base
**Validation:** Test reaches statistical significance before declaring winner.

View File

@@ -0,0 +1,221 @@
# Campaign Templates
Ready-to-use campaign briefs and structures for LinkedIn, Google, and Meta.
---
## Table of Contents
- [Campaign Brief Template](#campaign-brief-template)
- [LinkedIn Ads Structure](#linkedin-ads-structure)
- [Google Ads Structure](#google-ads-structure)
- [Meta Ads Structure](#meta-ads-structure)
- [Ad Copy Frameworks](#ad-copy-frameworks)
---
## Campaign Brief Template
Use for every campaign:
```
Campaign Name: [Q2-2025-LinkedIn-ABM-Enterprise]
Objective: [Generate 50 SQLs from Enterprise accounts ($50k+ ACV)]
Budget: [$15k/month]
Duration: [90 days]
Channels: [LinkedIn Ads, Retargeting, Email]
Audience: [Director+ at SaaS companies, 500-5000 employees, EU/US]
Offer: [Gated Industry Benchmark Report]
Success Metrics:
- Primary: 50 SQLs, <$300 CPO
- Secondary: 500 MQLs, 10% MQL→SQL rate, 40% email open rate
HubSpot Setup:
- Campaign ID: [create in HubSpot]
- Lead scoring: +20 for download, +30 for demo request
- Attribution: First-touch + Multi-touch
Handoff Protocol:
- SQL criteria: Title + Company size + Budget confirmed
- Routing: Enterprise SDR team via HubSpot workflow
- SLA: 4-hour response time
```
**Validation:** Campaign appears in HubSpot with all assets tagged.
---
## LinkedIn Ads Structure
### Account Hierarchy
```
Account
└─ Campaign Group: [Q2-2025-Enterprise-ABM]
├─ Campaign 1: [Awareness - Thought Leadership]
│ ├─ Ad Set: [CTO/VP Eng, US, Tech Companies]
│ └─ Creatives: [3 carousel posts, 2 video ads]
├─ Campaign 2: [Consideration - Product Education]
│ ├─ Ad Set: [Engaged audience, retargeting]
│ └─ Creatives: [2 lead gen forms, 1 landing page]
└─ Campaign 3: [Conversion - Demo Requests]
├─ Ad Set: [Website visitors, content downloaders]
└─ Creatives: [Direct demo CTA, case study]
```
### Targeting Settings
| Parameter | Series A Sweet Spot |
|-----------|---------------------|
| Company Size | 50-5000 employees |
| Job Titles | Director+, VP+, C-level |
| Industries | Software, SaaS, Tech Services |
| Budget | Start $50/day per campaign |
### Scaling Rules
- CAC < target → Increase budget 20% weekly
- CAC > target → Pause, optimize, relaunch
- Scale 20% weekly maximum to maintain performance
### Lead Gen Forms vs Landing Pages
| Type | Conversion | Quality | Use Case |
|------|------------|---------|----------|
| Lead Gen Forms | 2-3x higher | Lower | TOFU/MOFU |
| Landing Pages | Lower | Higher | BOFU/demos |
**Validation:** LinkedIn Insight Tag firing. Matched audiences syncing.
---
## Google Ads Structure
### Campaign Priority
1. **Search - Brand** (highest priority, protect brand terms)
2. **Search - Competitor** (steal market share)
3. **Search - Solution** (problem-aware buyers)
4. **Search - Product Category** (earlier stage)
5. **Display - Retargeting** (re-engage warm traffic)
### Search Campaign Template
```
Campaign: [Search-Solution-Keywords]
├─ Ad Group: [project management software]
│ ├─ Keywords:
│ │ - "project management software" [Phrase]
│ │ - "best project management tool" [Phrase]
│ │ - +project +management +solution [Broad Match Modifier]
│ └─ Ads: [3 responsive search ads]
└─ Ad Group: [team collaboration tools]
├─ Keywords: [5-10 tightly themed keywords]
└─ Ads: [3 responsive search ads]
```
### Keyword Strategy
| Type | Match | Bid Priority |
|------|-------|--------------|
| Brand Terms | Exact | High - protect brand |
| Competitor Terms | Phrase | Medium - comparison |
| Solution Terms | Phrase | Medium - category |
| Problem Terms | Broad | Lower - education |
### Negative Keywords (Maintain 100+)
```
free, cheap, jobs, career, reviews, salary, login, support,
download, tutorial, course, certification, example, template
```
### Bid Strategy Progression
1. New campaigns: Manual CPC (control)
2. After 50+ conversions: Target CPA
3. After 100+ conversions: Maximize Conversions with tCPA
4. EU markets: Bid 15-20% higher for same quality
**Validation:** Conversion tracking firing. Search terms report reviewed weekly.
---
## Meta Ads Structure
### When to Use Meta
| Scenario | Meta | LinkedIn |
|----------|------|----------|
| ACV <$10k | ✅ | ❌ |
| Visual product | ✅ | ❌ |
| SMB audience | ✅ | ❌ |
| Enterprise | ❌ | ✅ |
### Campaign Template
```
Campaign Objective: [Conversions]
├─ Ad Set 1: [Lookalike - 1% of converters]
│ └─ Placement: [Feed + Stories, Auto]
├─ Ad Set 2: [Interest - Business Software]
│ └─ Placement: [Feed only]
└─ Ad Set 3: [Retargeting - Website 30d]
└─ Placement: [All placements]
```
### Creative Best Practices
- Video format: 1:1 or 9:16 for Stories
- First 3 seconds: Hook with problem or result
- Show product UI in action
- Add captions (85% watch muted)
- Test 3-5 variants per campaign
**Validation:** Meta Pixel events firing. Conversion values passing correctly.
---
## Ad Copy Frameworks
### LinkedIn Thought Leadership
```
[Industry insight or contrarian take]
[Supporting data point or experience]
[Call to discuss or engage]
#RelevantHashtag #Industry
```
### LinkedIn Social Proof
```
[Customer result with specific numbers]
"[Customer quote]"
- [Name, Title, Company]
[Soft CTA: See how →]
```
### Google Responsive Search Ads
**Headlines (15 required):**
- H1-3: Value props (Save 10 hours/week, Trusted by 500+ teams)
- H4-6: Features (AI-powered, Real-time sync, Mobile app)
- H7-9: Social proof (4.8★ G2 rating, Used by Microsoft)
- H10-12: CTAs (Start free trial, Book demo, See pricing)
- H13-15: Dynamic keyword insertion
**Descriptions (4 required):**
- D1: Primary value prop + CTA (30-60 chars)
- D2: Feature list + differentiator (60-90 chars)
- D3: Social proof + urgency (45-90 chars)
- D4: Backup generic (60-90 chars)
**Validation:** Ad strength score of "Excellent" before launch.

View File

@@ -0,0 +1,168 @@
# HubSpot Workflow Templates
Pre-built workflow configurations for lead scoring, nurturing, and assignment.
---
## Table of Contents
- [Campaign Tracking Setup](#campaign-tracking-setup)
- [Lead Scoring Configuration](#lead-scoring-configuration)
- [MQL to SQL Workflow](#mql-to-sql-workflow)
- [Partner Lead Tracking](#partner-lead-tracking)
- [Nurture Sequences](#nurture-sequences)
---
## Campaign Tracking Setup
### Create Campaign in HubSpot
1. Navigate to Marketing → Campaigns → Create Campaign
2. Name using convention: `Q[N]-[YEAR]-[CHANNEL]-[CAMPAIGN-TYPE]`
- Example: `Q2-2025-LinkedIn-ABM-Enterprise`
3. Tag all assets (landing pages, emails, ads) with campaign ID
### UTM Parameter Structure
```
utm_source={channel} // linkedin, google, facebook
utm_medium={type} // cpc, display, email, organic
utm_campaign={campaign-id} // q2-2025-linkedin-abm-enterprise
utm_content={variant} // ad-variant-a, email-1
utm_term={keyword} // [for paid search only]
```
**Validation:** Verify UTM parameters appear in HubSpot contact records after test submission.
---
## Lead Scoring Configuration
### Navigate to Configuration
Settings → Marketing → Lead Scoring
### Scoring Rules
| Action | Points | Rationale |
|--------|--------|-----------|
| Content download | +10 to +20 | Based on content depth |
| Demo request | +30 | High intent signal |
| Pricing page visit | +15 | Commercial intent |
| Webinar attendance | +20 | Engaged prospect |
| Email open | +2 | Basic engagement |
| Email click | +5 | Active interest |
### Channel Quality Modifiers
| Source | Points | Rationale |
|--------|--------|-----------|
| LinkedIn | +5 | Professional context |
| Google Search | +10 | Active search intent |
| Organic | +15 | Self-discovery |
| Referral | +20 | Pre-qualified |
**Validation:** Test lead scoring by creating a test contact and triggering each action.
---
## MQL to SQL Workflow
### SQL Definition Criteria
```
Required (all must be true):
✅ Job title: Director+ (or Budget Authority confirmed)
✅ Company size: 50-5000 employees
✅ Budget: $10k+ annual
✅ Timeline: Buying within 90 days
✅ Engagement: Demo requested OR High intent action
```
### Workflow Configuration
1. **Trigger:** Lead score reaches MQL threshold (>75 points)
2. **Action 1:** Send automated email to SDR with lead details
3. **Action 2:** Create task for SDR qualification call
4. **Branch Logic:**
- If qualified → Update lifecycle stage to SQL, assign to AE
- If not qualified → Move to nurture list, reduce lead score by 30
### SLA Configuration
| Handoff | Target | Escalation |
|---------|--------|------------|
| SDR responds to MQL | 4 hours | Manager notification |
| AE books demo with SQL | 24 hours | Director notification |
| First demo scheduled | 3 business days | VP notification |
**Validation:** Test workflow with a sample lead. Verify notifications trigger correctly.
---
## Partner Lead Tracking
### Create Partner Property
1. Settings → Properties → Create Property
2. Property name: `Partner Source`
3. Type: Dropdown select
4. Values: Partner A, Partner B, Affiliate Network, Direct
### Partner UTM Configuration
```
Partner links: ?utm_source=partner-name&utm_medium=referral
```
### Lead Assignment Workflow
1. **Trigger:** Contact property `Partner Source` is set
2. **Action:** Assign to Partner Manager
3. **Notification:** Slack alert when partner lead arrives
### Partner Reporting Dashboard
Create custom report: Marketing → Reports → Create Report
- Metrics: Leads, Pipeline, Revenue by Partner Source
- Dimensions: Partner Name, Time Period
**Validation:** Submit test lead with partner UTM. Verify property populates and routing works.
---
## Nurture Sequences
### Lost Opportunity Recycle
**Trigger:** Deal stage = Closed Lost
**Sequence:**
1. Day 0: Add to nurture list, remove from active campaigns
2. Day 30: Educational content email
3. Day 60: Industry insights email
4. Day 90: Re-engagement offer email
5. Month 6: SDR re-qualification task
### TOFU to MOFU Progression
**Trigger:** Contact downloads 2+ content pieces
**Sequence:**
1. Day 0: Thank you email with related content
2. Day 3: Case study email
3. Day 7: Webinar invitation
4. Day 14: Demo offer (soft CTA)
### Closed Lost Reason Tracking
Configure deal properties to capture:
- Price too high
- Missing features
- Chose competitor
- No budget
- Bad timing
- Champion left company
**Use data to inform:** Product roadmap, pricing adjustments, competitive positioning.

View File

@@ -0,0 +1,200 @@
# International Market Playbooks
Market-specific tactics for EU, US, and Canada expansion.
---
## Table of Contents
- [EU Market Entry](#eu-market-entry)
- [US Market Entry](#us-market-entry)
- [Canada Market Entry](#canada-market-entry)
- [Budget Allocation by Region](#budget-allocation-by-region)
- [Localization Checklist](#localization-checklist)
---
## EU Market Entry
### Compliance Requirements
| Requirement | Implementation |
|-------------|----------------|
| GDPR consent | Double opt-in for email |
| Cookie consent | Explicit consent banner |
| Data storage | EU data center option |
| Privacy policy | EU-specific language |
**HubSpot Configuration:**
- Enable double opt-in in Forms settings
- Configure consent tracking properties
- Set up GDPR deletion workflows
### Localization Priority
| Language | Market Priority | Revenue Potential |
|----------|-----------------|-------------------|
| German (DE) | High | Largest EU economy |
| French (FR) | High | Second largest EU |
| Spanish (ES) | Medium | Growing tech sector |
| Dutch (NL) | Medium | English proficiency |
| Italian (IT) | Lower | Later expansion |
### Channel Mix (EU)
| Channel | Budget % | Rationale |
|---------|----------|-----------|
| LinkedIn | 40% | Primary B2B channel |
| Google Ads | 25% | High intent capture |
| SEO | 20% | Long-term investment |
| Partnerships | 15% | Local credibility |
### EU Messaging Adjustments
- More formal tone than US
- Focus on data security and compliance
- Emphasize local customer references
- Include EU headquarters or presence
- Display prices in EUR
**Validation:** Test landing pages with EU VPN. Verify consent flows work correctly.
---
## US Market Entry
### Market Characteristics
| Aspect | US Approach |
|--------|-------------|
| Messaging | Direct, ROI-focused |
| Tone | Less formal than EU |
| Sales cycle | Faster decision-making |
| Proof points | Dollar impact, not features |
### Channel Mix (US)
| Channel | Budget % | Rationale |
|---------|----------|-----------|
| Google Ads | 35% | High commercial intent |
| LinkedIn | 30% | B2B targeting |
| SEO | 20% | Competitive necessity |
| Partnerships | 15% | Industry associations |
### Partner Ecosystem
| Partner Type | Examples |
|--------------|----------|
| Review sites | G2, Capterra, TrustRadius |
| Industry associations | SaaStr, ProductLed |
| Integration partners | Salesforce, HubSpot |
| Channel partners | VARs, consultants |
### Content Adjustments
- Case studies with $ impact metrics
- Faster, more aggressive CTAs
- Video testimonials with customers
- Comparison pages (vs. competitors)
**Validation:** US-based speed test. Payment processing in USD functional.
---
## Canada Market Entry
### Market Characteristics
| Aspect | Canada Approach |
|--------|-----------------|
| Language | English + French (Quebec) |
| Regulation | PIPEDA compliance |
| Messaging | Mix of US and EU styles |
| Pricing | CAD display preferred |
### Regional Considerations
| Region | Language | Focus |
|--------|----------|-------|
| Ontario | English | Tech hub, Toronto |
| British Columbia | English | Vancouver tech scene |
| Quebec | French | Requires localization |
| Alberta | English | Energy sector |
### Channel Mix (Canada)
| Channel | Budget % | Rationale |
|---------|----------|-----------|
| Google Ads | 35% | Primary acquisition |
| LinkedIn | 30% | Professional targeting |
| SEO | 20% | Local content |
| Partnerships | 15% | Local associations |
**Validation:** French Quebec landing page tested. CAD pricing displays correctly.
---
## Budget Allocation by Region
### Series A Recommended Split
| Region | Budget % | Expected CAC |
|--------|----------|--------------|
| US | 50% | $150-300 |
| EU | 35% | $200-400 |
| Canada | 15% | $175-350 |
### Channel by Region Matrix
| Channel | US | EU | Canada |
|---------|----|----|--------|
| LinkedIn | 30% | 40% | 30% |
| Google | 35% | 25% | 35% |
| SEO | 20% | 20% | 20% |
| Partners | 15% | 15% | 15% |
### Scaling Criteria
Expand regional budget when:
- CAC < 80% of target for 4 consecutive weeks
- MQL→SQL rate > regional benchmark
- Sales team has regional capacity
---
## Localization Checklist
### Website Localization
- [ ] Translate navigation and UI elements
- [ ] Localize pricing (currency, formatting)
- [ ] Adapt case studies to regional references
- [ ] Update screenshots with localized UI
- [ ] Configure hreflang tags correctly
- [ ] Submit to regional search consoles
### Content Localization
- [ ] Translate (don't just localize) key pages
- [ ] Adapt idioms and cultural references
- [ ] Update date formats (DD/MM/YYYY vs MM/DD/YYYY)
- [ ] Adjust number formatting (1,000 vs 1.000)
- [ ] Use regional spelling (optimise vs optimize)
### Campaign Localization
- [ ] Translate ad copy (not just translate, adapt)
- [ ] Create regional landing pages
- [ ] Set up regional tracking parameters
- [ ] Configure regional lead routing
- [ ] Align with regional sales hours
### Legal Localization
- [ ] GDPR compliance (EU)
- [ ] PIPEDA compliance (Canada)
- [ ] Cookie consent mechanisms
- [ ] Privacy policy translations
- [ ] Terms of service updates
**Validation:** Native speaker review of all localized content before launch.