Four Skills a paid and PPC marketer should actually build: ad-copy variants, audience angles, message match, and a refusal Skill that will not invent performance numbers. With a worked SKILL.md.
Paid is the discipline where bad AI output costs you money the fastest. A weak blog draft sits there doing nothing. A weak ad goes live, spends budget, and trains the algorithm on the wrong signal before you have caught it. So the Skills worth building for paid ads are not the ones that write the most copy. They are the ones that keep the copy consistent, on-policy, and honest at volume.
This is the paid and PPC entry in the Claude Skills for marketing series. If you have not built a Skill before, the 20-minute build walkthrough has the full mechanics. Here we go straight to the four that earn their slot for a paid marketer, what goes in each, and the one that matters most: the refusal Skill.
In paid, the dangerous failure is not a boring ad. It is a confident, fabricated one. Claude will happily write "rated #1 by 10,000 customers" or "only 3 spots left" if you let it, because those phrases pattern-match to high-performing ad copy. On a search or social platform, that is a disapproval, a policy strike, or a legal problem. A refusal Skill is not a nice-to-have here. It is the load-bearing one.
Each Skill below is one folder, one SKILL.md, one job. The structure for every one is the same three sections from the build guide: what it triggers on, what it knows, what it refuses. Keep them narrow. Four small Skills that each load on the right task beat one giant "Paid Ads" Skill that loads on everything and clutters the context.
Triggers on: any request to write or expand ad variants, headlines, descriptions, or RSA assets. Knows: your character limits per platform (Google RSA headlines at 30, descriptions at 90, Meta primary text guidance), your offer, and the do/don't list from your voice guide. Refuses: claims not in the brief and duplicate angles dressed up as variety. The point of this Skill is not volume. It is fifteen genuinely distinct variants instead of one idea reworded fifteen times.
Triggers on: "angles for," "who else would buy this," "ad concepts for [segment]." Knows: your ICPs, the awareness stages you run (problem-aware versus solution-aware copy reads completely differently), and the objections each segment raises. Refuses: inventing a persona you have no evidence for. This is the Skill that stops every campaign sounding like it was written for the same imaginary buyer. It maps copy to a real segment and a real awareness stage, every time.
Triggers on: any task that pairs an ad with a landing page, or a "does this LP match the ad" check. Knows: the rule that the ad's promise, headline, and primary keyword should reappear above the fold on the page it points to. Refuses: signing off a pairing where the ad sells one thing and the page leads with another. Message match is the lowest-effort Quality Score and conversion-rate lever in paid, and it is the one most teams skip because nobody owns the handoff between the ad and the page. A Skill owns it.
Triggers on: every copy-producing task in paid, automatically, in the background. Knows: the claims you are actually allowed to make, your real numbers, and the platform policy lines you keep tripping. Refuses: fabricated performance claims, invented urgency, superlatives you cannot substantiate, and anything that reads like a guarantee you have not made. This is the one that pays for itself the first time it stops a disapproval before it ships.
The first three Skills are variations on the build you already know. The refusal Skill is the one worth showing in full, because it is the one most people never think to build, and the one that keeps paid honest. Here is the complete SKILL.md.
---
name: paid-ads-claims-guard
description: Use this Skill whenever the user is writing,
expanding, or editing any paid ad copy (search, social,
display, RSA assets, headlines, descriptions, primary text)
or any landing-page copy that an ad points to. Triggers on
"ad," "headline," "RSA," "PPC," "campaign copy," "variants,"
"landing page for the ad." Enforces the claims allowlist and
the no-fabrication rules on every output before it is shown.
---
# Paid Ads Claims Guard ## What this Skill knows This Skill loads the approved-claims list for [Brand Name]. The full list is in claims-allowlist.md (in this folder). It contains: - The performance numbers we can actually cite, with source - The awards, ratings, and "rated by" claims we have earned - The guarantees and offer terms legal has signed off - The platform policy lines we keep tripping (e.g. health, finance, and "before/after" restrictions) ## What this Skill does On every piece of ad or landing-page copy: - Check each factual or numeric claim against claims-allowlist.md before including it - If a claim is not on the list, leave a placeholder like [VERIFY: customer count] instead of inventing a number - Keep the ad's core promise consistent with the landing page it points to (message match) ## What this Skill refuses - Do not invent performance claims. No "rated #1," no "10,000 happy customers," no "trusted by industry leaders" unless it is in claims-allowlist.md. - Do not manufacture urgency. No "only 3 left," no "offer ends tonight," no countdown language unless the scarcity is real and stated in the brief. - Do not use unsubstantiated superlatives: best, #1, guaranteed, fastest, lowest-priced. Swap for a specific, defensible claim or cut it. - Do not imply a result the product cannot promise. - If the brief asks for a claim not on the allowlist, stop and ask. Do not fill the gap with a plausible-sounding number.
The mechanics here are the same as any refusal Skill: a tight allowlist file, and instructions that make Claude check against it instead of reaching for whatever phrase performs well in training data. The judgment is in the claims-allowlist.md file. The Skill is just the thing that makes Claude read it every time, without you remembering to ask.
Refusal Skills feel pedantic until the first time one saves you. In organic content, an invented stat is an embarrassment you can quietly edit later. In paid, that stat is live, spending, and attached to a platform account with a policy record. Meta and Google both disapprove for unsubstantiated claims and false urgency, and repeat strikes put the whole account at risk, not just the one ad.
There is also the honesty point, which the prompts I refuse to write post makes at length: fake urgency and invented social proof are not clever growth tactics, they are the thing that erodes trust in the channel for everyone. A Skill that refuses to write them is not just protecting your ad account. It is keeping your copy the kind a real person could defend.
None of these Skills knows your real numbers until you give them one. The claims guard is only as good as claims-allowlist.md, the message-match Skill needs your actual landing pages, and the angle Skill needs ICPs grounded in something other than a guess. The Skill is the plumbing. The reference file is the work. Build the allowlist properly first, then wrap it, and the same Skill protects every campaign you ship after.
The four free Claude Skills on the Hub are the same proven template wired into installable form: Voice Extractor, Competitive Teardown, SERP-Informed Brief, Performance Readout. Open the SKILL.md, see exactly how the trigger, knows, and refuses sections fit together, then fork one into your paid-ads claims guard. CC BY 4.0.
Get the 4 free Skills