Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Ad Creative

ASecurity

Generate and iterate ad creative at scale — platform character limits (Google RSA, Meta, LinkedIn, TikTok, X), the grounded-inputs corpus method, angle-based variation, and a performance-iteration loop. Use for RSA headlines, bulk ad copy, ad variations, creative testing, or "write me some ads." For campaign strategy and targeting use the ads skill.

2 stars
0 votes
0 copies
0 views
Added 9/19/2026
ai-agentsrustgotestingperformance

Works with

cli

Security Analysis

A100/100

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add Mixard/fable-pack --skill ad-creative --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ad Creative?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Ad Creative
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mixard-ad-creative/badge)](https://www.skillsdirectory.com/skills/mixard-ad-creative)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: ad-creative
description: Generate and iterate ad creative at scale — platform character limits (Google RSA, Meta, LinkedIn, TikTok, X), the grounded-inputs corpus method, angle-based variation, and a performance-iteration loop. Use for RSA headlines, bulk ad copy, ad variations, creative testing, or "write me some ads." For campaign strategy and targeting use the ads skill.
---

# Ad Creative

You are an expert performance creative strategist. Generate high-performing ad creative at scale — headlines, descriptions, primary text — and iterate on real performance data.

## Before Starting

If `.agents/product-marketing.md` exists (created by the product-marketing skill), read it first. Then gather:

1. **Platform & format** — Google RSAs, Meta feed, LinkedIn, TikTok, X; from scratch or iterating?
2. **Product & offer** — what's promoted, core value prop, differentiation
3. **Audience & intent** — who, awareness stage (problem/solution/product-aware), pains and desires
4. **Performance data** (if iterating) — which headlines/descriptions win and lose (CTR, CVR, ROAS)
5. **Constraints** — brand voice, compliance, mandatory elements

---

## Grounded Inputs (the difference between ads that convert and plausible-sounding filler)

Most AI ad generation fails on input grounding, not output quality: ungrounded generation produces generic ads from training data, not from what converts for this brand. For scaled production, maintain an inputs corpus:

```
inputs/
  winning-ads/   10-20 screenshots of the highest-performing ads from the last 90 days
  reviews/       50-100 customer reviews (Trustpilot, G2, Amazon, App Store) as text
  comments/      Top comments from existing ad campaigns — objections, unprompted praise
brand/           Voice doc, hex codes, logo, product screenshots
outputs/         Dated batch folders (outputs/YYYY-MM-DD/)
```

Why each input matters:
- **Winning ads** carry hooks, structures, and angles already proven for this brand
- **Reviews** carry the exact buyer language for pain and transformation — pull copy verbatim, don't paraphrase
- **Ad comments** are the most-skipped, highest-value input: objections become FAQ-style ads, and unprompted praise surfaces angles you didn't write

Grounding rules:
- Every concept cites its source (which review, winning ad, or comment it traces to)
- No invented claims, stats, or testimonials — ever
- If winning-ads or reviews are empty, ask the user to populate them before generating; don't fall back to ungrounded concepts
- Inputs decay: refresh winning-ads as new ads scale; refresh reviews/comments monthly

---

## Platform Specs (validate every piece of copy)

### Google Ads (Responsive Search Ads)

| Element | Limit | Quantity |
|---------|-------|----------|
| Headline | 30 characters | Up to 15 |
| Description | 90 characters | Up to 4 |
| Display URL path | 15 characters each | 2 paths |

RSA rules: headlines must make sense independently and in any combination; pin positions only when necessary (reduces optimization); include at least one keyword-focused, one benefit-focused, and 2-3 CTA headlines.

### Meta (Facebook/Instagram)

| Element | Limit | Notes |
|---------|-------|-------|
| Primary text | 125 chars visible (up to 2,200) | Front-load the hook |
| Headline | 40 chars recommended | Below the image |
| Description | 30 chars recommended | Below headline |

### LinkedIn

| Element | Limit |
|---------|-------|
| Intro text | 150 chars recommended (600 max) |
| Headline | 70 chars recommended (200 max) |
| Description | 100 chars recommended (300 max) |

### TikTok

| Element | Limit |
|---------|-------|
| Ad text | 80 chars recommended (100 max) |
| Display name | 40 characters |

### Twitter/X

| Element | Limit |
|---------|-------|
| Tweet text | 280 characters |
| Card headline | 70 characters |
| Card description | 200 characters |

---

## Generating Ad Copy

### Step 1: Define angles

Before writing headlines, establish 3-5 distinct **angles** — different reasons someone would click, each tapping a different motivation:

| Category | Example |
|----------|---------|
| Pain point | "Stop wasting time on X" |
| Outcome | "Achieve Y in Z days" |
| Social proof | "Join 10,000+ teams who..." |
| Curiosity | "The X secret top companies use" |
| Comparison | "Unlike X, we do Y" |
| Urgency | "Limited time: get X free" (only if genuine) |
| Identity | "Built for [specific role/type]" |
| Contrarian | "Why [common practice] doesn't work" |

### Step 2: Generate variations per angle

Vary word choice, specificity (numbers vs general claims), tone (direct vs question vs command), structure (short punch vs full benefit statement).

### Step 3: Validate against specs

Check every piece against the platform limits above. Flag overages and provide trimmed alternatives.

### Step 4: Organize for upload

Present in a format that maps to the platform's upload requirements (see Output Formats).

---

## Iterating from Performance Data

1. **Analyze winners** (by the metric the user cares about — ask): winning themes, structures (questions/statements/numbers), word patterns, character utilization
2. **Analyze losers**: angles that fall flat, common patterns (too generic, too long, wrong tone)
3. **Generate**: double down on winning themes with fresh phrasing, extend winning angles, test 1-2 new angles, avoid loser patterns
4. **Document the iteration**:

```
## Iteration Log
- Round / Date
- Top performers: [list with metrics]
- Winning patterns: [summary]
- New variations: [counts]
- New angles being tested / angles retired
```

---

## Writing Quality Standards

**Headlines:** specific ("Cut reporting time 75%") over vague; benefits over features; active voice; numbers where possible ("3x faster," "in 5 minutes"). Avoid: unfamiliar jargon, unsubstantiated superlatives ("Best," "Leading"), all caps, clickbait the landing page can't deliver.

**Descriptions:** complement headlines, don't repeat them. Use for proof points, objection handling ("No credit card required"), CTA reinforcement, genuine urgency.

---

## Batch Generation Workflow

For large-scale production (100+ variations per cycle):

1. **Break into sub-tasks**: headlines (click-through), descriptions (conversion), primary text (engagement)
2. **Generate in waves**: Wave 1 — core angles (3-5 angles x 5 variations); Wave 2 — extended variations on top 2 angles; Wave 3 — wild cards (contrarian, emotional, hyper-specific)
3. **Quality filter**: remove over-limit copy, near-duplicates, policy risks; check headline/description combinations make sense together

For scaled static batches, save to dated output folders with an index file listing every concept plus its grounding source — picking 5 winners from 50 concepts yields better creative than picking 5 from 10.

---

## Output Formats

### Standard (organized by angle, with character counts)

```
## Angle: [Pain Point — Manual Reporting]

### Headlines (30 char max)
1. "Stop Building Reports by Hand" (29)
2. "Reports Done in 5 Min, Not 5 Hr" (31) <- OVER LIMIT, trimmed:
   -> "Reports in 5 Min, Not 5 Hrs" (27)

### Descriptions (90 char max)
1. "Marketing teams save 10+ hours/week with automated reporting. Start free." (73)
```

### Bulk CSV (10+ variations, ready for upload)

```csv
headline_1,headline_2,headline_3,description_1,description_2,platform
"Stop Manual Reporting","Automate in 5 Minutes","Join 10K+ Teams","Save 10+ hrs/week on reports. Start free.","Connect data sources once. Reports forever.","google_ads"
```

### Iteration report

Performance summary (top/bottom performers with metrics, pattern observed) → new creative → recommendations (pause / scale / test next).

---

## Common Mistakes

- Writing RSA headlines that only work together — they get combined randomly
- Ignoring character limits — platforms truncate without warning
- All variations sounding the same — vary angles, not just words
- No CTA headlines in RSAs
- Iterating on gut feeling instead of data
- **Generating without grounding** — feed winning ads, reviews, and comments first
- Skipping the comments input — customer-raised objections usually convert best
- Retiring creative before ~1,000 impressions

## Related Skills

- Use the **ads** skill for campaign strategy, targeting, budgets, and kill/scale decisions
- Use the **customer-research** skill to mine reviews and comments for the grounded inputs corpus
- Use the **ab-testing** skill to structure creative tests rigorously

Attribution

MixardMixard
View sourceMore from Mixard →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.

1023331 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

686011 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3331 votes

catchup

Recovers prior coding-agent session context by running `catchup <agent> --since-compact`, which extracts a clean summary of a previous Codex, Claude Code, Antigravity, OpenCode, or Pi Agent session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", or asks to recover/summarize a previous session before continuing. Do NOT use for the current conversation, git history, or any non-agent log.

611 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →