Connect Meta Ads
Connecting Meta Ads gives Pulse your ad spend and per-campaign performance, which is what turns revenue numbers into CAC and ROAS. There are no keys to paste: it is one OAuth click.
The connection is genuinely read-only, not read-only by convention. Pulse requests Meta’sads_read scope — the insights-only permission. It carries no ability to create or edit campaigns, change budgets, pause anything or spend money, so even a compromised token could not touch your account.
1. Connect
Open Connections → Meta, sign in and approve. You can also start the flow from an AI agent: pulse_connect("meta")returns a link personal to your app.
Pulse picks up every ad account that login can access in a single connection — you do not connect accounts one at a time.
2. Re-authorizing, and multiple logins
Re-approving the same login later just refreshes the token on the existing connection, and reactivates it if it had been disconnected. You will not end up with duplicates.
A genuinely separate ad login — a different business, a different Facebook user — is a different thing: connect it too and it becomes its own connection alongside the first, with its own accounts.
3. Route spend to the right app
Revenue and events are naturally per-app. Ad spend is not: one ad account often runs campaigns for several apps. Connect Meta once, then use Connections → Ad spend attribution to send each account or individual campaign to a specific app, or to ignore a dead account. Resolution order is campaign → account → connection default.
Changing a mapping moves already-synced spend and recomputes the affected apps’ metrics — no reconnect, no re-backfill. Only campaigns with spend in the last 90 days are listed, since there is nothing to attribute otherwise.
4. Load history
A new connection pulls the last 3 days and then keeps a rolling window fresh. For history, the workspace owner can run a Backfill of 3–24 months from the Meta card. It runs in the background in 30-day chunks and is safe to re-run.
5. Verify, and revoking
Ask “verify my data sources” in chat or run pulse_verify. To revoke, remove the connection in Pulse, or remove Pulse from your Meta account’s Business Integrations — seedata deletion for removing the data too.
Related
- Connect Google Ads.
- Ad spend attribution across several apps.