← Vault Index
Source: business/marketing/campaigns/the-build/wip/meta-campaign-setup-guide.md

Meta Campaign Setup Guide

Step-by-step for setting up a Meta ad campaign with ThriveCart checkout. Originally built for CIB lead magnet campaign — examples reference that campaign but steps apply to any Meta + ThriveCart funnel.

Before starting, you need:


Step 1: Confirm Business Manager Access

  1. Go to business.facebook.com
  2. If no account exists → Create Account → "Creating Your Plan" → your business email → fill details
  3. If you have one → confirm your Facebook page appears under Pages in the left sidebar

Step 2: Confirm Ad Account + Payment

  1. In Business Manager → gear icon (Settings) → Ad Accounts (left menu)
  2. If an ad account exists → note the name
  3. If not → Add → Create new → "Practice Builders Ads" → Eastern timezone → USD → Create
  4. Go to Payment Settings → add a credit card

Step 3: Find Your Meta Pixel

The pixel tracks what happens on your website after someone clicks an ad.

  1. Go to business.facebook.com
  2. Click hamburger menu (☰) top left
  3. Under "Data Sources" click Pixels (may say "Datasets")
  4. If you have a pixel → click it → note the Pixel ID (long number)
  5. If not → click Add → name it "Practice Builders Pixel"

Your Pixel ID: 1708795119368065


Step 4: Install the Pixel

The pixel is already baked into every HTML file. When you paste HTML into Convertri, the pixel is included. No need to add it separately in Convertri Custom Scripts.

Pixel events by page:

PageURLPageViewLeadPurchase
Homepagethepracticebuilders.ai
Opt-inthepracticebuilders.ai/cib
CIB Thank-youthepracticebuilders.ai/cib-thank-you
Sales pagethepracticebuilders.ai/the-build
Build Thank-youthepracticebuilders.ai/build-thank-you✓ ($100)
CIB Deliverythepracticebuilders.ai/cib-delivery
Practice Brain Deliverythepracticebuilders.ai/practice-brain-delivery
Quick-Startthepracticebuilders.ai/practice-brain-quick-start
Termsthepracticebuilders.ai/terms

Step 5: Verify the Pixel Works

  1. Install Meta Pixel Helper (Chrome extension) from the Chrome Web Store
  2. Visit each page from the table above
  3. Click the Pixel Helper icon in toolbar
  4. Each page should show green checkmark + "PageView"
  5. cib-thank-you should also show "Lead"
  6. build-thank-you should also show "Purchase" with value $100

If it shows errors → the HTML may need to be re-pasted into Convertri (pixel was added after initial paste).


Step 6: Verify Your Domains in Meta Business Manager

Meta requires domain verification to properly attribute conversion events (Lead, Purchase) back to your ads. Without this, your pixel may fire correctly but Meta won't report the conversions in Ads Manager.

Every domain that has a pixel event firing on it must be verified.

  1. Go to Meta Business Suite → https://business.facebook.com/settings/owned-domains
  2. Click Create a Domain
  3. Enter your domain (e.g., thepracticebuilders.ai)
  4. Select DNS Verification
  5. Copy the TXT record Meta provides
  6. Go to your DNS manager (Convertri if it controls nameservers, or your domain registrar) and add a TXT record:
  1. Back in Meta, click Verify (allow 10-15 minutes for DNS propagation if it doesn't verify immediately)
  2. Repeat for every domain in your funnel that fires pixel events

Domains for this campaign:

DomainPixel EventsVerified?
thepracticebuilders.aiPageView, Lead, Purchase
52aiskills.comPageView, Purchase (OTO)

Check this in Events Manager after verification:

  1. Go to https://business.facebook.com/events_manager
  2. Select your pixel
  3. Confirm events are appearing from all verified domains

Step 6B: Configure ThriveCart Pixel Settings

If your funnel uses ThriveCart for checkout, configure these settings so Meta receives accurate purchase data. Without these, purchase events may not attribute correctly to your ads.

Combined Purchase Events

By default, ThriveCart fires a separate Purchase event for each transaction step (main product, bump, OTO1, OTO2). This inflates your purchase count in Meta — one buyer who takes the full funnel looks like 4 purchases. Fix this so Meta sees one Purchase event per buyer with the total cart value.

  1. In ThriveCart, go to Settings → Tracking & Analytics (or the product's pixel settings)
  2. Find the option to combine purchase events (may be labeled "Send single purchase event" or similar)
  3. Enable it — this sends one Purchase event with the total cart value after the buyer completes the checkout flow
  4. Verify: Make a test purchase through the full funnel. In Meta Events Manager, you should see one Purchase event with the total dollar amount, not separate events per step.

CAPI (Conversions API / Server-Side Tracking)

Browser-based pixel tracking is unreliable — ad blockers, iOS privacy changes, and cookie restrictions all reduce what Meta sees. CAPI sends purchase events server-to-server, bypassing browser limitations.

  1. In ThriveCart, go to Settings → Tracking & Analytics (or the product's pixel settings)
  2. Find the Conversions API or CAPI section
  3. Enter your Meta access token — generate this in Meta Business Suite:
  1. Set the override source URL to the domain your ads point to (e.g., https://52aiskills.com). This tells Meta the purchase came from your ad landing page, not from thrivecart.com.
  2. Verify: After a test purchase, check Events Manager. The Purchase event should show as "Server" or "Browser & Server" in the connection method column, not just "Browser."

Why This Matters

Without these fixesWith these fixes
One buyer = 4 purchase eventsOne buyer = 1 purchase event
Purchase count inflated, ROAS misleadingAccurate buyer count and ROAS
Browser-only tracking, events lost to ad blockersServer-side backup catches missed events
Purchase attributed to thrivecart.com domainPurchase attributed to your ad landing page

Do this before launching any Meta campaign that uses ThriveCart for checkout.


Step 7: Create the Campaign

  1. Go to adsmanager.facebook.com
  2. Click green + Create button
  3. Choose Leads objective
  4. Look for "Create campaign manually" — click it. If you don't see it, Meta may force Advantage+ (see note below).
  5. Campaign name: CIB Lead Magnet — The Build
  6. Budget: $20/day (Campaign budget)
  7. Click Next

Note on Advantage+: Meta may not let you turn off Advantage+ for audience and placements. Use the Controls section to set hard boundaries instead (see Step 7).


Step 8: Set Up the Ad Set

  1. Ad set name: Broad — Professional Services

Conversion:

  1. Conversion location: Website
  2. Conversion event: Lead (from your pixel dropdown — visit cib-thank-you first if Lead doesn't appear)
  3. Cost per result goal: None

Schedule:

  1. Start: Tomorrow at midnight (or your preferred time)
  2. End: April 20, 2026 (event start date)

Audience — Controls (hard boundaries, Advantage+ won't go beyond these):

  1. Location: United States
  2. Minimum age: 25 (Meta's minimum — your audience skews older but this is the floor)
  3. Click "Show more controls" if needed to access age

Audience — Suggest an audience (suggestions for Meta to optimize toward):

  1. Age: 35 - 65+
  2. Gender: All
  3. Detailed targeting — add these as Interests:

Placements:

  1. Advantage+ placements will be on — that's fine
  2. Go to Account controls → Placement controls → toggle on "My business can only advertise on specific placements"
  3. Exclude (check these): Audience Network native, Audience Network rewarded videos, Facebook Marketplace, Messenger Stories, Threads feed
  4. Leave unchecked (keep active): Facebook right column
  5. Important: If this causes a "Target rule label" error at publish, turn the account-level placement control back off. The error comes from a mismatch between account controls and ad creative assets.
  1. Click Next

Step 9: Create the Ads

Getting the Images Right

Ad images are in wip/ad-images/. Each ad has its own standalone HTML file at native 1080x1080 resolution.

To screenshot an ad image:

  1. Open the HTML file in Chrome (e.g., ad-images/ad1-time-sink.html)
  2. Press Ctrl+Shift+I to open DevTools
  3. Press Ctrl+Shift+P to open the command menu
  4. Type "screenshot" → select "Capture full size screenshot"
  5. PNG saves to Downloads — it will be 2160x2160 on a 2x display. That's fine, Meta accepts it.

Vertical images (1080x1920 for Stories/Reels): Each ad also has a -vertical.html version. Same screenshot process.

Image files:

AdSquareVertical
Ad 1 — Time Sinkad1-time-sink.htmlad1-time-sink-vertical.html
Ad 2 — Things Slippingad2-rolling-items.html(create vertical if needed)
Ad 3 — AI Power Userad3-free-ai-skill.html(create vertical if needed)
Ad 4 — Relationship Erosionad4-autopilot.html(create vertical if needed)
Ad 5 — Proposal Prepad5-ugc-quote.html(create vertical if needed)

Creating Each Ad

For the first ad:

  1. Ad name: CIB — Time Sink
  2. Identity: Facebook Page = Kathryn H Brown Creating Your Plan, Instagram = thekathrynbrown
  3. Partnership ad: Off
  4. Upload square image → upload vertical image for vertical placement
  5. Crop screen: verify all three slots (square, vertical, horizontal) look correct

Text — turn off ALL Advantage+ text generation:

  1. Under "Advantage+ creative text generation" for primary text → uncheck all, toggle off "Tailor variations to personas"
  2. Under "Advantage+ creative text generation" for headlines → uncheck all

Enhancements — turn off everything:

  1. Translate text: Off
  2. Media enhancements: Off
  3. Essential enhancements: Off (optional but recommended — prevents Meta from auto-cropping/adjusting your designed images)
  4. AI image generation: Can't uncheck but won't generate if it says "No AI-generated images available"

Destination:

  1. Website URL: https://thepracticebuilders.ai/cib

Ad copy for all 5 ads (from ad-creative-cib-batch-001.md):

AdPrimary Text HookHeadline
1 — Time Sink"Twenty minutes of scrolling through email threads before a client call..."Free AI Skill — Client Intelligence Brief
2 — Things Slipping"Three things slipped between client emails last month..."Free AI Skill — Client Intelligence Brief
3 — AI Power User"You're using AI for content and summaries..."Client Intelligence Brief — Free
4 — Relationship Erosion"There's a client on your roster right now..."Free AI Skill for Practice Owners
5 — Proposal Prep"Before the call I paste the last few emails into my AI tool..."Free — Client Intelligence Brief

Description (same for all): Prep for any client call in 2 minutes. Works with any large language model.

CTA button: Learn More

Website URL (same for all): https://thepracticebuilders.ai/cib

Per-ad cleanup (do this on every ad):

Duplicating Ads

Fastest method: set up Ad 1 completely, publish or save as draft, then duplicate it 4 times. Each duplicate keeps all settings — just swap the image and primary text.


Step 10: Pre-Launch Funnel Test

Do this BEFORE publishing the campaign. Click through every step as a real user:

StepWhat to TestURLPass?
1Opt-in form loads, submit with test emailthepracticebuilders.ai/cib
2Redirect lands on thank-you pagethepracticebuilders.ai/cib-thank-you
3Thank-you page shows $50 offer with ThriveCart coupon linkthepracticebuilders.ai/cib-thank-you
4CIB delivery email arrives in inboxCheck email
5Delivery email links work — skill file downloadsthepracticebuilders.ai/cib-delivery
6Sales page loads, all CTAs go to ThriveCart at $100thepracticebuilders.ai/the-build
7ThriveCart checkout processes paymentkathrynhbrown.thrivecart.com/build-checkout/
8ThriveCart redirects to post-purchase thank-youthepracticebuilders.ai/build-thank-you
9Build delivery email arrivesCheck email
10Practice Brain delivery page loads, skill downloadsthepracticebuilders.ai/practice-brain-delivery
11Quick-start guide loadsthepracticebuilders.ai/practice-brain-quick-start
12Terms page loadsthepracticebuilders.ai/terms

Pixel verification (use Meta Pixel Helper Chrome extension):

PageExpected Events
All pagesPageView (green check)
cib-thank-youPageView + Lead
build-thank-youPageView + Purchase ($100)

Step 11: Pre-Publish Checklist

Before hitting Publish:


Step 12: After Publishing

Immediately after publish:

Adding remaining ads:

First 24 hours after approved:

MetricGoodAction if bad
ImpressionsHundreds+If zero → still in review (wait 24 hrs) or rejected
CTR (link clicks)Above 1%Below 0.5% → hook isn't landing, pause bottom performers
CPL (cost per lead)$3-8 per emailAbove $12 → pause and review landing page
Ad rejectionsNoneRead rejection reason — usually personal attributes or policy

After 48-72 hours:


Troubleshooting

"Target rule label must refer to asset label" → This happens when account-level placement controls conflict with ad creative. Fix: go to Placements → Account controls → turn off "My business can only advertise on specific placements." The ad-set level Advantage+ will still exclude junk placements based on performance.

"Ad rejected" → Read the specific violation. Common: personal attributes ("Are you..."), unrealistic outcomes, trademarks. Our ads were written to avoid these. Appeal or edit the flagged line.

"No impressions" → Ad is likely in review (up to 24 hours). Check status column. "In Review" = wait. "Rejected" = see above.

"Pixel not firing" → Re-check Pixel Helper on the specific page. The pixel is in the HTML — if it's not showing, re-paste the HTML from the latest version in the repo.

"Lead event not in dropdown" → Visit thepracticebuilders.ai/cib-thank-you yourself first so the pixel fires the Lead event. Then refresh the Ads Manager dropdown.

"Spending too fast" → $20/day is the cap. If it spends by noon, that's fine — the audience is responding. Reduce to $10/day if you want to slow down.

"WhatsApp number required" → Check if Multi-advertiser ads or a WhatsApp CTA got auto-enabled. Uncheck them.

"Images too small" → Use the standalone HTML files in ad-images/. Open in Chrome, Ctrl+Shift+I → Ctrl+Shift+P → type "screenshot" → "Capture full size screenshot." On a 2x display this produces 2160x2160 which exceeds Meta's 1080 minimum.


Quick Reference

ItemValue
CampaignCIB Lead Magnet — The Build
ObjectiveLeads
Budget$20/day
StartApril 8, 2026 (midnight)
EndApril 20, 2026
Landing pagethepracticebuilders.ai/cib
Audience controlsUS, age 25+
Audience suggestions35-65+, accounting/consulting/financial interests
Ads5 variations, 1 ad set
Pixel ID1708795119368065
Pixel eventsLead on cib-thank-you, Purchase on build-thank-you
ThriveCart ($100)kathrynhbrown.thrivecart.com/build-checkout/
ThriveCart ($50 coupon)kathrynhbrown.thrivecart.com/build-checkout/?coupon=TBA202650

Built by Kathryn Brown — Practice Builders