Connect Google Ads
Connecting Google Ads gives Pulse your ad spend and per-campaign performance, which is what turns revenue into CAC and ROAS. There are no keys to paste: it is one OAuth click.
What the grant actually allows
Worth being precise, because “read-only” is easy to claim and this one deserves a caveat. Google publishes a single OAuth scope for the Ads API,https://www.googleapis.com/auth/adwords, and it is not read-only — there is no read-only variant to request. So the grant is broader than what Pulse does with it.
What Pulse does with it: issues read queries only. It never creates or edits campaigns, never changes budgets or bids, never pauses anything and never spends money. That is a property of the code, not of the scope, so if that distinction matters to you, connect a Google account whose Ads access is itself limited to the accounts you want read — and revoke any time atmyaccount.google.com/permissions.
Meta is different: there the connection uses ads_read, which genuinely cannot write. See Connect Meta Ads.
1. Connect
Open Connections → Google Ads, sign in and approve. From an AI agent, pulse_connect("google_ads") returns a link personal to your app.
Pulse picks up every ad account that login can access in one connection. A separate Google login becomes its own connection with its own accounts; re-approving the same login refreshes the existing one rather than creating a duplicate.
2. Route spend to the right app
One ad account often runs campaigns for several apps, so spend is routed rather than assumed. Connect Google Ads once, then use Connections → Ad spend attribution to point each account or individual campaign at 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.
3. Load history
A new connection pulls the last 3 days and keeps a rolling window fresh. For history, the workspaceowner can run a Backfill of 3–24 months from the Google Ads card. It runs in the background in 30-day chunks and is safe to re-run.
4. Verify
Ask “verify my data sources” in chat, or run pulse_verify from your agent. It reports connector status, last successful sync and the latest computed metrics day.
Related
- Connect Meta Ads.
- Ad spend attribution across several apps.
- Data deletion.