AgentStack
SKILL verified MIT Self-run

Meta Reporting

skill-swan-gtm-gtm-skills-meta-reporting · by swan-gtm

|

No reviews yet
0 installs
0 views
view→install

Install

$ agentstack add skill-swan-gtm-gtm-skills-meta-reporting

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets Used
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Meta Reporting? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Meta Ads Reporting and Dashboards

Turn raw Meta numbers into a decision. This skill pulls live performance, analyzes it against the operating system in the meta-ads skill, and renders a clean, client-ready dashboard.

What this covers

  1. Performance analysis - pull live spend, leads, CPL, CTR, CPM, reach at account and campaign level, then read it like an operator (leading vs vanity signals).
  2. Reporting - weekly or period-over-period rollups: what changed, what is working, what to fix first.
  3. Dashboards - a self-contained HTML dashboard branded with the Frontal logo, that you open in a browser or send to a client.

Scripts

Run from .claude/skills/meta-ads/scripts/ (shared client + .env) unless noted.

| Task | Command | |------|---------| | Account snapshot (all KPIs, one call) | python account_overview.py | | Campaign performance table | python get_campaign_performance.py --date-preset last_30d | | Pull active ad copy (for a creative/audit read) | python get_active_ads_copy.py | | Branded HTML dashboard | cd ../../meta-reporting/scripts && python generate_dashboard.py --date-preset last_30d |

The dashboard (with your logo)

generate_dashboard.py writes a shareable HTML file: KPI tiles (spend, leads, cost per lead, CTR, CPM, reach) plus a per-campaign table, sorted by spend.

cd .claude/skills/meta-reporting/scripts
python generate_dashboard.py                          # last 30 days -> meta-dashboard.html
python generate_dashboard.py --date-preset last_7d --out weekly.html

It ships with the Frontal logo by default. It's your dashboard - rebrand it:

  • Set DASHBOARD_LOGO_URL and DASHBOARD_BRAND_NAME in .env, or
  • Pass --logo https://yourbrand.com/logo.png --brand "Your Brand".

No image API, no external service - just the Meta API and Python. Open it with open meta-dashboard.html or attach the file to an email.

How to analyze (not just report)

Reporting is describing the numbers. Analysis is deciding what to do. Always:

  1. Lead with the outcome metric, not vanity. Cost per lead and lead volume first. Impressions, reach, and CPM are context, never the headline. (See ads-foundations/measurement-scorecard.md.)
  2. Separate leading from lagging signals. CTR and CPM move first; CPL and lead volume confirm. A rising CPM with flat CPL is fine; a rising CPL is the alarm.
  3. Read at the right altitude. Account -> campaign -> ad set -> ad. Find the level where the money is leaking before recommending a fix.
  4. Tie every number to an action. "CPL up 40% week over week, driven by the retargeting campaign fatiguing (frequency 4.2). Action: rotate creative, cap frequency." Not "CPL went up."
  5. Never fabricate a benchmark. If you do not have the account's own history, say so. Use the B2B benchmarks in meta-ads/knowledge-base/optimization-playbook.md as reference ranges, labeled as such.

Output standards

  • Dashboards are client-ready: clean, branded, no jargon, no source citations.
  • Written reports lead with wins, then concerns, with week-over-week numbers at the campaign level.
  • Follow ads-foundations/writing-style.md for everything you write. No AI slop, no em dashes, no emoji.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.