meta-ads-analyzer
Skill9 starsChanged 5 months agoMITView on GitHub
Analyze Facebook/Instagram Ads campaigns via the Meta Marketing API from any AI agent or shell automation.
- Reads credentials
6 other projects use a version of this.
Adopted by
Most recently taken up by
- athina-ai/goose-skillstheir own version, first seen Nov 9, 2026
- Eugenevdm01/eugenes-meta-agenttheir own version, first seen Nov 8, 2026
- gooseworks-ai/goose-skillstheir own version, first seen Nov 1, 2026
- TehseenTech/manus-skillstheir own version, first seen Aug 15, 2026
- mathiaschu/meta-ads-analyzertheir own version, first seen Feb 26, 2026
- Tommyvr7/meta-ads-analyzertheir own version, first seen Feb 26, 2026
Other versions6 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 6
- athina-ai/goose-skills★ 1.3ksame name
- gooseworks-ai/goose-skills★ 1.3ksame name
- mathiaschu/meta-ads-analyzer★ 428same name
- Eugenevdm01/eugenes-meta-agent★ 4same name
- TehseenTech/manus-skills★ 0same name
- Tommyvr7/meta-ads-analyzer★ 0same name
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.
The file
We split this skill into the rules it gives an agent
5 rules. 0 are common, 3 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 6 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 10
Use this skill when a user asks an AI agent to inspect Facebook/Instagram Ads campaign performance, active campaigns, spend, CTR, CPC, CPM, …
- Very specific: line 40
If Meta deprecates the pinned version, the API returns an error naming it.
- Distinctive: line 51
All commands return JSON.
- Distinctive: line 70
Do not expose raw access tokens or private account IDs in logs.
- Very specific: line 71
If the CLI returns status: error, report the error and suggest the smallest fix.
“Common” is measured: kept by at least 6 in 10 of the 6 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
Meta Ads Analyzer
Use this skill when a user asks an AI agent to inspect Facebook/Instagram Ads campaign performance, active campaigns, spend, CTR, CPC, CPM, leads, or messaging conversations.
The project is read-only. It does not create, edit, pause, or delete campaigns.
Setup
git clone https://github.com/Synero/meta-ads-analyzer.git
cd meta-ads-analyzer
export META_ACCESS_TOKEN="your_meta_access_token"
export META_ACCOUNT_ID="act_123456789"
bash setup.shRequired Meta permissions usually include:
ads_readads_managementif the user's Meta app/account flow requires it
API version
The default is Graph API v26.0. Pin another version per environment or per call when a workflow needs it:
export META_API_VERSION=v25.0
node meta-ads-cli.js testConnection --apiVersion=v25.0If Meta deprecates the pinned version, the API returns an error naming it; bump META_API_VERSION or upgrade the CLI instead of retrying.
Commands
./meta-ads.sh test
./meta-ads.sh campaigns
./meta-ads.sh insights
./meta-ads.sh insights --datePreset=last_7dAll commands return JSON.
Intent mapping
| User intent | Command | Analysis focus |
| “How are my campaigns doing?” | ./meta-ads.sh insights | Spend, CTR, CPC, CPM, conversions |
| “Which campaigns are active?” | ./meta-ads.sh campaigns | status === ACTIVE |
| “Which campaign is cheapest?” | ./meta-ads.sh insights | Compare CPC/CPM against objective |
| “How many leads/conversations?” | ./meta-ads.sh insights | Inspect actions array |
| “Is my API connected?” | ./meta-ads.sh test | Token and account connectivity |
Output handling
When summarizing results:
- State the date preset used.
- Compare campaigns by objective-relevant metrics.
- Mention Meta's reporting delay.
- Do not expose raw access tokens or private account IDs in logs.
- If the CLI returns
status: error, report the error and suggest the smallest fix.
Metrics reference
spend: amount spent in the selected period.impressions: total ad impressions.reach: unique accounts reached.clicks: click/interactions count from Meta.ctr: click-through rate.cpc: cost per click.cpm: cost per thousand impressions.actions: conversion events such as leads or messaging conversations.
Basic heuristics:
- CTR below 1%: review creative, audience, or offer.
- CTR above 2%: usually healthy, depending on vertical.
- Frequency above 3: watch for fatigue if available.
- CPC/CPM must be interpreted relative to objective and market.
Troubleshooting
META_ACCESS_TOKEN is required: set the token in the environment.Permission denied: the app/token probably lacks ads permissions or account access.Account not found: check thatMETA_ACCOUNT_IDstarts withact_and belongs to the token's accessible accounts.- Empty insights: check date preset, campaign delivery, attribution windows, and Meta reporting delays.
Files
meta-ads.sh: shell wrapper for agents.meta-ads-cli.js: zero-dependency Node.js CLI (also importable as a module).setup.sh: local setup and syntax checks.test/: offline suite against a fake Graph API server; run withnpm test..env.example: credential template.
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.

