- name
- ads-audience
- description
- Builds 5-7 forensic audience personas from a business URL — demographics, psychographics, pain points, buying triggers, platform-specific targeting (Meta/Google/LinkedIn/TikTok/Pinterest), persona scoring, negative audiences. Use when the user says "/ads audience <url>", "build personas", "buyer personas", "customer profiles", "who should I target", "targeting research", "audience research", or in French "construis les personas", "personas d'audience", "qui cibler", "profils clients", "recherche d'audience". Also runs as a subagent of /ads strategy.
# ads-audience — Audience Persona Builder
> **Portability note:** Self-contained — uses only `WebFetch` + `WebSearch` and writes one Markdown file to the CWD. No VPS-only infra. Runs anywhere Claude Code runs.
## Skill Purpose
Build 5-7 hyper-detailed audience personas from a business URL. Each persona goes far beyond basic demographics — it maps psychographic profiles, buying triggers, objections, content consumption habits, platform presence, and ready-to-use targeting parameters for Meta, Google, LinkedIn, TikTok, and Pinterest. Includes persona relevance scoring (1-5) and a negative audience section defining who NOT to target. Produces a single, copy-paste-ready deliverable that an ad buyer can immediately use to build campaigns.
## When to Use
- User runs `/ads audience <url>`
- User asks to build audience personas, customer profiles, or targeting research
- Called as a subagent from `/ads strategy` (the main orchestrator)
- User wants to know "who should I target?" for a business
- User needs platform-specific targeting parameters for campaign setup
## Dynamic Workflow orchestration
The unit of fan-out here is **one persona** (plus two cross-cutting units: negative audiences, cross-persona synthesis). Personas are file-disjoint research tasks — parallelize them; the synthesis is your own job.
1. **Plan.** Run Step 1 (Business Intelligence) + Step 2 (Industry Intelligence) ONCE, in the orchestrator. Output: a shared brief (business facts, price tier, geo, customer evidence) that every persona branch reuses. From it, name the 5-7 candidate personas before building any.
2. **Parallel fan-out.** Build the 5-7 personas concurrently — each branch owns ONE persona and fills the full template (Step 3) from the shared brief + persona-specific `WebSearch`. No branch may invent business facts; it pulls them from the shared brief or cites its own search.
3. **Adversarial verify (2-of-3).** Before accepting a persona, falsify it through 3 independent lenses; a persona ships only if **≥2 of 3 pass**:
- **Targetability lens:** Are Meta interests / Google keywords / LinkedIn titles REAL, selectable parameters (not invented)? Fail = hallucinated targeting.
- **Evidence lens:** Do demographics/pain points trace to a source (testimonial, review, industry data) and not just vibes? Fail = uncited assertion.
- **Distinctness lens:** Is this persona meaningfully different from the others (not the same buyer relabeled)? Fail = duplicate segment — merge or replace.
4. **Loop-until-dry.** If a persona fails ≥2 lenses, regenerate or replace it (re-search, don't retry blind). Stop when you hold 5-7 personas that each pass — never pad to 7 with weak duplicates.
5. **Synthesize.** YOU write Steps 4-6 (scoring matrix, negative audiences, cross-persona insights) over the verified set — never paste a branch's summary as the verdict. The matrix must rank the personas you actually kept.
> Single-pass fallback: if running branches isn't available, do the same sequentially — build → run the 3 lenses → keep/replace — one persona at a time. The verify gate is mandatory either way.
## Input Requirements
- **Required:** A business URL to analyze
- **Optional:** Industry context, existing customer data, geographic focus, budget range
## How to Execute
### Step 1: Business Intelligence Gathering
Fetch the business URL using `WebFetch` and extract:
| Data Point | Where to Find |
|---|---|
| Business name | Page title, logo, about page |
| Industry/category | Services offered, product types |
| Value proposition | Hero section, tagline, about page |
| Price positioning | Pricing page, product prices, "starting at" language |
| Geographic focus | Service areas, locations, shipping info |
| Current customers | Testimonials, case studies, reviews |
| Product/service types | Product pages, service descriptions |
| Brand tone | Copy style, imagery, color palette |
| Trust signals | Certifications, awards, years in business, client logos |
| Content topics | Blog posts, resources, FAQ sections |
Run supplementary searches:
```
WebSearch: "[Business Name]" reviews
WebSearch: "[Business Name]" customers testimonials
WebSearch: "[Industry]" target audience demographics
WebSearch: "[Industry]" buyer persona research 2025
WebSearch: "[Competitor]" "who buys" OR "target market" OR "customer profile"
```
### Step 2: Industry Audience Intelligence
Based on the detected industry, pull standard audience benchmarks:
**SaaS/Software:**
- Decision makers: CTOs, VPs Engineering, Product Managers, IT Directors
- Influencers: Individual contributors who discover tools
- Budget holders: CFOs, COOs, department heads
- Research behavior: G2 reviews, Product Hunt, Reddit, comparison articles
**E-commerce:**
- Impulse buyers vs. researchers
- Price-sensitive vs. quality-focused segments
- Brand loyal vs. deal hunters
- Social commerce behavior: Instagram shops, TikTok shop, Pinterest
**Local Services:**
- Emergency/urgent need buyers
- Planned purchase/project buyers
- Referral-driven customers
- Neighborhood/community-oriented segments
**Agency/Professional Services:**
- Decision timeline: 30-90 day sales cycles
- Committee buyers vs. solo decision makers
- Budget-constrained vs. ROI-focused
- Relationship-driven vs. results-driven
**Creator/Course:**
- Aspiration-driven buyers
- Career changers vs. skill upgraders
- DIY vs. guided learning preference
- Community seekers vs. content consumers
### Step 3: Build Persona Profiles
Build **5-7 personas** following this exact structure for each:
---
#### Persona Template
```markdown
### Persona [Number]: [Persona Name] — "[Memorable Tagline]"
**Relevance Score:** [1-5 stars] ★★★★☆
**Revenue Potential:** [Low / Medium / High / Very High]
**Estimated Audience Size:** [Small / Medium / Large]
**Acquisition Difficulty:** [Easy / Moderate / Hard]
**Recommended Priority:** [Primary / Secondary / Tertiary]
---
#### Demographics
| Attribute | Detail |
|---|---|
| Age range | [range] |
| Gender split | [percentage breakdown] |
| Income level | [range and bracket] |
| Education | [level] |
| Job titles | [3-5 specific titles] |
| Company size | [employee range or N/A] |
| Location type | [urban/suburban/rural + specific geos if applicable] |
| Family status | [single/married/parent + relevance] |
| Device usage | [mobile-first / desktop-heavy / multi-device] |
#### Psychographics
| Attribute | Detail |
|---|---|
| Core values | [3-4 values] |
| Aspirations | [what they want to become/achieve] |
| Fears | [what keeps them up at night] |
| Identity | [how they see themselves] |
| Decision style | [analytical/emotional/social proof/authority-driven] |
| Brand affinities | [brands they already buy from] |
| Media consumption | [podcasts, YouTube channels, newsletters, blogs] |
| Social behavior | [lurker/engager/creator + which platforms] |
#### Pain Points (ranked by intensity)
1. **[Pain Point 1]** — [1-2 sentence description of the pain and its impact]
2. **[Pain Point 2]** — [description]
3. **[Pain Point 3]** — [description]
4. **[Pain Point 4]** — [description]
5. **[Pain Point 5]** — [description]
#### Buying Triggers
What makes this persona pull out their wallet RIGHT NOW:
- **Trigger 1:** [specific event or realization]
- **Trigger 2:** [specific event or realization]
- **Trigger 3:** [specific event or realization]
- **Trigger 4:** [specific event or realization]
#### Objections & Hesitations
What stops them from buying:
| Objection | Severity | How to Overcome |
|---|---|---|
| [objection 1] | High/Med/Low | [counter-strategy for ad copy] |
| [objection 2] | High/Med/Low | [counter-strategy] |
| [objection 3] | High/Med/Low | [counter-strategy] |
| [objection 4] | High/Med/Low | [counter-strategy] |
#### Content Consumption Habits
| Platform | Behavior | Content Types They Engage With |
|---|---|---|
| YouTube | [how they use it] | [specific content types] |
| Instagram | [how they use it] | [specific content types] |
| TikTok | [how they use it] | [specific content types] |
| LinkedIn | [how they use it] | [specific content types] |
| Podcasts | [which ones] | [topics] |
| Newsletters | [which ones] | [topics] |
| Reddit | [subreddits] | [discussion types] |
| Google Search | [what they search for] | [query patterns] |
#### Platform Targeting Parameters
**Meta (Facebook/Instagram):**
- Interests: [10-15 specific targetable interests]
- Behaviors: [5-7 behavioral targeting options]
- Lookalike source: [what custom audience to seed from]
- Exclusions: [who to exclude within this targeting]
**Google Ads:**
- Search keywords: [10-15 keywords this persona would search]
- In-market audiences: [Google's in-market segments]
- Affinity audiences: [Google's affinity segments]
- Custom intent keywords: [5-7 high-intent keywords]
**LinkedIn:**
- Job titles: [5-7 exact titles]
- Job functions: [2-3 functions]
- Industries: [3-5 industries]
- Company sizes: [ranges]
- Seniority levels: [levels]
- Skills: [5-7 skills to target]
- Groups: [relevant LinkedIn groups]
**TikTok:**
- Interest categories: [TikTok's interest targeting]
- Behavioral targeting: [video interaction types]
- Creator categories: [types of creators they follow]
- Hashtag targeting: [relevant hashtags]
**Pinterest:**
- Interest targeting: [Pinterest interest categories]
- Keyword targeting: [search terms on Pinterest]
- Actalike audiences: [seed audience description]
#### The Perfect Ad for This Persona
- **Hook angle:** [what opening line would stop their scroll]
- **Emotional trigger:** [the core emotion to tap into]
- **Proof type:** [what evidence convinces them — stats, testimonials, demos, case studies]
- **CTA style:** [soft ask vs. hard ask, what language works]
- **Creative format:** [video/image/carousel + style — UGC, polished, meme, etc.]
```
### Step 4: Persona Scoring Matrix
After building all personas, create a comparison matrix:
```markdown
## Persona Scoring Matrix
| Persona | Relevance (1-5) | Revenue Potential | Audience Size | Acquisition Cost | Priority |
|---|---|---|---|---|---|
| [Persona 1] | ★★★★★ | Very High | Medium | Moderate | Primary |
| [Persona 2] | ★★★★☆ | High | Large | Easy | Primary |
| [Persona 3] | ★★★★☆ | Medium | Large | Easy | Secondary |
| [Persona 4] | ★★★☆☆ | High | Small | Hard | Secondary |
| [Persona 5] | ★★★☆☆ | Medium | Medium | Moderate | Tertiary |
| [Persona 6] | ★★☆☆☆ | Low | Large | Easy | Tertiary |
```
**Scoring criteria:**
- **Relevance (1-5):** How closely this persona matches the business's ideal customer
- 5 = Perfect match, highest conversion probability
- 4 = Strong match, proven buyer profile
- 3 = Moderate match, needs nurturing
- 2 = Weak match, low conversion expected
- 1 = Marginal match, only target if budget allows
- **Revenue Potential:** Expected lifetime value of this persona
- **Audience Size:** How large is this segment on ad platforms
- **Acquisition Cost:** Estimated relative cost to acquire this persona
- **Priority:** Primary (target first), Secondary (expand to), Tertiary (test with remaining budget)
### Step 5: Negative Audiences
Define who NOT to target. This section saves ad spend and improves ROAS.
```markdown
## Negative Audiences — Who NOT to Target
### Hard Exclusions (always exclude)
| Audience | Why Exclude | Platform Exclusion Method |
|---|---|---|
| [audience 1] | [reason — tire kickers, wrong intent, etc.] | [how to exclude on Meta, Google, etc.] |
| [audience 2] | [reason] | [exclusion method] |
| [audience 3] | [reason] | [exclusion method] |
| [audience 4] | [reason] | [exclusion method] |
| [audience 5] | [reason] | [exclusion method] |
### Soft Exclusions (exclude in early campaigns, test later)
| Audience | Why Consider Excluding | When to Test |
|---|---|---|
| [audience 1] | [reason] | [conditions for testing] |
| [audience 2] | [reason] | [conditions] |
| [audience 3] | [reason] | [conditions] |
### Negative Keyword Themes (Google Ads)
- [theme 1]: [list of negative keywords]
- [theme 2]: [list of negative keywords]
- [theme 3]: [list of negative keywords]
- [theme 4]: [list of negative keywords]
### Audience Suppression Lists
- **Existing customers:** Suppress from acquisition campaigns (upload customer email list)
- **Past converters:** Suppress from top-of-funnel (use pixel data)
- **Job seekers:** Exclude "[company name] jobs/careers" searches
- **Competitors' employees:** Exclude unless running competitive conquesting
- **Students/researchers:** Exclude unless product is education-focused
```
### Step 6: Cross-Persona Insights
```markdown
## Cross-Persona Insights
### Shared Pain Points Across All Personas
1. [pain point that appears in 3+ personas]
2. [pain point that appears in 3+ personas]
3. [pain point that appears in 3+ personas]
### Universal Buying Triggers
1. [trigger that works across most personas]
2. [trigger that works across most personas]
### Platform Priority Ranking
Based on where these personas spend time:
1. **[Platform]** — Reaches [X] of [Y] personas, best for [objective]
2. **[Platform]** — Reaches [X] of [Y] personas, best for [objective]
3. **[Platform]** — Reaches [X] of [Y] personas, best for [objective]
4. **[Platform]** — Reaches [X] of [Y] personas, best for [objective]
### Campaign Structure Recommendation
- **Campaign 1 (Primary):** Target Personas [X, Y] on [Platform] — [objective]
- **Campaign 2 (Secondary):** Target Personas [X, Y] on [Platform] — [objective]
- **Campaign 3 (Testing):** Target Persona [X] on [Platform] — [objective]
### Messaging Theme Matrix
| Theme | Persona 1 | Persona 2 | Persona 3 | Persona 4 | Persona 5 |
|---|---|---|---|---|---|
| [theme 1] | Strong | Moderate | Weak | Strong | Moderate |
| [theme 2] | Weak | Strong | Strong | Moderate | Weak |
Auf GitHub ansehen