Ad Spy Kit
Name a competitor. Get one board of the Meta ads they keep paying to run, every hook and offer quoted word for word, the opening none of them use, and a brief for your counter-ad.
npx skills add TheMattBerman/ad-spy-kit Then tell your agent: "tear down [competitor]'s Black Friday ads."
What you get
- The ads they keep running.
Sorted by how long each has run, with days live and how many versions they've made.
- Every hook and offer, word for word.
Quoted from the ad it came from, and tagged with where it's said: out loud, on screen, or in the caption.
- The opening.
What none of their ads say. That's your gap.
- A counter-ad brief.
Headline, hook, what to show, and why it's different from theirs.
What a teardown actually finds
We ran it on Spacegoods. Here's what came back.
- Their top ad opens with an apology. "Apology to everyone who bought Rainbow Dust from our videos." Live 78 days, 3 versions, still running.
- The offer is loud. "Up to 58% off," free gifts, free express delivery. Said out loud, again and again.
- The gap. Two ads mention a 60-day money-back guarantee. None leads with it.
- The brief it wrote: lead with the risk-free trial, not the ingredient list. Hook: "Full refund if your mornings don't change."
Running long doesn't prove an ad works. It shows what they keep paying for. You still make the call.
How it labels ads
You can't see a competitor's sales. You can see what they keep paying for. Every ad gets one label, from facts on the ad.
| Label | Means |
|---|---|
| winner | live 120+ days, or 60+ days with 3+ versions (a stopped ad: ran 365+ days with 3+ versions, or 540+ days) |
| solid | 30+ days, or 14+ days with 3+ versions |
| testing | live under 30 days |
| no label | start date unknown, or stopped before 30 days |
Same rule StealAds uses, so a "winner" means the same thing in the kit and in the app.
Run it three ways
- One competitor.
ad-spy-kit run "Brand Name". Reads up to 30 of their ads that have been live 30+ days, the ones Meta shows most, longest-running first. Add--newestto see what they're testing right now. - A whole category.
ad-spy-kit category "black friday skincare"or a list of brands. One board, every brand, same labels. - No key yet.
ad-spy-kit replay --sample live/spacegoodsrebuilds the board above offline. Free.
What it costs
It tells you the cost and asks before it spends anything.
- The kit is free and MIT licensed.
- Ad data comes from your own ScrapeCreators key: about 2 credits for one brand, about 15 to 16 for a 14-brand category board. Quoted first.
- Your agent writes the analysis on the model you already pay for.
- Video transcripts are optional: 1 credit per video, quoted first.
From a brief to a finished ad
Every board ends with a counter-ad brief. Hand it to your designer, or drop it into StealAds and get the finished ad.
What it can't tell you
- Spend and sales.
Meta doesn't publish spend for US commercial ads. The board shows how long ads ran and how many versions exist, never a guess at spend or results.
- Every ad.
It reads up to 30 ads per brand by default.
- Whether the opening is a good bet.
It catches made-up quotes and numbers the ads don't print. Whether to go for the gap is your call.
FAQ
Is the Ad Spy Kit free?
Yes. The kit is free and open source under the MIT license. Pulling ad data uses your own ScrapeCreators credits, about 2 for one brand, and it quotes the cost before it spends anything.
Which AI agents does it work with?
Claude Code (as a skill or plugin), Codex, and any agent that can run skills. Install it with npx skills add TheMattBerman/ad-spy-kit.
Where does the ad data come from?
Public Meta Ad Library data, read through ScrapeCreators with your key. It reads ads from Facebook and Instagram.
How is this different from an ad spy tool?
Most ad spy tools give you a feed to scroll. The kit gives you one board for one competitor: what they keep running, their exact words, the gap, and a brief you can act on today.
Can it tell me which competitor ads are profitable?
No tool can see a competitor's sales. The kit shows what they keep paying to run and how many versions they've made, which is the strongest public signal there is.
How do I turn the brief into an ad?
Hand the brief to your designer, or paste it into StealAds and get the finished ad.
