Daily ad cost from Google Ads, without typing it in
Connect Google Ads and GeoSwap reads what each of your campaigns cost, every day, and adds it to Spend. The Attribution report then shows Spend, Cost / event and ROAS for your Google Ads campaigns next to the conversions GeoSwap records on your website. All Google Ads cost is counted under the Paid search channel.
GeoSwap only reads. It never creates, changes or deletes anything in your Google Ads accounts.
Google is still checking GeoSwap's access to Google Ads (its standard review for this permission). Until it finishes:
GeoSwap starts loading the last 13 weeks right away (the card says "Loading the last 13 weeks…"); the daily sync finishes anything left. The card then shows each account as "Synced" with the date, and "Connected as" with the Google account you used. To add or stop accounts later, click Manage accounts.
| Permission | Why GeoSwap asks |
|---|---|
| Google Ads | To read your accounts and each campaign's daily cost. It's the only permission Google offers for the Google Ads API, and it also allows changes, but GeoSwap only reads: it never creates, changes or deletes anything in your accounts. |
| Your email address and basic sign-in | To show who connected ("Connected as …") and to find your data if you ask us to delete it. |
| What | Details |
|---|---|
| Accounts | For each account you tick: its name, ID, currency and time zone, the manager account you reach it through, and whether it's a test account. Accounts you don't tick aren't stored. |
| Campaigns | Per campaign per day: its ID, name, type and cost, in the account's own currency (converted to your reporting currency in the report). |
| Google-reported conversions | Google's own conversions and conversion value per campaign per day (its Conversions column) are stored with the daily figures and shown as "Google-reported conversions" on Channels with Group by set to Platform: Google's own claim, which differs from GeoSwap's credited conversions by design. |
Cost is matched to the utm_campaign values on your ad clicks. A campaign that matches none is counted under Paid search with no campaign, so the channel's numbers stay right. For automatic matching, copy this line:
utm_source=google&utm_medium=cpc&utm_campaign={_campaign}&utm_id={campaignid}
campaign with the campaign's name as its value. That's the name GeoSwap matches on (it also matches on the campaign ID in utm_id).The Google Ads campaigns table on Integrations shows how each campaign is matched. Editors and admins can change a match or apply a suggestion.
utm_campaign value is matched to a Google Ads campaign, reports show the campaign's name (a name you set yourself in GeoSwap wins).If something goes wrong after Google sends you back, GeoSwap shows one of these messages:
| Message | What it means and what to do |
|---|---|
| Google Ads access wasn't granted. Connect again when you're ready. | You cancelled or declined on Google's screen. Nothing was connected. Click Connect Google Ads again when you're ready. |
| Google didn't grant access to Google Ads. Connect again and keep the Google Ads box ticked. | Google lets you untick individual permissions. Connect again and leave the Google Ads permission ticked: GeoSwap can't read your cost without it. |
| This Google account can't access any Google Ads accounts. Connect with a Google account that can. | The Google account you signed in with has no Google Ads accounts. Sign in with the Google account you use for Google Ads (or one your manager account gives access). |
| That Google sign-in expired or was already used. Connect Google Ads again. | The sign-in took longer than 10 minutes, or the page was reloaded or opened twice. Start again from Integrations. |
| Google couldn't finish the sign-in. Try again, or contact support if it keeps happening. | Google stopped the sign-in, for example because a Google Workspace admin restricts which apps you can use. Try again, ask your Google Workspace admin, or contact support. |
| GeoSwap's Google Ads access isn't approved yet, so your accounts can't be read. Contact support. | A setting on GeoSwap's side. Nothing for you to fix: contact support@geoswap.co. |
| Google Ads is busy right now. Try again in a few minutes. | Google is limiting requests, or GeoSwap's daily allowance of Google Ads lookups is used up. Wait a few minutes and try again; if it still says busy, try again tomorrow. |
| Google didn't respond in time. Try again. | A temporary problem at Google. Connect again. |
| Only an admin of this workspace can connect Google Ads. | Ask a workspace admin to connect it, or to make you an admin. It also shows if you finished the sign-in while signed in to GeoSwap as a different user: start again from the same browser. |
| Google Ads isn't available right now. | The connection is switched off on GeoSwap's side. Nothing for you to fix: try again later, or contact support@geoswap.co if it persists. |
| If you left at Google's "unverified app" screen: connect again, choose Advanced, then "Go to GeoSwap (unsafe)". | Only while Google is still verifying GeoSwap, when you leave its "Google hasn't verified this app" screen or cancel on the consent screen. To continue, connect again, choose Advanced, then "Go to GeoSwap (unsafe)": Google labels it unsafe only because its review isn't finished. |
| Google stopped the sign-in. While Google verifies GeoSwap, it limits who can connect. Contact support@geoswap.co. | Only while Google is still verifying GeoSwap: Google stopped the sign-in, for example because a Google Workspace admin restricts unverified apps. Contact support@geoswap.co. |
| Couldn't connect Google Ads. Try again. | Something else went wrong. Try again; if it keeps happening, contact support@geoswap.co. |
If Google later stops accepting GeoSwap's access (you removed it in your Google account, changed your password, or it went unused for 6 months), the card shows a red notice. Your synced spend stays in your reports. An admin can click Reconnect, or disconnect and choose what to keep.
Everything is in Integrations → Google Ads → Manage accounts (admins):
Reconnecting with a Google account that can't reach some of your syncing accounts asks the same question for just those accounts. You can also email support@geoswap.co from the address you connected with to have the data deleted.