Connecting Facebook (Meta) Ads lets Setpilot pull your daily ad spend automatically and include it as Marketing cost in the CM3 contribution margin. Once connected, the spend shows up on the dashboard within a few hours and keeps refreshing every 6 hours.
Before you start
Make sure the Facebook user you connect with has access to the ad accounts you want to sync. Setpilot uses the standard Meta Business OAuth flow, so whatever access that user has in Meta Business Manager is what Setpilot will see.
Requirement | Details |
Facebook account | A personal Facebook account linked to Meta Business Manager. |
Role on the ad account | Admin or Advertiser on each ad account you want to sync. |
Permissions granted | ads_read, ads_management, business_management, read_insights. |
Currency | Setpilot converts each ad account currency to your shop currency using daily FX rates. |
Connect your account
Go to Settings → Connections → Facebook / Meta Ads.
Click Connect Facebook. A Meta login window opens.
Log in to Facebook and approve the requested permissions. Setpilot only asks for read access to ads and insights — it cannot create, edit, or pause campaigns.
Pick the ad accounts you want to sync from the list. You can select one or several.
Click Save. Setpilot runs an initial sync for the last 90 days, then refreshes every 6 hours.
What gets synced
Setpilot pulls daily spend totals per ad account. It does not pull individual campaigns, ad sets, or creatives — only the total spend figure that lands in your Marketing cost line.
Field | Source | Where it appears |
Daily spend | Meta Ads Insights API, per ad account, per day | Marketing cost on the dashboard, split by day |
Account currency | Ad account settings | Converted to shop currency using that day FX rate |
Account name | Ad account metadata | Shown in the Marketing breakdown tooltip |
Sync schedule
After the initial backfill, Setpilot re-syncs Facebook spend every 6 hours. The last 3 days are always re-fetched to capture late-arriving attribution updates from Meta. You do not need to press anything — the sync runs in the background.
Disconnect
To stop syncing, go to Settings → Connections → Facebook / Meta Ads and click Disconnect. Historical spend data already pulled stays on your dashboard, but no new data will flow in. You can reconnect at any time — Setpilot will backfill from the disconnect date forward.
Troubleshooting
Symptom | Likely cause | Fix |
No spend appears after connecting | User does not have Advertiser access on the ad account. | Ask a Business Manager admin to grant you Advertiser role, then reconnect. |
Connection says Expired | Meta access tokens expire after 60 days of inactivity or password change. | Click Reconnect and re-approve permissions. |
Some ad accounts missing from the picker | You are not assigned to those ad accounts in Business Manager. | Add the user as Advertiser in Meta Business Settings. |
Spend looks too low | Not all ad accounts were selected during connect. | Disconnect and reconnect, then select every account that runs your store ads. |
Related articles
Marketing costs — how ad spend flows into CM3.
Connecting Google Ads — same pattern, different platform.
Connecting Axon — for merchants using Axon.ai.
