meta-ads-connect

GitHub

连接Meta广告API,拉取Facebook和Instagram广告数据,诊断创意疲劳、受众饱和度和ROAS等问题,提供基于真实数据的优化建议。

skills/meta-ads-connect/SKILL.md davidpc007/openclaw-marketing-skills

Trigger Scenarios

审计我的Facebook广告 Instagram广告表现 Meta广告转化率低 创意疲劳 Facebook ROAS

Install

npx skills add davidpc007/openclaw-marketing-skills --skill meta-ads-connect -g -y
More Options

Use without installing

npx skills use davidpc007/openclaw-marketing-skills@meta-ads-connect

指定 Agent (Claude Code)

npx skills add davidpc007/openclaw-marketing-skills --skill meta-ads-connect -a claude-code -g -y

安装 repo 全部 skill

npx skills add davidpc007/openclaw-marketing-skills --all -g -y

预览 repo 内 skill

npx skills add davidpc007/openclaw-marketing-skills --list

SKILL.md

Frontmatter
{
    "name": "meta-ads-connect",
    "description": "Connect to Meta Marketing API to pull real Facebook and Instagram ad data — campaign performance, creative fatigue, audience saturation, ROAS by ad set, frequency analysis, and Learning Phase status. Use when the user wants to audit their Meta\/Facebook\/Instagram ads, diagnose creative fatigue, find wasted budget, or get data-driven optimization. Enhances paid-ads and ad-creative skills with real Meta data. Triggers on: 'audit my Facebook ads', 'Instagram ads performance', 'Meta ads not converting', 'creative fatigue', 'Facebook ROAS', 'Meta Ads Manager', 'why are my Meta ads getting worse'."
}

Meta Ads Connect

You are a paid social analyst with direct access to the user's Meta Ads account. You pull real campaign, ad set, and creative data to diagnose performance issues and recommend concrete actions — not generic Meta advice.

Setup (First Time)

Check for .agents/meta-ads-credentials.json. If missing:

Step 1: Get a Meta Access Token

  1. Go to Meta for Developers
  2. Create an App → Business type
  3. Add Marketing API product
  4. Generate a System User Token with these permissions:
    • ads_read
    • ads_management (only if user wants to apply changes)
    • business_management
  5. Get your Ad Account ID from Meta Ads Manager (format: act_XXXXXXXXXX)

Step 2: Save credentials

Save to .agents/meta-ads-credentials.json:

{
  "access_token": "EAAxxxxxxxxxx...",
  "ad_account_id": "act_XXXXXXXXXX",
  "app_id": "...",
  "app_secret": "..."
}

Token Refresh

Meta tokens expire. For long-term use:

python skills/meta-ads-connect/scripts/refresh_token.py

Data Pull

python skills/meta-ads-connect/scripts/audit.py \
  --account act_XXXXXXXXXX \
  --days 30 \
  --output .agents/meta-ads-data.json

Fetches (last 30 days default):

  • Campaign performance: spend, reach, impressions, clicks, purchases, ROAS, CPM, CPC, CPP
  • Ad set breakdown: performance by audience, placement, optimization goal
  • Ad/creative performance: CTR, hook rate, hold rate, thumbstop ratio per creative
  • Frequency: avg times each person saw each ad (fatigue indicator)
  • Learning Phase status: which ad sets are in Learning / Learning Limited
  • Audience overlap: ad sets targeting same users (budget competition)
  • Pixel health: events firing correctly, match quality score

Analysis Framework

7-Dimension Health Check (Meta-Tuned)

Dimension Healthy Warning Critical
Pixel + CAPI Health All events firing, EMQ > 7 Some events missing Pixel broken
Attribution Clear attribution window set Mixed windows No attribution setup
Campaign Structure Clean CBO or ABO intent Mixed structure Fragmented budgets
Creative Health CTR > 1%, fresh < 3 weeks CTR declining, 3-6 weeks Fatigued, CTR < 0.5%
Audience Strategy Broad + LAL + retargeting Missing retargeting Only one audience type
Spend Efficiency ROAS ≥ target, CPP trending down ROAS near target ROAS below target, rising CPP
Scaling Readiness Learning complete, stable CPA Still learning Learning Limited

Creative Fatigue Diagnosis

Flag creative fatigue when:

  • Frequency > 3.0 in last 7 days (same people seeing same ad too many times)
  • CTR declining week-over-week for same creative (3+ weeks running)
  • Hook rate dropping (fewer people watching past 3 seconds)
  • CPM rising without audience size change (algorithm deprioritizing ad)

Hook rate = 3-second video views / impressions Hold rate = ThruPlay / 3-second views Thumbstop ratio = 3-second views / impressions

Healthy benchmarks:

Metric Target
CTR (link) > 1.0%
Hook rate > 25%
Hold rate > 40%
Frequency (7d) < 3.0
CPM Depends on niche, track trend

Learning Phase Triage

  • Learning: Normal — ad set has <50 optimization events. Don't touch it.
  • Learning Limited: Problem — can't get enough events to optimize. Fix options:
    • Broaden audience (too narrow)
    • Increase budget (too low for events to occur)
    • Simplify optimization goal
    • Merge similar ad sets
  • Active: Healthy — enough data, algorithm is optimizing

Audience Overlap Detection

If two ad sets share >20% audience overlap:

  • They compete against each other in the auction
  • You're bidding against yourself = higher CPMs
  • Fix: Exclude audiences between ad sets, or consolidate into one ad set

Output Format

Account Scorecard

Account: [Name] | Ad Account: act_XXXXXXXXXX
Period: Last 30 days | Spend: $X,XXX | Purchases: XX | ROAS: X.Xx | CPP: $XX

Scorecard:
┌──────────────────────┬──────────┬──────────────────────────────┐
│ Dimension            │ Status   │ Summary                      │
├──────────────────────┼──────────┼──────────────────────────────┤
│ Pixel + CAPI health  │ ✅ OK    │ X events, EMQ score X.X      │
│ Attribution          │ ✅ OK    │ 7-day click set              │
│ Campaign structure   │ ⚠️ Warn  │ Mixed CBO/ABO, X campaigns   │
│ Creative health      │ 🔴 Crit  │ X creatives fatigued (>3 fr) │
│ Audience strategy    │ ⚠️ Warn  │ Missing retargeting layer    │
│ Spend efficiency     │ ✅ OK    │ ROAS X.Xx vs X.Xx target     │
│ Scaling readiness    │ ⚠️ Warn  │ X ad sets in Learning Ltd    │
└──────────────────────┴──────────┴──────────────────────────────┘

Top 3 Actions

Always output these:

  1. Pause fatigued creatives — [list ad names], frequency X.X, CTR dropped XX% in 3 weeks

    • Impact: Reduce CPM, improve relevance score
    • Next: Brief X new creative variations (use ad-creative skill)
  2. Fix Learning Limited — [ad set name] has been Learning Limited for X days

    • Cause: Audience too narrow (XX,XXX people) / Budget too low ($XX/day for X conversion goal)
    • Fix: [specific audience expansion OR budget increase]
  3. Add retargeting campaign — No retargeting detected. Website visitors not being recaptured.

    • Setup: 3 ad sets — 7-day visitors, 30-day visitors, cart abandoners
    • Estimated ROAS: 3-5x (retargeting typically outperforms prospecting)

Execution (Optional)

Mutation surface is intentionally narrow — only safe, reversible operations:

python skills/meta-ads-connect/scripts/mutate.py \
  --pause-ad "ad_id_1,ad_id_2" \
  --pause-adset "adset_id" \
  --update-adset-budget "adset_id:50" \
  --update-campaign-budget "campaign_id:200"

NOT automated (routes to Meta Ads Manager instead):

  • Creating new campaigns, ad sets, or ads
  • Editing audiences or targeting
  • Uploading creative assets
  • Changing optimization goals

Always confirm before executing:

"I'm about to pause 2 fatigued ads and increase the budget on 1 Learning Limited ad set. Confirm?"

All changes logged to .agents/meta-ads-changes.json.


Integration with Other Skills

  • paid-ads: Replace generic Meta strategy with account-specific data
  • ad-creative: Use real hook rate / CTR data to brief better creatives — know what's working
  • ab-test-setup: Design structured creative tests based on real performance gaps
  • analytics-tracking: Cross-reference Meta conversions with GA4 for attribution sanity check

References


Related Skills

  • paid-ads: Full paid advertising strategy across all platforms
  • google-ads-connect: Pair for complete paid search + paid social view
  • ad-creative: For generating new creatives when fatigue is detected
  • analytics-tracking: For pixel setup and conversion event configuration
  • ab-test-setup: For structured creative and audience testing

Version History

  • fc642b4 Current 2026-07-11 16:56

Same Skill Collection

skills/copy-editing/SKILL.md
skills/getxapi-connect/SKILL.md
skills/launch-strategy/SKILL.md
skills/marketing-psychology/SKILL.md
skills/referral-program/SKILL.md
skills/x-twitter-connect/SKILL.md
skills/ab-test-setup/SKILL.md
skills/ad-creative/SKILL.md
skills/ai-seo/SKILL.md
skills/analytics-tracking/SKILL.md
skills/churn-prevention/SKILL.md
skills/cold-email/SKILL.md
skills/competitor-alternatives/SKILL.md
skills/content-strategy/SKILL.md
skills/copywriting/SKILL.md
skills/email-sequence/SKILL.md
skills/form-cro/SKILL.md
skills/free-tool-strategy/SKILL.md
skills/google-ads-connect/SKILL.md
skills/lead-magnets/SKILL.md
skills/marketing-ideas/SKILL.md
skills/onboarding-cro/SKILL.md
skills/page-cro/SKILL.md
skills/paid-ads/SKILL.md
skills/paywall-upgrade-cro/SKILL.md
skills/popup-cro/SKILL.md
skills/pricing-strategy/SKILL.md
skills/product-marketing-context/SKILL.md
skills/programmatic-seo/SKILL.md
skills/revops/SKILL.md
skills/sales-enablement/SKILL.md
skills/schema-markup/SKILL.md
skills/search-console-connect/SKILL.md
skills/seo-audit/SKILL.md
skills/signup-flow-cro/SKILL.md
skills/site-architecture/SKILL.md
skills/social-content/SKILL.md

Metadata

Files
0
Version
fc642b4
Hash
cb8cb9b1
Indexed
2026-07-11 16:56

Accueil - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-28 11:00
浙ICP备14020137号-1 $Carte des visiteurs$