Home Docs Data & Integrations Connect Google Ads

Connect Google Ads

Last updated: August 18, 2026 By Aron Baczoni

Quick Reference

Inputs

A connected Shopify store, and a Google login that can already see the Google Ads accounts you want to bring across (ideally with a read-only role in Google Ads).

Outputs

Daily campaign spend and performance filed against the Paid Search acquisition channel, backfilled roughly six months on the first sync and refreshed at least daily after that.

Outcomes

Turn spend into real CAC, payback and channel LTGP:CAC instead of a blended average, and see unmatched product spend surfaced rather than silently dropped.

Connecting Google Ads is what turns MarginOS from a product-profit tool into a customer-profit tool. Shopify tells MarginOS what you earned. Google Ads tells it what you paid to earn it — and without that second half there is no CAC, no payback period, and no honest answer to whether a channel is funding itself.

The connection takes about a minute: authorise with Google, then choose which Google Ads accounts MarginOS should pull spend from. Nothing syncs until you choose at least one account. That second step is not optional, and it is the one people skip.

Before you start

  • Connect Shopify first. Ad spend on its own cannot produce CAC — it needs the orders and customers to divide into.
  • Sign in with a Google account that can already see the Google Ads accounts you want to bring across. MarginOS shows you exactly what that login can reach; it cannot reach anything more.
  • Because Google grants Ads access at the account level rather than per-permission, we recommend connecting with a Google user who has a read-only role in Google Ads. MarginOS only ever reads reporting data and never changes a campaign, but a read-only role makes that guarantee structural rather than a promise.
  • Do it from your own MarginOS login. When a MarginOS system administrator is viewing your workspace for support, the connect controls are hidden — nobody at MarginOS can bind an ad account to your workspace on your behalf.

How to connect

  1. Open Account Setup and go to the Integrations tab, then open the Google Ads card. The panel is headed Google Ads Configuration.
  2. Click Connect Google Ads. A Google sign-in window opens. Approve the request and the window closes itself.
  3. The panel now reads Connected to GoogleAccess valid until revoked. You are authorised, but no spend is flowing yet.
  4. Look at Available Accounts. Every account your Google login can reach is listed with its account number and marked either Manager Account or Client Account. Click Connect on each one whose spend belongs in your numbers. Choosing a manager (MCC) account also brings in the accounts sitting beneath it, so you rarely need to click through a large hierarchy one row at a time.
  5. Each choice saves immediately and starts the first sync. The account moves up into Active Connections, and the status dot beside that heading turns blue while the pull is running.

There is no API key to generate, paste or store. Authorisation happens inside Google’s own consent flow, so your Google credentials are never handled by MarginOS.

What MarginOS reads from Google Ads

What it reads What it is used for
Daily campaign spend The cost side of every acquisition figure — CAC, payback and MER
Campaign performance (clicks, impressions, conversions) Comparing campaigns against each other inside the Growth Engine
Product-level spend, where the campaign reports it Attributing ad cost down to individual SKUs rather than only to a campaign total
Account name, number, type and status Showing you the account list, and knowing which accounts are eligible to sync at all

MarginOS holds no write access to your campaigns, budgets, bids or creative. The connection exists to report, not to act.

What happens to the spend once it lands

Google Ads spend is filed against the Paid Search acquisition channel, which is how it meets the orders that attribution assigns to that same channel. That pairing — spend on one side, the revenue it bought on the other — is what makes channel LTGP:CAC a real number rather than a blended average.

Two behaviours are worth knowing up front:

  • The first sync reaches back roughly six months, not just to yesterday. Cohort and payback measures are meaningless without history, so the initial pull is deliberately deep and takes longer than routine updates. You do not need to sit and watch it.
  • Later syncs re-pull a recent window rather than only the newest day. Google restates recent spend and conversion figures after the fact, so MarginOS keeps re-reading the near past and lets the corrections land instead of freezing whatever it saw first.

Where Google reports spend against a product MarginOS cannot match to anything in your catalogue, that spend is not discarded and not quietly rounded to zero — it goes to Unmapped Costs where you can see it and resolve it. The campaign-level total still captures the full amount, so an unmatched product never understates your CAC.

After the first pull, connected accounts refresh on their own at least once a day. Sync Now, beside the Active Connections heading, forces an immediate refresh when you do not want to wait.

Reading the connection panel

The dot next to Active Connections is the health of the last sync: green for healthy, blue and pulsing while a sync is running, amber when some accounts succeeded and others did not, red when the last attempt failed. The Last synced timestamp underneath tells you how current the spend behind your margins actually is.

Individual accounts carry their own badges. Synced means the last pull succeeded. Error shows the reason on the row itself. Test Only means Google is treating the account as a test account, which produces no real spend to report.

Example

A brand connects one manager account holding three client accounts: a brand-search account, a shopping account, and a dormant account from a discontinued line. All three come in with one click on the manager.

The first sync brings back roughly six months of daily spend. Suppose it totals £48,000 across the window, against 1,600 first-time customers that attribution assigned to Paid Search. Paid Search CAC lands at £30, and the channel can now be judged against the lifetime gross profit those customers went on to produce rather than against a store-wide blended average that hides it.

The dormant account contributes £0 for most of the window. That is a real, evidenced zero, and MarginOS reports it as such — quite different from an account it could not read, which it would refuse to guess at.

Common questions

Can MarginOS change my campaigns or spend my budget?

No. The connection is used for reporting only: MarginOS reads spend and performance and never writes to your campaigns, budgets or bids. Google grants Ads access at the account level rather than per-permission, which is why we suggest connecting with a Google user who holds a read-only role — it removes the question entirely.

I connected, but my spend is still zero. What went wrong?

Almost certainly nothing went wrong: authorising Google and choosing accounts are two separate steps, and the second one is easy to miss. Reopen the Google Ads panel. If Active Connections says “No active connections”, click Connect on the accounts you want under Available Accounts. Syncing starts the moment you do.

One of my accounts refuses to be selected.

MarginOS declines accounts that cannot produce usable spend and tells you which and why. Manager accounts hold no metrics of their own — only the client accounts beneath them do. Test accounts carry no real spend. Accounts deactivated inside Google Ads cannot be read at all. Re-enable the account in Google Ads first, then select it here.

How often does spend refresh?

At least daily, without you doing anything. Use Sync Now for an immediate refresh — after a big campaign launch, for instance, or when you are checking a figure against Google’s own reporting.

What happens if I disconnect?

Disconnecting removes the authorisation and clears the Google Ads data that came with it straight away — it is not held in reserve. Historical Paid Search spend disappears from your margins along with it, so CAC and the ratios built on it will change. Reconnecting starts a fresh pull rather than restoring what was removed.

Do I need to reconnect periodically?

No. Access stays valid until you or Google revokes it. If Google ever returns you to MarginOS without a usable authorisation, the panel tells you what to do: revoke MarginOS access in your Google Account security settings, then connect again. That sequence is deliberate — it forces Google to issue a fresh authorisation rather than reusing a stale one.

Can I switch which manager account MarginOS logs in through?

Yes, but treat it as starting over rather than editing a setting. Switching the root account clears the Google Ads data gathered under the previous one and resets your account selection, because spend from two different account trees must never be mixed into one history.

Related

About the author

Aron Baczoni

Founder of MarginOS, a Profit & Inventory OS for Shopify DTC brands who live and die by margin. Previously 11 years at Google across Ads and Global Business Operations, building large-scale systems. Now focused on giving DTC operators true profit by product, channel, and customer after COGS, 3PL, shipping, returns, and fees, and on showing exactly how much to trust every number behind those decisions.

Read Aron's story

Get Your Profit & Inventory Command Center

See your real margins in real time, not in spreadsheets.

Get your Profit & Inventory Command Center

Or email sales@marginos.com to see your real margins on your own data.