# Skill: creative-brief-writer

## Purpose

Takes an underperforming ad's diagnosis — hook rate, hold rate, CTR, ROAS — plus the patterns from the account's top-performing ads, and generates a **production-ready creative brief**. The output goes directly to a creative team, a video editor, or a Higgsfield / AI video generation prompt. No interpretation needed.

This skill does not diagnose creative performance. It picks up where the **creative-analyzer** skill leaves off. If you haven't run creative-analyzer yet, run that first or provide the equivalent diagnosis manually.

> **Read-and-recommend only.** This skill never edits or creates ads. All creative production is done by the user's team.

---

## When to Use This Skill

Use when the user says:
- "My CTR is dropping, I need a new ad brief"
- "Write me a brief for a replacement creative"
- "This ad is fatigued, what should I make next?"
- "I know [ad name] isn't working, brief me on what to replace it with"

Do NOT use without a diagnosis. If the user says "make me an ad" without data, ask for the underperforming ad's metrics first.

---

## Step 0 — Data Inventory

Confirm you have the following before proceeding:

1. **The underperforming ad** — name, format (video / image / carousel), current hook rate, hold rate, and CTR.
2. **The failure point** — which metric is below threshold (see diagnostic thresholds below). If multiple are failing, identify the primary failure point.
3. **Top performer patterns** — at minimum the top 1–2 ads by spend share × ROAS in the same account or campaign. If unavailable, ask the user to describe what's working.
4. **Account context** — product / service being advertised, target audience, offer (discount, free trial, free consult, etc.).
5. **Platform** — Meta (specify placement: Feed, Reels, Stories) or Google (Display only — this skill is not used for Search text ads).

State what you have and what's missing.

---

## Diagnostic Thresholds

Use these to identify the failure point in the underperforming ad.

| Metric | Good | Below Average | Poor (primary failure point) |
|---|---|---|---|
| Hook Rate (3-sec views / video plays) | ≥ 40% | 25–39% | < 25% |
| Hold Rate (ThruPlays / video plays) | ≥ account 90-day avg | 15–20% below avg | > 20% below avg |
| CTR (link click-through rate) | ≥ 1.25% (Feed), ≥ 0.65% (Reels) | 0.65–1.25% | < 0.65% |

**Primary failure point logic:**

- Hook Rate < 25% → **Hook failure.** The opening 3 seconds are not stopping the scroll. The body of the ad may be fine. Brief must fix the hook.
- Hook Rate ≥ 40% but Hold Rate > 20% below account avg → **Hold failure.** The ad earns attention but loses the viewer in the middle. Brief must fix the body.
- Hook Rate ≥ 40%, Hold Rate acceptable, CTR < 0.65% → **CTA failure.** The viewer watches but doesn't click. Brief must fix the call to action or the offer presentation.
- All metrics poor → **Full rebuild.** The angle itself is wrong. Brief must start from scratch with a different angle from the top performer patterns.

---

## Top Performer Pattern Extraction

Before writing the brief, identify the following from the top-performing ads:

| Pattern | What to Look For |
|---|---|
| Angle | What problem / desire does the top performer lead with? (e.g. pain point, aspiration, social proof, curiosity) |
| Hook format | Text overlay, person talking to camera, product demo, before/after, testimonial clip? |
| Persona | Who is the ad speaking to? Is it explicit or implied? |
| Offer framing | How is the offer presented — discount, outcome, urgency, risk reversal? |
| CTA | Exact CTA text and context (is it on-screen, spoken, or both?) |

If the user can only share 1–2 top performers, extract what you can. Clearly note which patterns are inferred vs confirmed.

---

## Brief Construction Logic

Build the brief by combining two inputs:
1. **The failure point** — what specifically broke in the underperforming ad
2. **The top performer pattern** — what is proven to work in this account

Do not write a generic brief. Every element must be explicitly justified by one of these two inputs.

**Hook failure:** Take the hook format and opening line style from the top performer. Rewrite the first 3 seconds entirely. Leave body and CTA structure intact.

**Hold failure:** Keep the hook approach (it works). Rebuild the middle section — tighten the argument, add a demonstration, introduce a proof point, or create a pattern interrupt at the 5–8 second mark.

**CTA failure:** Keep hook and body. Rewrite the CTA — make the outcome specific, reduce friction, or add urgency. Test on-screen text CTA vs spoken CTA if not already tested.

**Full rebuild:** Start from the top performer's angle, not the underperforming ad's. The underperforming ad's angle has been rejected by the audience — do not iterate on it.

---

## Output Format

```
CREATIVE BRIEF

Ad being replaced: [name]
Platform / placement: [Meta Feed / Meta Reels / Meta Stories / Google Display]
Format: [Video / Image / Carousel]
Primary failure point: [Hook / Hold / CTA / Full rebuild] — [metric value vs threshold]

────────────────────────────────
BRIEF
────────────────────────────────

Angle: [The core message — what problem or desire this ad addresses]

Target persona: [Who this ad is speaking to — specific, not generic]

Hook (first 3 seconds):
  Format: [text overlay / talking head / demo / testimonial / other]
  Concept: [what happens in the first 3 seconds, specifically]
  Opening line / text: "[exact words or concept]"

Body (seconds 4–25 for a 30s video):
  Structure: [what the middle section does — demonstrate, prove, agitate, educate]
  Key point: [the one thing the viewer must understand before the CTA]
  Pattern interrupt (if hold failure): [the specific moment that re-engages the viewer]

CTA (final 5 seconds):
  Text: "[exact CTA]"
  Delivery: [on-screen text / spoken / both]
  Offer framing: [how the offer is presented]

────────────────────────────────
PRODUCTION NOTES
────────────────────────────────

What to borrow from [top performer name]: [specific element]
What to avoid from [underperforming ad name]: [specific element]
Length: [recommended duration]
Aspect ratio: [9:16 for Reels/Stories / 1:1 or 4:5 for Feed]

────────────────────────────────
WHY THIS BRIEF
────────────────────────────────

[2–3 sentences connecting each brief element to the data: the failure point it addresses and the top performer pattern it borrows from. This section exists so the creative team understands the logic, not just the instruction.]
```

---

## Guardrails

- Do not invent angles. Every brief element must trace back to either the failure diagnosis or the top performer pattern.
- Do not write a brief for an ad that's in learning phase (< 7 days, < 50 optimisation events). The data isn't reliable yet.
- If the user has no top performer data, write the brief around the failure point only, and explicitly flag that it is not informed by account-specific top performer patterns.
- Do not write briefs for Google Search ads — those require RSA copy, not creative briefs.
- If the account has multiple clearly different audience segments (e.g. new customer acquisition vs retargeting), ask which segment this brief is for before proceeding. The angle and CTA differ significantly.

---

## Minimum Required Data

| Source | What You Need |
|---|---|
| MCP (GoMarble / Meta) | Ad-level video metrics (hook rate, hold rate, ThruPlays), CTR, spend, ROAS or CPA. Creative content via `facebook_get_ad_creative_details` or user description. Account 90-day average Hold Rate for baseline. Top 1–2 performers by spend × ROAS. |
| CSV | Ad-level export with video columns enabled (3-Second Video Plays, ThruPlays, Video Plays, CTR). Creative content shared separately by user — CSVs never contain creative. Top performers identified by user from the same export. |
| Manual input | User describes the ad (hook, body, CTA), provides the key metrics, and describes what's performing well. Workable but brief will have lower specificity. |
