Ads
Cesarjoquin/Marketing-Skills
When the user wants help with paid advertising campaigns on Google Ads, Meta (Facebook/Instagram), LinkedIn, Twitter/X, or other ad platforms.
Diagnose Meta Ads campaign performance and account gaps using Meta's actual system mechanics — including customer-journey coverage, Breakdown Effect, Learning Phase, Auction Overlap, Pacing, and…
$ npx skills add gooseworks-ai/goose-skills --skill meta-ads-analyzer -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install gooseworks-ai/goose-skills meta-ads-analyzer --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ads/composites/meta-ads-analyzer .claude/skills/meta-ads-analyzer && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "meta-ads-analyzer" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/ads/composites/meta-ads-analyzer into .claude/skills/meta-ads-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "meta-ads-analyzer", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/gooseworks-ai/goose-skills/tree/main/skills/ads/composites/meta-ads-analyzerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add gooseworks-ai/goose-skills --skill meta-ads-analyzer -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install gooseworks-ai/goose-skills meta-ads-analyzer --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/ads/composites/meta-ads-analyzer .agents/skills/meta-ads-analyzer && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "meta-ads-analyzer" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/ads/composites/meta-ads-analyzer into .agents/skills/meta-ads-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "meta-ads-analyzer", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add gooseworks-ai/goose-skills --skill meta-ads-analyzer -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install gooseworks-ai/goose-skills meta-ads-analyzer --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/ads/composites/meta-ads-analyzer .cursor/skills/meta-ads-analyzer && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "meta-ads-analyzer" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/ads/composites/meta-ads-analyzer into .cursor/skills/meta-ads-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "meta-ads-analyzer", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/gooseworks-ai/goose-skills.git --path skills/ads/composites/meta-ads-analyzer--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add gooseworks-ai/goose-skills --skill meta-ads-analyzer -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install gooseworks-ai/goose-skills meta-ads-analyzer --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/ads/composites/meta-ads-analyzer .gemini/skills/meta-ads-analyzer && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "meta-ads-analyzer" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/ads/composites/meta-ads-analyzer into .gemini/skills/meta-ads-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "meta-ads-analyzer", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install gooseworks-ai/goose-skills meta-ads-analyzerInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add gooseworks-ai/goose-skills --skill meta-ads-analyzer -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/ads/composites/meta-ads-analyzer .github/skills/meta-ads-analyzer && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "meta-ads-analyzer" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/ads/composites/meta-ads-analyzer into .github/skills/meta-ads-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "meta-ads-analyzer", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add gooseworks-ai/goose-skills --skill meta-ads-analyzer -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install gooseworks-ai/goose-skills meta-ads-analyzer --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/ads/composites/meta-ads-analyzer .opencode/skills/meta-ads-analyzer && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "meta-ads-analyzer" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/ads/composites/meta-ads-analyzer into .opencode/skills/meta-ads-analyzer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "meta-ads-analyzer", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
meta-ads-analyzerDiagnose Meta Ads campaign performance and account gaps using Meta's actual system mechanics — including customer-journey coverage, Breakdown Effect, Learning Phase, Auction Overlap, Pacing, and…
Meta Ads Analyzer is an agent skill from gooseworks-ai/goose-skills. Diagnose Meta Ads campaign performance and account gaps using Meta's actual system mechanics — including customer-journey coverage, Breakdown Effect, Learning Phase, Auction Overlap, Pacing, and Creative Fatigue. Use for performance diagnosis, account audits, full-funnel or TOF/MOF/BOF gap analysis, deciding what to test or create next, and producing novice-friendly recommendations without forcing every campaign or ad into a funnel stage.
Its SKILL.md is about 4.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including reference files (for example `eval/eval.json`, `references/customer-journey-coverage.md` and `skill.meta.json`).
It sits in Marketing & SEO, covering Paid advertising and Customer journey mapping. It works with Meta Ads. The repository describes itself as: Library of Growth & GTM skills + data APIs for Claude Code, Codex, Cursor to run ads, social, content, lead gen, seo and data scraping. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit c650c6d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Meta Ads Analyzer loads about 4.6k tokens when it runs, and up to ~5.8k if it reads all its reference files. Until then it costs about 115 tokens; SKILL.md has 2,285 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from gooseworks-ai/goose-skills at commit c650c6d, republished under its MIT licence (© gooseworks-ai). 2,285 words, ~4,644 tokens.
.claude/skills/meta-ads-analyzer/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Most "Meta Ads analysis" stops at "this CPA is high, pause it." That's wrong more often than it's right. Meta's delivery system optimizes for marginal efficiency — the cost of the next conversion — not average efficiency across a snapshot. A segment with a higher average CPA is often the one keeping your overall campaign cheap. Pausing it makes things worse.
This skill diagnoses Meta campaigns the way a senior media buyer would: at the right evaluation level, accounting for learning state, separating noise from signal, and explaining why the system is making the decisions it's making before recommending any change. It can also audit whether the account supports the complete customer journey without assuming that TOF, MOF, and BOF must be separate campaigns.
Core principle: Holistic first, then drill down. Marginal over average. Customer-journey coverage over rigid funnel structure. Dynamic over static. Every recommendation is a testable hypothesis with expected impact, not a directive.
For account audits, full-funnel reviews, or questions about what is missing, read and apply references/customer-journey-coverage.md before analyzing the account.
guided by default; use expert when the user asks for technical detail or demonstrates strong media-buying knowledgeDo not block when some coverage fields are absent. Record what is missing, lower confidence, and distinguish "no evidence available" from "the account has no coverage."
This is the most important step. Evaluating at the wrong level is the #1 source of wrong recommendations.
| Campaign Setup | Correct Evaluation Level | Why |
|---|---|---|
| Advantage+ Campaign Budget (CBO) | Campaign level | System pools budget across ad sets — only campaign totals reflect reality |
| Automatic placements (no CBO) | Ad Set level | System pools budget across placements within the ad set |
| Multiple ads in 1 ad set | Ad Set level | System pools delivery across ads |
| Manual placements + ABO | Placement / Ad Set level | Each is independent |
Output for this phase: State the evaluation level explicitly and explain why before any metric is interpreted.
If asked "is this Meta placement underperforming?" on a CBO campaign, the answer is "wrong question — at CBO the placement-level CPA is misleading. Here's the campaign total..."
Before judging anything, check delivery state per ad set.
Learning state checklist:
Learning (delivery less stable, CPA typically higher, results not predictive)Learning Limited = can't get enough events → flag as a structural issue, not a performance issueSignificant edits that reset learning:
Output for this phase: Per ad set, mark Active / Learning / Learning Limited. Caveat all conclusions for anything in learning. Do not recommend pausing a Learning ad set based on CPA alone.
Run the diagnosis through these six lenses. Each one explains a different class of "weird" behavior.
The Breakdown Effect: the system shifts budget toward segments where the next conversion is cheapest, not where the average conversion is cheapest. A segment can have a high average CPA in a breakdown report and still be the right place for budget.
How to spot it:
Mandatory framing in the report: Never recommend pausing a segment based solely on higher average CPA/CPM in a breakdown report. Removing it will often raise total cost. Frame any cut as a hypothesis to test with a holdout, not an instruction.
For each ad with sufficient impressions (~500+), check the three rankings:
| Ranking | Below Average → | Action |
|---|---|---|
| Quality Ranking | Creative is the problem | Test new creative formats / hooks |
| Engagement Rate Ranking | Hook isn't pulling | Test new opener / first 3 seconds |
| Conversion Rate Ranking | Post-click is leaking | Audit landing page (use ad-to-landing-page-auditor) |
Two below average + one average = creative refresh. All three below average = scrap and rebuild.
Symptoms: ad sets in the same campaign chronically Learning Limited, underspending budget, or showing erratic delivery.
Causes: Overlapping audiences within the same ad account / Page mean only one of your ads enters each auction (Meta picks the highest-value one; the others are excluded — you don't bid against yourself, but the suppressed ad sets can't learn).
Action:
Pacing = the system smoothing budget across the day/period to capture the best opportunities. Daily snapshots will look uneven by design.
How to read it:
Distinguish noise from trend before recommending anything.
| Signal | Verdict |
|---|---|
| Day-to-day CPA swing within 20–30% | Normal — ignore |
| Weekend vs. weekday delta | Normal — control for it |
| Gradual change over weeks | Trend — investigate |
| Sudden ≥50% cost increase sustained 3+ days | Real problem — diagnose |
| Delivery near zero | Account/asset/policy issue — check first |
| Conv rate dropping while spend rises | Creative fatigue or LP regression |
Always check sample size. A 1-conversion difference at low volume is meaningless.
Run this lens for account audits, full-funnel reviews, requests about TOF/MOF/BOF, or questions about what to create next. Follow references/customer-journey-coverage.md.
Start by identifying whether the account is consolidated, funnel-segmented, hybrid, or unclear. Then evaluate whether the account supports these customer jobs:
Campaigns and ads are evidence for the coverage map; they are not objects that must each receive one TOF/MOF/BOF label. One campaign or creative may support multiple customer jobs. Only make a stage-specific claim when the audience, message, offer, destination, or optimization event supports it.
Identify gaps in coverage, messaging, handoffs, delivery, or measurement. Do not report a missing stage merely because there is no campaign named after that stage, and do not recommend splitting a consolidated campaign unless the evidence shows a specific problem that separation would test.
Before writing the report, restate every performance finding from Phase 3 in terms of what the system is trying to do:
"Placement A shows $10 average CPA vs Placement B's $15. Time-series shows A's CPA rising. The system is correctly shifting toward B because B's marginal CPA is now lower. Recommendation: do nothing on placements; test new creative in A to lower its marginal CPA."
If a performance finding can't be restated in marginal/system-mechanics terms, it's probably noise — drop it. For coverage findings, require evidence from the customer journey and state confidence explicitly.
Use this exact structure. No deviation.
1. EXECUTIVE SUMMARY
- 2–3 sentences on overall health
- Top 1 thing to do, top 1 thing NOT to do
2. EVALUATION LEVEL
- Stated explicitly with the reason
3. LEARNING STATUS
- Per-ad-set table: Active / Learning / Learning Limited
- Caveats applied to any in-learning analysis
4. PERFORMANCE OVERVIEW
- Standardized metric naming (see table below)
- Aggregate first, then drill-down
- Compare to target where given, benchmarks otherwise
5. CUSTOMER-JOURNEY COVERAGE (include for account/funnel audits)
- Account model: Consolidated / Funnel-segmented / Hybrid / Unclear
- Table: Customer job / What exists / Gap or no gap / Evidence / Confidence / Next test
- Customer jobs: Create demand / Build consideration / Convert intent
- One campaign or ad may support multiple jobs
- Never infer a gap from campaign names alone
6. DIAGNOSIS
- Findings from Phase 3, each tagged to its lens
(Marginal / Relevance / Overlap / Pacing / Fluctuation / Coverage)
- Each finding cites specific data
7. RECOMMENDATIONS
- Each = hypothesis + expected impact + how to test
- Marked Critical / High / Medium / Low priority
- Anything paused/scaled has a rollback plan
- For guided reports, end with no more than three prioritized actions
8. BREAKDOWN EFFECT NOTES
- Explicit callouts where average ≠ marginal
- "Do not do X" warnings if the data tempts a wrong moveThese are not style suggestions. Violating them produces wrong analysis.
get_recommendations first if you have live API access. If your recommendation diverges from Meta's, explicitly explain why.Always rename raw metric names to these standardized display names in any output:
| Raw | Display |
|---|---|
impressions | Impressions |
reach | Reach (Accounts Center accounts) |
frequency | Frequency |
spend | Amount Spent |
cpm | CPM |
clicks | Clicks (all) |
cpc | CPC (all) |
ctr | CTR (all) |
cost_per_action_type:link_click | CPC (Link Click) |
outbound_clicks_ctr | Outbound CTR |
actions:purchase | Purchases |
action_values:purchase | Purchase Value |
cost_per_action_type:purchase | Cost per Purchase |
purchase_roas | Purchase ROAS (return on ad spend) |
video_thruplay_watched_actions | ThruPlays |
The misinterpretation that Meta's system shifts budget into "underperforming" segments. In reality the system maximizes total results by optimizing for marginal efficiency. A breakdown report sliced by placement, demographic, or device shows averages — but the system optimizes for the next dollar, not the average. A segment with high average CPA may be protecting overall campaign efficiency by preventing even higher marginal cost elsewhere.
Delivery state where the system is exploring how to deliver a new or significantly edited ad set. Performance is less stable, CPA is typically higher, and results are not predictive of long-term performance. Exits after ~50 optimization events within 7 days of the last significant edit. Don't edit during learning (resets the clock). Don't fragment with too many ad sets (each needs its own 50 events). Use realistic budgets — too small or too large gives bad signal.
When ad sets share overlapping audiences within the same ad account, only the highest-value ad from your portfolio enters each auction. The others are excluded. Symptoms: chronic Learning Limited, underspending, erratic delivery. Fix: consolidate ad sets, or pause the lower-performing overlapping ones to free up auction entries.
The system spreads spend across the day/period to capture best opportunities. Daily under/overspend is by design — only sustained underspend (3+ days) is a real signal.
Effectiveness decreases as the same audience sees the same creative repeatedly. Watch frequency (>3–4 in a 7-day window for prospecting) and conversion-rate decline while spend stays flat. Refresh creative on a rotation rather than waiting for fatigue to show in CPA.
Day-to-day CPA variation within 20–30% is normal. Weekend/weekday differences are normal. Sudden ≥50% sustained cost increases over 3+ days, near-zero delivery, or conv-rate drops while spend rises are the only patterns worth diagnosing as "problems."
messaging-ab-tester for variants and ad-angle-miner for source material.ad-to-landing-page-auditor — and use it whenever Conversion Rate Ranking is below average.ad-campaign-analyzer for cross-channel budget reallocation.ad-campaign-analyzer — Multi-platform performance review and budget reallocation. Run this first if you have multiple channels; run meta-ads-analyzer after for the Meta-specific deep dive.ad-to-landing-page-auditor — Always pair with this when Conversion Rate Ranking is below average.messaging-ab-tester — Generate variants when creative fatigue is the diagnosis.launch-meta-ad-campaign — Prepare a new paused campaign when the diagnosis points to "rebuild, don't fix".Meta system-mechanics framing (Breakdown Effect, Learning Phase, Auction Overlap reference content) adapted from an MIT-licensed Meta ads analyzer project by Mathias Chu.
© gooseworks-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (references) in skills/ads/composites/meta-ads-analyzer of gooseworks-ai/goose-skills.
Open the folder on GitHubat commit c650c6d
Meta Ads Analyzer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Meta Ads Analyzer this skillgooseworks-ai/goose-skills | 1.2k | — | ~4.6k | Automated safety check: Pass | MIT | |
| AdsCesarjoquin/Marketing-Skills | 202 | 1 repos | ~3.5k | Automated safety check: Pass | MIT | |
| Adscoreyhaines31/marketingskills | 54k | 1 repos | ~7k | Automated safety check: Pass | MIT | |
| Money Adsiamzifei/show-me-the-money | 1k | — | ~2.4k | Automated safety check: Pass | Custom licence | |
| Meta Ad Builderkrusemediallc/arcads-claude-code | 1.6k | — | ~1.7k | Automated safety check: Notes | MIT | |
| Meta Pixel and Conversions API Referencebighadj22/codflow | 354 | — | ~1.8k | Automated safety check: Pass | Apache-2.0 |
Cesarjoquin/Marketing-Skills
When the user wants help with paid advertising campaigns on Google Ads, Meta (Facebook/Instagram), LinkedIn, Twitter/X, or other ad platforms.
coreyhaines31/marketingskills
When the user wants help with paid advertising campaigns on Google Ads, Meta (Facebook/Instagram), LinkedIn, Twitter/X, or other ad platforms.
iamzifei/show-me-the-money
Paid advertising automation for Google Ads, Meta Ads, and other ad platforms.
krusemediallc/arcads-claude-code
Publish finished creatives as live Meta (Facebook/Instagram) ads via the Meta Marketing API, plus research and ad-copy support.
bighadj22/codflow
Bundles Meta's official Pixel and Conversions API documentation so tracking changes, event deduplication and conversion events are checked against the real spec.
DV0x/creative-ad-agent
Generates conversion-focused ad copy through research-first extraction.
gooseworks-ai/goose-skills
Scrape and search Reddit posts using Apify. An agent skill from gooseworks-ai/goose-skills.
gooseworks-ai/goose-skills
Generate or edit an image via any FAL image model (nano-banana edit, gpt-image, flux, ...), ROUTED THROUGH THE fal-proxy so it bills the Ads agent.
gooseworks-ai/goose-skills
Replace an existing video's opening with a supplied clip or free kinetic text hook while retaining and verifying every original body frame, audio, captions and ending.
gooseworks-ai/goose-skills
Scrape blog posts via RSS feeds (free, no API key) with Apify fallback for JS-heavy sites.
gooseworks-ai/goose-skills
Find leads by scraping engagers from a competitor's top LinkedIn posts.
gooseworks-ai/goose-skills
Assemble a ChatGPT chat-reveal video ad from a thread + timeline JSON — one continuous Playwright recording of a ChatGPT mobile chat (user types with the iOS keyboard up → taps send → keyboard…
Works with
Categories
Diagnose Meta Ads campaign performance and account gaps using Meta's actual system mechanics — including customer-journey coverage, Breakdown Effect, Learning Phase, Auction Overlap, Pacing, and…. Meta Ads Analyzer is an agent skill from gooseworks-ai/goose-skills. Diagnose Meta Ads campaign performance and account gaps using Meta's actual system mechanics — including customer-journey coverage, Breakdown Effect, Learning Phase, Auction Overlap, Pacing, and Creative Fatigue.
Meta Ads Analyzer fits situations like: performance diagnosis; TOF/MOF/BOF gap analysis; deciding what to test; producing novice-friendly recommendations without forcing every campaign.
Run `npx skills add gooseworks-ai/goose-skills --skill meta-ads-analyzer -a claude-code`. Or copy the skill folder (skills/ads/composites/meta-ads-analyzer in gooseworks-ai/goose-skills) into .claude/skills/meta-ads-analyzer in your project. Claude Code loads it when a task matches its description.
Run `npx skills add gooseworks-ai/goose-skills --skill meta-ads-analyzer -a codex`. Or copy the skill folder (skills/ads/composites/meta-ads-analyzer in gooseworks-ai/goose-skills) into .agents/skills/meta-ads-analyzer in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add gooseworks-ai/goose-skills --skill meta-ads-analyzer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/meta-ads-analyzer, .gemini/skills/meta-ads-analyzer, .github/skills/meta-ads-analyzer and .opencode/skills/meta-ads-analyzer in your project.
SKILL.md names no scripts, command-line tools or credentials: Meta Ads Analyzer is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Meta Ads Analyzer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.6k tokens (SKILL.md is roughly 19k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Meta Ads Analyzer: Ads (Cesarjoquin/Marketing-Skills, 202 stars), Ads (coreyhaines31/marketingskills, 54k stars), Money Ads (iamzifei/show-me-the-money, 1k stars) and Meta Ad Builder (krusemediallc/arcads-claude-code, 1.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
gooseworks-ai (a GitHub organization) maintains it in gooseworks-ai/goose-skills, which has 1,240 GitHub stars. The repository holds 273 skills in this directory. The repository was last updated on October 8, 2026.
Source: gooseworks-ai/goose-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.