ads-audit
Skill0 starsChanged 2 months agoMITView on GitHub
Analyse running OpenAI Ads campaigns and derive actions — check metrics, assess whether the data supports a judgement, detect regressions. Use this skill for reporting, analysis, performance, how is the campaign doing, optimisation, cost review, or whenever figures from the ad account need interpreting.
13 other projects use a version of this.
Adopted by
Most recently taken up by
- oivanfelipe/claude-skillstheir own version, first seen Nov 8, 2026
- Littlpinguin/marketing-cockpit-templatetheir own version, first seen Nov 3, 2026
- Hainrixz/claude-adstheir own version, first seen Nov 1, 2026
- AgriciDaniel/claude-adstheir own version, first seen Oct 25, 2026
- F0rger123/claude-meta-ads-god-modetheir own version, first seen Oct 25, 2026
- omarmfouad25/google-marketing-agenttheir own version, first seen Oct 25, 2026
Used with
Projects with it also use ads-math, ads-test and 4 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
chriswesttSkillads-math
PPC financial calculator and modeling tool. CPA, ROAS, CPL calculations, break-even analysis, impression share opportunity sizing, budget forecasting, LTV:CAC ratio analysis, and MER (Marketing Efficiency Ratio) assessment. Requires zero API access. Works with pasted data from exports. Use when user says PPC math, ad calculator, break-even, budget forecast, ROAS calculator, CPA calculator, impression share, LTV CAC, or MER.
Also in 3 projects that use this
chriswesttSkillads-test
A/B test design and experiment planning for paid advertising. Structured hypothesis framework, statistical significance calculator, test duration estimator, sample size calculator, and platform-specific experiment setup guides (Meta Experiments, Google Experiments, LinkedIn A/B). Use when user says A/B test, split test, experiment design, test hypothesis, statistical significance, sample size, or test duration.
Also in 3 projects that use this
- +4 more from chriswestt
Other versions13 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 13
- AgriciDaniel/claude-ads★ 10ksame name
- Hainrixz/claude-ads★ 102same name
- coopersimson96/ai-content-system★ 17same name
- Littlpinguin/marketing-cockpit-template★ 9same name
- megastep/codex-skills★ 4same name
- omarmfouad25/google-marketing-agent★ 4same name
- Maxymize/maxym-ai-ads★ 2same name
- F0rger123/claude-meta-ads-god-mode★ 1same name
- get-proofpilot/claude-skills-catalog★ 1same name
- Biznomad/claude-skills★ 0same name
3 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository5 other files it gives its agents.
- ads-campaignSkill
- ads-creativeSkill
- ads-geoSkill
- ads-hintsSkill
- adsSkill
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 3 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 13 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 20
Check before any assessment.
- Distinctive: line 31
If fewer than four of seven are supported, output no overall figure.
- Distinctive: line 69
Not industry benchmarks — none exist for this platform.
- Distinctive: line 71
Your own maximum tolerable CPA: If the CPA is below it, the campaign works, regardless of how the number compares elsewhere.
“Common” is measured: kept by at least 6 in 10 of the 13 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Reviewing campaigns
First: is there enough data?
Check before any assessment. From ads/references/benchmarks.md:
| Metric | Minimum |
| CTR | 1,000 impressions |
| CPC | 100 clicks |
| Conversion rate | 100 clicks and 10 conversions |
| CPA | 30 conversions |
| Trend | 14 days |
| Comparison of two groups | 100 clicks each |
If fewer than four of seven are supported, output no overall figure. Say this instead:
Overall assessment: NOT POSSIBLE (2/7 metrics supported)
Supported: impressions (3,400), clicks (47)
Not supported: CTR, CPC, CVR, CPA, ROAS
Reason: 47 clicks is below the threshold of 100.
Recommendation: keep running for another 10 days.This is the most important part of this skill. A number built on thin data looks like poor performance when data is merely missing — and that is how working campaigns get switched off.
Fetching data
get_insights(scope="account", time_granularity="daily", since=..., until=...)
get_insights(scope="campaign", entity_id=..., time_granularity="daily")
get_insights(scope="ad_group", entity_id=..., time_granularity="none")For breakdowns: segment="device" or segment="country". Exactly one — the
API allows no more, and none in combination with hourly.
Available metrics: impressions, clicks, spend, ctr, cpc, cpm,
conversions, cpa, post_click_cvr, order_created_roas.
For ROAS use only order_created_roas — roas and attributed_sales_*
are deprecated.
Note: conversions equals click-through conversions. View-through is not
added and is a reporting figure only. Bidding and billing follow click-through
conversions exclusively. Figures for the current account day are provisional.
What to measure against
Not industry benchmarks — none exist for this platform. Instead:
- Your own maximum tolerable CPA. If the CPA is below it, the campaign works, regardless of how the number compares elsewhere.
- Your own previous period, once there is one.
- The other ad groups in the same campaign, given sufficient data.
Regression rules
Comparison, threshold, action:
| Observation | Threshold | Action |
| Spend without conversion | 3× max CPA spent, 0 conversions | Pause the group, check landing page and measurement |
| CPA rising | +25 % week over week, ≥30 conversions | Lower the bid, review the weakest group's hints |
| CTR falling | −30 % week over week, ≥1,000 impressions | Ad fatigue, introduce a new variant |
| No delivery | 0 impressions over 48 h while active | Check all three status levels, then the bid, then the area |
| Budget spent early | Daily budget gone before midday | Bid too high, or demand higher than expected |
| Ad rejected | review_status: rejected | Read reason_code — a crawler_* code points at the landing page |
| One group dominates | >70 % of spend | Check whether the others are scoped too narrowly |
What to report
Four things per finding, otherwise it is not a recommendation:
- Observation with a number and a period
- Dependency — what has to happen first
- Falsification — how would you know the action did not work?
- Leading indicator — what moves first
Example:
Group "Chatbot website": CPA 210 across 34 conversions (14 days). Above the tolerable 150 for that service. Dependency: none, can be changed immediately. Action: lower the bid from 2.50 to 1.80. Falsification: if the CPA does not drop below 180 within 10 days, the bid is not the cause — look at the landing page. Leading indicator: average CPC within 3 days.
Restraint
- Do not change several things at once. The effect cannot be attributed.
- Wait 10 to 14 days after a change.
- Small differences are noise. 2.1 % versus 2.3 % CTR at 800 impressions each means nothing.
- When conversion data is missing, check measurement first, not the campaign. A campaign that appears to deliver nothing often has a tracking problem.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

