Meta Ads — Setup + Creative Flywheel
Pixel + Conversion API
- Pixel on site via GTM (browser events)
- CAPI via server endpoint (FastAPI or Vercel function) for deduped server events
- Deduplication key:
event_idsent on both browser + server - Events to fire: PageView, ViewContent, Lead (form submit), CompleteRegistration (booked call), Purchase (closed deal)
Iron Funnels Integration
Astro perspective-funnel passes UTMs through as GHL custom fields:
utm_source,utm_campaign,utm_adset,utm_ad,fbclid,gclidMaps to GHL contact custom fields so attribution survives into the CRM.
Ad Library Scraping
- Meta Ads Library API (official, limited) + Amplify or Foreplay (paid, richer)
- Filter: competitor ads running > 30 days = proven winners
- Download creative, strip branding, log to Notion DB
Mark Builds Brands Flywheel
- Find 5-10 longest-running competitor ads in vertical
- Duplicate each as a concept (not a swipe — rebuild the hook/angle)
- Ad set minimum spend: 1× target CPA × 7 days
- Example: $29 CPA target → $203/wk minimum per ad set
- Measure incremental ROAS (Meta experiments or GeoLift), not last-click
- Kill losers at day 7, iterate winners with 3 new variations
Creative Production
- Seedance 2 — video gen for UGC-style ads
- Nano Banana — image gen (fast, cheap)
- Higgsfield — motion/cinematic b-roll
- CapCut Dreamina — script → avatar video
- Prefer real UGC > AI when budget allows; AI for concept validation