
Ad creative — 8 Angles that helps you get clicked
"# Ad Creative
Generate, validate, and iterate on paid ad copy — organized by angle, checked against platform specs, and exported for direct upload.
When to Use / Best For
- Launching a new campaign: brief platform + format + audience → get 3–5 orthogonal angle blocks (pain point, outcome, social proof, curiosity, comparison, urgency, identity, or contrarian), with headline and description variants per angle, char-counted and platform-validated.
- Your ads are live but performance has plateaued: bring a performance CSV or pasted table → the skill reads winners for pattern, retires losers, and generates the next batch split across compound winners (50–60%), stretch winners (20–30%), and new angle probes (10–20%).
- Multi-platform campaign in one pass: Mode C starts from the tightest character constraint (Google RSA: 30-char headlines) and expands outward — Meta, LinkedIn, TikTok, X — output grouped by platform, not by angle.
- RSA headline sets at scale (10+ assets): angle blocks auto-include a CSV block (
headline_1,headline_2,headline_3,description_1,description_2,platform,angle) formatted for direct platform upload.
How It Works
Step 1 — Brief lock: Three required inputs before any generation: platform + format (e.g., Google RSA, Meta single-image, TikTok in-feed), product + core value prop, and audience awareness stage (problem-aware / solution-aware / product-aware). If .agents/product-marketing-context.md exists in the repo, it's read automatically — no re-briefing needed.
Step 2 — Angle selection, not keyword stuffing: Selects 3–5 angles from a library of 8 (pain point, outcome, social proof, curiosity, comparison, urgency, identity, contrarian). The distinctness test: ""if two angles both win, would you know why?"" If not, they collapse into one. This is what separates angle variants (distinct motivations, testable hypotheses) from wording variants (same motivation, different phrasing).
Step 3 — Structured output per angle: Every angle block contains headlines and descriptions with inline character counts. Any line over the platform cap gets flagged ⚠ OVER immediately, with a trimmed alternative on the next line — not silently truncated.
Step 4 — Platform spec validation: Character caps enforced per platform:
- Google RSA: headlines 30 chars, descriptions 90 chars
- Meta: primary text ~125 chars, headline 40, description 30
- LinkedIn: intro 150, headline 70, description 100
- TikTok in-feed: caption 80 chars recommended
- X: post 280, card headline 70, card description 200
Step 5 — Data-driven iteration (when you bring performance data): Confirm the decision metric (CTR / CVR / CPA / ROAS) → identify winner patterns (angle, structure, language features, not just rank) → decide retire vs. rework for losers → write the next batch with an iteration log. One variable changes per round to preserve attribution; creative is never killed before ~1,000 impressions.
Why This Skill / What Makes It Different
vs. ChatGPT / generic prompting: ChatGPT produces wording variants — five ways to say the same thing. This skill produces angle variants — structurally different motivations that test different audience responses. A/B testing wording variants tells you which phrasing won; testing angle variants tells you which audience motivation works.
vs. ad platform native copy tools: Platform native suggestions optimize for their own format and ignore your broader campaign brief, other platforms, or iteration history. This skill covers the full loop: brief → angle selection → cross-platform expansion → spec validation → performance-data iteration — in a single structured output.
vs. starting each round fresh: The iteration playbook retains the test history — which angles were compounded, which were retired, which are probing new ground — and the iteration log travels with the output. You're building a creative testing program, not a pile of one-off rewrites.
Structural output discipline: Every line carries its character count. Spec violations are flagged before upload, not discovered after a broken ad runs. Bulk volumes drop to CSV automatically. Output is upload-ready, not just readable."


