# Connecting Google Ads

> How to connect your Google Ads account so spend, performance, and Google-attributed conversions show up in Ordinary reports.

Source: https://help.tryordinary.com/integrations/google

---

> Connecting Google Ads requires **Starter or higher**. Free-tier
> stores see organic + pixel attribution but no paid-ad spend or
> performance.

Google Ads is how you pull Search, Display, YouTube, Shopping,
Discovery, and Performance Max campaign spend + performance into
Ordinary alongside your other paid channels.


## Before you start

- You're on Starter or higher.
- You have **admin or standard access** on the Google Ads account
  you want to connect (read-only access is not sufficient for the
  OAuth flow).
- The Google account you'll OAuth with is signed into the Google
  Ads account. (You may have multiple accounts; pick the one with
  access.)

## Step 1 — start the OAuth flow

1. Open **Settings → Integrations → Google Ads**.
2. Click **Connect Google Ads account**.
3. You'll be redirected to Google to sign in and approve.

Ordinary requests access that is read-only for reporting, plus the
ability to create **draft** ad creatives in your account when you
ask it to. Anything Ordinary creates is a non-serving draft you
review and publish yourself in Google Ads. Ordinary does not serve
or modify live ads, edit campaigns, budgets, bids, or targeting,
upload conversions, manage audiences, or change billing.

## Step 2 — pick an account

After approving, you'll land on a picker showing every Google Ads
customer ID your Google user can see. Select the one that runs ads
for your Shopify store.

If your account is under a Manager (MCC) account, the picker
shows the child accounts directly — pick the one that owns the
campaigns you want reported on.

## Step 3 — wait for first sync

Ordinary immediately kicks off the first ingest:

- **Campaigns + ad groups + ads + keywords** for the last 90 days
- **Performance breakdowns** by device, network placement,
  geographic location, age, gender, parental status, and household
  income range
- **Asset content** for your campaigns (headlines, descriptions,
  image and video creatives)
- **Configuration history** (current state of campaign and ad-group
  budget, status, bid strategy, and targeting)

You can keep using the app — the sync runs in the background. The
Settings → Integrations → Google Ads card shows a progress
indicator. Initial sync typically takes 5–15 minutes depending on
account size.


## After it's connected

- **Campaigns → Google** — see spend, impressions, clicks,
  purchases, ROAS, and CPA at every level (campaign, ad group,
  ad, keyword). Conversion figures count purchase conversion
  actions only — micro-conversion goals (page views, add-to-cart)
  appear on the per-campaign Conversion actions tab instead of
  inflating the headline. See
  [Campaigns — Google ads](https://help.tryordinary.com/features/campaigns-google).
- **Cross-channel attribution** — Google Ads spend feeds the
  unified channel-comparison view alongside Meta, Amazon Ads, and
  organic on the home dashboard.
- **Per-campaign breakdowns** — open any campaign to see device,
  network placement, geographic, age, gender, parental status, and
  household income breakdowns alongside the cohort/LTV and
  conversion-gap analyses.
- **Storefront-attributed orders** — orders that arrive at your
  storefront with a Google click identifier (`gclid`) are joined
  to your Google Ads campaigns so you can compare what Google
  reports against what your store actually recorded.
- **Create ad creatives** — generate ad creatives in Ordinary and
  create them as drafts in your connected account, ready for you to
  review and publish in Google Ads.

## Refresh cadence

- **Today's data** — refreshed frequently throughout the day.
- **Historical (yesterday and earlier)** — refreshed daily for the
  90-day rolling window. Google adjusts conversion attributions
  retroactively for several weeks, so the daily refresh keeps
  late-arriving conversions accurate.
- **On-demand refresh** — click **Refresh** on Settings →
  Integrations → Google Ads to force-pull. Rate-limited to once
  every 15 minutes per store.

## Switching to a different Google Ads account

Reconnect from Settings → Integrations → Google Ads and pick the new
account in the picker. When the newly picked account differs from the
one your existing data came from, Ordinary removes the previous
account's imported ad data and re-imports history from the new account
— the two accounts' numbers are never blended in reports. Reconnecting
the **same** account (for example after a "Needs reauth" prompt) keeps
all existing data.

## Disconnecting

Settings → Integrations → Google Ads → **Disconnect**.

This stops future syncs and removes the stored connection. If Google
Ads is your only connected Google integration, Ordinary's sign-in
access at Google is revoked too. If other Google integrations
(Analytics, Search Console, Sheets) are still connected, they share
one Google sign-in, so that sign-in stays active for them until the
last one is disconnected — you can fully remove Ordinary's access at
any time from
[myaccount.google.com/connections](https://myaccount.google.com/connections).
Previously imported ad data stays in the app, so your past reports
remain visible.

To have the imported Google Ads data removed entirely, contact
support. Connecting a different Google Ads account also removes it
automatically (see "Switching to a different Google Ads account"
above).

## Troubleshooting

- **"Needs reauth"** — token expired or was revoked from your
  Google account. Click Reconnect.
- **Account missing from picker** — your Google user doesn't have
  access to that customer ID, or the customer ID is under an MCC
  you can't see. Ask the account owner to grant your Google user
  access in Google Ads.
- **Zero spend for yesterday** — usually a sync timing issue.
  Google's reporting endpoints sometimes finalize a few hours after
  UTC midnight. The next refresh will pick it up.
- **Numbers don't match Google Ads UI** — expected. See
  [Campaigns — Google ads § Why Google's numbers don't match](https://help.tryordinary.com/features/campaigns-google#why-googles-numbers-dont-match).

## Related articles

- [Campaigns — Google ads](https://help.tryordinary.com/features/campaigns-google)
- [Attribution models explained](https://help.tryordinary.com/concepts/attribution-models)
- [Multi-touch vs. single-touch attribution](https://help.tryordinary.com/concepts/multi-touch-vs-single-touch)
