The problem
Each ad group needs 15 headlines and 4 descriptions. They all have to fit the character limits, avoid repeating each other, and cover benefits, proof and calls to action. Across ten ad groups, that’s a full day in a spreadsheet.
What it does
- Reads your landing page and pulls out the offer, the proof points and the claims the page supports.
- Plans the message first: who the ad is for, what they’re searching for, and why they should pick you.
- Writes the full set for each ad group, with each line tagged as a benefit, proof, offer or call to action so you can see the mix.
- Checks the details with a script: character counts, duplicates and keyword coverage. AI is bad at counting characters, so it doesn’t do that part.
- Suggests what to pin, flags anything that could hurt Ad Strength, and saves it all to a sheet.
Use it
Download the rsa-ad-writer folder from GitHub.
- Claude Code: copy it to
.claude/skills/rsa-ad-writer/, then ask “Write RSA copy for my emergency plumbing ad group. Landing page: https://…” - Claude.ai: zip the folder and upload it under Settings → Capabilities → Skills.
- Other AI agents: give the agent
SKILL.mdas its instructions and let it run the two scripts.
You’ll need Python 3.9 or newer. The folder includes a full example for an emergency plumber in Austin, so you can see the output before you start.
Limits
It writes from your landing page. If the page is vague, the ads will be too. It won’t make up claims, so if the page has no proof, the ads won’t either.
Found a problem?
Open an issue on GitHub and tell me what happened. Report an issue →
Want it set up for you?
I can set this up on your accounts. Email me →