skills$openclaw/meta-ad-creatives
fortytwode5.7k

by fortytwode

meta-ad-creatives – OpenClaw Skill

meta-ad-creatives is an OpenClaw Skills integration for data analytics workflows. Track Meta (Facebook/Instagram) ad creative performance and hit rates across multiple accounts. Use when asked about creative win rates, which ads are hitting benchmarks, CPT/CPI/ROAS analysis, or comparing creative performance across accounts and time periods. Supports multiple benchmark metrics (CPT, CPI, IPM, ROAS) and currency conversion.

5.7k stars3.9k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026data analytics

Skill Snapshot

namemeta-ad-creatives
descriptionTrack Meta (Facebook/Instagram) ad creative performance and hit rates across multiple accounts. Use when asked about creative win rates, which ads are hitting benchmarks, CPT/CPI/ROAS analysis, or comparing creative performance across accounts and time periods. Supports multiple benchmark metrics (CPT, CPI, IPM, ROAS) and currency conversion. OpenClaw Skills integration.
ownerfortytwode
repositoryfortytwode/meta-ad-creatives
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @fortytwode/meta-ad-creatives
last updatedFeb 7, 2026

Maintainer

fortytwode

fortytwode

Maintains meta-ad-creatives in the OpenClaw Skills directory.

View GitHub profile
File Explorer
5 files
.
scripts
meta_ad_creatives.py
24.8 KB
_meta.json
290 B
accounts_config.example.json
955 B
SKILL.md
3.7 KB
SKILL.md

name: meta-ad-creatives version: 1.0.0 description: Track Meta (Facebook/Instagram) ad creative performance and hit rates across multiple accounts. Use when asked about creative win rates, which ads are hitting benchmarks, CPT/CPI/ROAS analysis, or comparing creative performance across accounts and time periods. Supports multiple benchmark metrics (CPT, CPI, IPM, ROAS) and currency conversion.

Meta Ad Creatives

Track creative performance and hit rates across multiple Meta Ads accounts.

What This Skill Does

  • Calculate hit rates (% of creatives meeting performance benchmarks)
  • Track multiple metrics: CPT (cost per trial), CPI (cost per install), IPM (installs per mille), ROAS
  • Compare performance across multiple accounts
  • Store historical data for trend analysis
  • Identify winning creatives vs underperformers
  • Support currency conversion for international accounts

Setup

1. Environment Variables

FACEBOOK_ACCESS_TOKEN=your_token_here
FACEBOOK_APP_ID=your_app_id
FACEBOOK_APP_SECRET=your_app_secret

2. Accounts Configuration

Create accounts_config.json:

{
  "accounts": {
    "ClientName": {
      "account_id": "123456789",
      "filter": "CampaignNameFilter",
      "geo_filter": "US",
      "benchmark_value": 100,
      "benchmark_display": "CPT < $100",
      "active": true
    }
  }
}

Configuration fields:

  • account_id: Meta Ad Account ID (without act_ prefix)
  • filter: Campaign name filter (optional)
  • geo_filter: Geographic filter like "US" (optional)
  • benchmark_value: CPT threshold for "winning" creatives
  • benchmark_display: Human-readable benchmark description

Usage

Get Hit Rates for Current Month

from scripts.meta_ad_creatives import get_all_hit_rates

data = get_all_hit_rates(month_offset=0)
print(f"Overall hit rate: {data['totals']['hit_rate']}%")
for account in data['accounts']:
    print(f"  {account['account_name']}: {account['hit_rate']}%")

Get Hit Rates for Previous Months

# Last month
data = get_all_hit_rates(month_offset=-1)

# Two months ago
data = get_all_hit_rates(month_offset=-2)

Get All-Time Aggregated Data

data = get_all_hit_rates(all_time=True)

Get Individual Ad Performance

from scripts.meta_ad_creatives import get_individual_ads

# All ads for an account
ads = get_individual_ads(account_name="ClientName", month_key="2026-01")

# Only winning ads
winners = get_individual_ads(account_name="ClientName", hit_only=True)

# Sort by CPT
ads = get_individual_ads(sort_by="cpt")

Monthly Comparison

from scripts.meta_ad_creatives import get_monthly_comparison

# Compare last 3 months
months = get_monthly_comparison(num_months=3)
for month in months:
    print(f"{month['month_label']}: {month['totals']['hit_rate']}%")

Key Metrics

MetricDescription
Total AdsAds created in the period
Ads with SpendAds that received budget
Ads Hitting BenchmarkAds meeting CPT threshold
Hit Rate% of ads meeting benchmark
CPTCost Per Trial (spend / trials)

Hit Rate Calculation

A creative "hits" the benchmark when:

  1. It has spend > $0
  2. It has trials > 0
  3. CPT < benchmark_value (e.g., $100)

Hit Rate = (Ads Hitting Benchmark / Ads with Spend) × 100

Data Storage

The skill stores historical data for trend analysis:

  • Firestore (default for cloud deployments)
  • SQLite (local fallback)

Set USE_FIRESTORE=false to use SQLite locally.

Common Questions This Answers

  • "What's our creative hit rate this month?"
  • "Which creatives are winning for [Client]?"
  • "How does this month compare to last month?"
  • "Show me all ads that hit the benchmark"
  • "What's our all-time hit rate?"
README.md

No README available.

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

  • OpenClaw CLI installed and configured.
  • Language: Markdown
  • License: MIT
  • Topics:

Configuration

Create `accounts_config.json`: ```json { "accounts": { "ClientName": { "account_id": "123456789", "filter": "CampaignNameFilter", "geo_filter": "US", "benchmark_value": 100, "benchmark_display": "CPT < $100", "active": true } } } ``` Configuration fields: - `account_id`: Meta Ad Account ID (without `act_` prefix) - `filter`: Campaign name filter (optional) - `geo_filter`: Geographic filter like "US" (optional) - `benchmark_value`: CPT threshold for "winning" creatives - `benchmark_display`: Human-readable benchmark description

FAQ

How do I install meta-ad-creatives?

Run openclaw add @fortytwode/meta-ad-creatives in your terminal. This installs meta-ad-creatives into your OpenClaw Skills catalog.

Does this skill run locally or in the cloud?

OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.

Where can I verify the source code?

The source repository is available at https://github.com/openclaw/skills/tree/main/skills/fortytwode/meta-ad-creatives. Review commits and README documentation before installing.