Skip to content
SourceLoop
Meta Ads

Meta Ads Conversion Tracking & Attribution Setup Guide

Connect Facebook and Instagram Ads to push real conversions back to your Meta Pixel via the Conversions API. Multi ad-account support, automatic Lead Ads capture.

On this page
  1. Why connect Meta Ads to SourceLoop?
  2. Before you start
  3. Step 1: Open the Ad Platforms page
  4. Step 2: Authorise SourceLoop on Meta
  5. Step 3: Pick the Meta ad account
  6. Step 4: Add your Pixel ID and CAPI token
  7. What gets synced
  8. What’s next

Connecting Meta Ads to SourceLoop opens up the full conversion loop for Facebook and Instagram campaigns. Every time a tracked lead converts on your site (form submission, meeting booked, payment received), SourceLoop sends that conversion back to Meta via the Conversions API. The bidding algorithms train on real revenue instead of relying only on browser-side pixel events that get blocked by privacy settings.

This article covers the OAuth connect flow only. After connecting, see:

Why connect Meta Ads to SourceLoop?

The Meta Pixel that fires in browsers covers maybe 60% of conversions on a good day. iOS tracking restrictions, ad blockers, third-party cookie restrictions, and consent banners eat the rest. The Conversions API closes that gap by sending events server-side from your backend (in this case, SourceLoop) instead of the browser.

What SourceLoop adds:

  • Server-side conversion push via the Conversions API, immune to browser-side blocking
  • Click ID matching using fbc (click cookie) and fbp (browser cookie) plus hashed email and phone
  • Revenue values sent on every conversion when payment integrations are connected
  • Event-level dedup so server-side and browser-side reporting of the same conversion don’t double-count
  • Lead Ads capture for Facebook and Instagram Lead Ads (with the right scopes during connect)
  • Multi-touch attribution within SourceLoop, while feeding Meta the conversion signals it needs for tROAS and CAPI-driven bidding

Before you start

You’ll need:

  • A SourceLoop workspace with the tracking pixel installed
  • A Meta Business Manager account that owns the ad accounts you want to connect
  • A Meta user with Admin access on the Business
  • An existing Meta Pixel (or Dataset) attached to the ad account, you’ll need its Pixel ID in the next article
  • Admin or Owner role in SourceLoop (Editors can’t add integrations)

Step 1: Open the Ad Platforms page

  1. Sign in to SourceLoop.
  2. Click Setup in the left sidebar.
  3. Click the Ad Platforms tab.
  4. Scroll to the Meta Ads card and click Connect.

You’ll be redirected to Meta’s OAuth consent screen on facebook.com.

Step 2: Authorise SourceLoop on Meta

  1. Sign in to Facebook with the user that has Admin access on your Business Manager.
  2. Review the scopes SourceLoop is requesting (ads management, ads insights, Business enumeration, plus Pages scopes for Lead Ads capture).
  3. Pick which Business and ad accounts SourceLoop should access. Meta lets you scope the OAuth grant to a subset; uncheck anything SourceLoop shouldn’t see.
  4. Click Continue.

Meta redirects you back to SourceLoop with a short-lived authorization code, which SourceLoop exchanges for a long-lived access token (good for 60 days). The token is stored encrypted.

Step 3: Pick the Meta ad account

If your Meta user has access to more than one ad account (common for agencies and teams), SourceLoop shows a picker with every account, including currency and timezone.

  1. Find the ad account you want to connect.
  2. Click Connect this account.

SourceLoop creates a connection for that specific ad account. The Meta Ads card flips to Connected with the account name and Account ID.

Step 4: Add your Pixel ID and CAPI token

To actually push conversions, SourceLoop needs two pieces of information that only you can see on Meta’s side: your Pixel ID and an access token that’s authorised to write to that Pixel.

The full walk-through of how to find each one is in Configure Meta Conversions API sync. Short version:

  1. In SourceLoop’s Meta drawer, find the CAPI configuration section.
  2. Paste your Pixel ID (visible in Meta Events Manager).
  3. Paste your System User Access Token with ads_management permission for that Pixel.
  4. Click Save.

The connection status flips to Active, and the daily Insights sync + the 2-minute conversion-push cycle both start running.

What gets synced

Once connected, SourceLoop runs two flows automatically:

PULL (Insights sync, daily at 05:00 UTC):

  • Campaign, ad set, and ad hierarchy
  • Daily spend, impressions, clicks, reach, and frequency per level
  • 14-day rolling re-sync to catch Meta’s late attribution
  • Refreshed in SourceLoop dashboards within minutes of each sync run

PUSH (Conversions API, every 2 minutes):

  • Every SourceLoop conversion where the visitor’s session carries an fbc cookie, an fbp cookie, or a hashed email / phone that matches a Meta user
  • Conversion value (currency) and currency code when configured
  • Stable event IDs for dedup against any browser-side pixel events fired on the same action
  • Event source URL (the landing page where the conversion happened)

What’s next

Frequently asked questions

  1. Do I need a Meta Business Manager account?

    Yes. SourceLoop connects to ad accounts owned by your Meta Business, so a Business Manager account is the entry point. If you have a personal ad account that hasn't been claimed by a Business yet, claim it first at business.facebook.com.

  2. Which ad accounts can I connect?

    Every active ad account your Meta user has access to. After OAuth, SourceLoop shows the list, currency and timezone included, and you pick one per connection. Repeat the flow to connect multiple accounts.

  3. What's the difference between my Pixel ID and the System User Access Token?

    The Pixel ID is the public identifier of your Meta Pixel (or Dataset) where events should be reported. The System User Access Token is the credential SourceLoop uses to call the Conversions API against that Pixel. You enter both in the Meta drawer after the initial OAuth connection. We walk through finding each one in the Configure article.

  4. My Meta token expires every 60 days, do I need to reconnect manually?

    SourceLoop monitors token health and emails you a reminder when the token is approaching expiry. If a Long-Lived Access Token is in use, SourceLoop renews it automatically when it's still valid. If your Pixel uses a System User token (recommended for stability), those don't expire at all.

  5. Does this work for Instagram Ads too?

    Yes. Meta Ads is the unified surface for both Facebook and Instagram placements. Conversions captured by SourceLoop are reported with `action_source = 'website'` to the Conversions API and Meta routes them to whichever campaign and placement drove the click.

  6. What scopes does SourceLoop request from Meta?

    The required scopes are `ads_management` (push conversions via Conversions API), `ads_read` (pull spend and impressions), `business_management` (enumerate your ad accounts), plus four Page-related scopes used only if you also enable Lead Ads capture, `pages_show_list`, `pages_manage_metadata`, `pages_read_engagement`, `leads_retrieval`. We never ask for personal Facebook content like messages or friends.

  7. Can I sync more than one Meta ad account into the same SourceLoop workspace?

    Yes. Each ad account is a separate connection. Repeat the Connect Meta Ads flow once per account; they sync and push conversions independently.

Track every conversion to its true source

Capture and send full attribution data from every signup, lead, booking, and sale to your CRM and ad platforms, so you know exactly what's driving revenue.

Without SourceLoop

Untagged

Kayden Floyd

kayden@abc.com

  • SourceUnknown
  • MediumUnknown
  • CampaignUnknown
  • Landing pageUnknown
Journey
No touchpoints captured

With SourceLoop

Auto-tagged

Kayden Floyd

kayden@abc.com · Acme Co.

  • Channel Paid Social
  • CampaignFree_demo
  • Landing page/pricing
Journey
Synced to HubSpot Google Ads Meta