Campaign Performance
01
How It Works
This diagram shows how EyeFly's campaign infrastructure flows from raw Meta data through automated pipelines, into Postgres, through Claude skills, and out to the team via dashboards and alerts. Every column is an action you can take or a question you can answer.
02
Layer 1 — Native Apps
LAYER 1 — NATIVE APPS
Where campaign data originates
Meta Ads
- Runs all paid ad campaigns
- Source of spend, CPL & creative data
- Where ad videos live and launch from
Google Sheets
- Tracks leads transferred per client
- Holds monthly ad spend targets
- Pacing targets set manually
Google Drive
- Creative team uploads new video assets
- Brief templates & brand guides
- Source for creative-to-campaign uploads
03
Layer 2 — Connectors
LAYER 2 — CONNECTORS
Automated pipelines — always running
n8n
- Pulls Meta metrics nightly at 1 AM
- Syncs ad spend totals to Sheets at 2 AM
- Detects CPL anomalies vs 7-day baseline at 2:30 PM
Scheduled Tasks
- Fleet-wide campaign audit every Wed 6 AM
- Rebuilds pacing & scoreboard dashboards daily
- Campaign snapshot diff every afternoon at 2 PM
Meta Ads MCP
- Live API: pause, budget-shift, duplicate ads
- Upload new video creatives in real-time
- Used by Claude skills for all write-operations
All ETL runs unattended. Claude skills handle write-ops on demand.
04
Layer 3 — Data Storage
LAYER 3 — DATA STORAGE
Everything persisted in Postgres
Ad Performance
- Daily spend, CPL, leads per client
- 7-day and 28-day rolling baselines
- Creative-level video performance scores
Campaign Snapshots
- Daily state of every campaign entity
- Tracks budget, status & audience changes
- Powers the anomaly detection diff
Anomaly Log
- Flags CPL spikes >20% vs baseline
- Tracks spend pacing vs monthly target
- Routes to Slack alert or dashboard
Client Health
- Composite: CPL trend + bot QA + tickets
- Updated nightly at 11 PM
- Powers at-risk client detection
05
Layer 4 — Skills
LAYER 4 — SKILLS
Claude intelligence layer — on-demand or scheduled
Campaign Triage
- Scores every client red / yellow / green
- Surfaces top issues before they compound
- Feeds Wed & Fri Ads Review themed days
Campaign Tweaks
- Pauses underperformers via Meta API
- Shifts budget to winning ad sets
- Duplicates top ads to new markets
Creative Brief
- Generates structured briefs for the creative pod
- Based on what's winning in the ad account
- Hook + body + CTA variants ready to film
Weekly Ads Review
- 11-section creative performance HTML report
- Ranked by CPL and lead volume
- One command from Claude Chat
New Launch QA
- 13-point checklist for every new campaign
- Catches naming errors, wrong objectives, missing CAPI
- Runs in under 2 minutes
06
Layer 5 — Frontend
LAYER 5 — FRONTEND
What the team sees and uses
CF Dashboards
- Campaign scoreboard updated every morning
- Winning ads ledger updated at 3 PM daily
- Pacing dashboard updated at 9 AM daily
Slack Alerts
- Fires when CPL spikes above threshold
- Budget pacing warnings mid-month
- P0 alert when campaign goes inactive
Claude Chat
- Ask 'how is [client] doing?' for full report
- Run triage or push tweaks on demand
- Generate creative briefs in 30 seconds
07
Vision
VISION — COMING NEXT
Autonomous Creative Rotation
Winning ads auto-detected → brief generated → new variants uploaded to Meta → underperformers paused. Zero manual steps.