If you run Google Ads for five Shopify stores, you need clean product data going out and reliable money data coming back. Most agencies buy that backwards: they see an integrates with Shopify badge, watch a two-minute login demo, and assume the hard part is handled.

I made that mistake when I managed stores by hand. A login button plus a product feed is not the integration that matters. You need three data loops: feed hygiene that keeps SKUs eligible, conversion values that account for margin, and order-level revenue truth that matches what Shopify banked. Miss one and Smart Bidding can optimize the wrong number. Your logo on the report just puts your name on it.

This is the checklist I wish a vendor had handed me before I signed. It covers what has to move between Shopify, Merchant Center and Google Ads; what white-label has to include for an agency; the setup order for a new store; and how to check the first 30 days. If you run one store for yourself, skip the white-label and vendor sections. If you run client stores, read in order.

What does “integrates with Shopify” leave out?

On a demo, the integration is a button. Click, approve permissions, products appear in Merchant Center, done. I have onboarded stores where that was the entire test. Then week two arrives. Shopify’s native Google & YouTube app sends purchases server-side but leaves refunds, subscriptions, checkout steps and add-to-cart to browser tracking or unsent, and it does not stitch attribution back to campaign. The feed looks connected while ROAS and Smart Bidding rest on a partial view of what sold.

For an agency, that problem compounds. One store with dirty refund handling is annoying. Eight stores with the same hole means eight bidding algorithms learning that a returned $180 jacket was a win. That is why I rank vendors by the data loop, not the dashboard. If a platform cannot explain its handling of refunds, discounts and margin before showing me a white-label report template, I end the call early. The logo slot is worthless if the numbers underneath it lie.

Which three data flows decide whether the integration works?

Strip away the sales deck and a Shopify-to-Google Ads connection has three pipes: product data going to Merchant Center, money data going into bidding, and order truth reconciling Google’s reported results with Shopify’s. A tool that owns only one leaves the agency doing the cleanup.

1. Does the product feed keep every eligible SKU eligible?

Feed work is unglamorous. It also decides what gets to show up at all. The failures I keep seeing on Shopify stores are a blank barcode field that surfaces as a missing or invalid GTIN, a feed price that does not match the page, markup and checkout, and availability that flips because the continue-selling setting was never mapped. Google checks feed values against the landing page. It will disapprove a product rather than fix it for you.

What the deck calls feed sync, I call staying eligible. The mapping is specific: variant ID becomes item id, barcode per variant becomes gtin, vendor becomes brand, and price must match across page, markup and checkout. Enter real 8-, 12-, 13- or 14-digit GTINs per variant. Never invent a number to clear a warning. For images, note the 500 × 500 px minimum enforced from 31 January 2027.

If you manage multiple clients, settle ownership during onboarding: multi-client Merchant Center accounts cannot be connected directly through the Google & YouTube app. Do not wait until the feed is broken to work out which client owns which account. I go deeper on the checks in my Shopping feed optimization guide. Start with eligibility, not campaign structure.

2. Do conversion values reflect margin, not just revenue?

This is where a tidy Shopify setup can quietly lose money. Consider low-margin shoes that need 500% ROAS to break even and high-margin socks that need 250%. Average them into one 375% target and you can lose money on shoe sales while starving the socks. Margin custom labels help structure the feed, but they do not solve what happens after a click: Google’s product reporting follows what was clicked, not necessarily what was bought.

In one 14-day test on a kids’ smartwatch SKU with 91 transactions, 55% of buyers bought something other than the clicked product, 30% bought from another category, and 10% bought multi-product baskets. If the value driving bids assumes the clicked product was the whole order, it misses the actual basket.

The aim is to send price minus discounts, COGS, shipping and fees as the conversion value, then bid to profit instead of revenue. That is profit tracking for POAS rather than ROAS. Productized tracking such as Littledata’s Profit Signal reports net revenue alongside order value so you can optimize on margin, not volume. Alternatively, Google Ads can report gross profit when you add COGS in Merchant Center and report conversions with cart data; that gross-profit figure is attributed revenue minus COGS, not the fuller calculation that also subtracts shipping and fees. Know which number you are looking at before you call it profit.

Do not flip the primary bidding target overnight. The safer sequence is to import profit as a secondary conversion action, collect 30 days of data, translate the current ROAS target to its POAS equivalent, then shift gradually over about 30 days while watching daily spend. Measure the new value before asking bids to follow it.

3. Do Shopify orders reconcile with Google-reported conversions?

Even with a clean feed and margin-aware values, you still have to ask every month whether Google’s reported results line up with what Shopify banked. App switches make this particularly easy to get wrong. GA4 deduplicates purchases that share a transaction_id. Google Ads deduplicates within a single conversion action; if a second app creates another action, both can count unless one is secondary.

I have seen duplicate purchase actions inflate conversion value by 30% for weeks before anyone noticed. The report looked healthy. My rule is simple: one primary purchase action per store, refunds accounted for, and Shopify net revenue reconciled weekly against the revenue measure, not a profit value that deliberately subtracts costs. The GA4 attribution changes I break down here can also explain drift between the systems.

Claymation Shopify order receipt arguing with a Google Ads report over mismatched revenue

If that reconciliation sounds like work you do not want to repeat across ten clients, that is the point. Automation worth your logo should deduplicate by transaction, account for refunded value and log what changed. Ask the vendor to show you how it checks Google-reported value against Shopify net revenue over 30 days. If it shows you a pretty ROAS chart instead, walk away. Buy the data loop, not the login button.

Branding is the easy part, and vendors love to start there: your logo on a report, your domain on an email, a dashboard your client may never open. groas gets that part right. Its reports carry your branding, and its strategist stays behind you rather than stepping in front of the client. But a branded report is useful only if you can explain the numbers beneath it.

Ask whether the report exposes feed disapprovals, refund handling, value-rule changes and the reasoning behind account actions. White-label should preserve accountability, not hide it. A report that conceals those details is your logo on someone else’s guesswork.

Settle account ownership before connecting the first store. You or the client should own the Google Ads account, Merchant Center and GA4 property, with a written non-solicit and a documented offboarding path. Otherwise, a departing client can lose access to its own history.

Then ask about the fee. A PPC wholesale model of 10–15% of spend with a $300–$500 floor, or $500–$2,000 flat per account, can be 40–60% of retail with a $1,000–$3,000 partner minimum. I prefer flat pricing because percentage-of-spend fees punish growth. Say a store scales from $20,000 to $60,000 a month. The work did not necessarily triple. Why should the fee?

groas charges a flat $299 a month per client account, per service, with a five-account minimum; it is month to month and has a seven-day money-back guarantee. There is no cut of spend or long-term lock-in, and client assets stay portable. Check ownership and offboarding before discussing report colours.

How do I set up a new Shopify client without paying to relearn the basics?

I use the same order because it prevents rework: feed first, money second, landing-page match third, campaigns last. Build campaigns before those inputs are clean and you pay to teach Smart Bidding the wrong lesson, then pay again to unteach it. I cover the store-owner version in my Shopify setup and scaling guide. For client work, use these four steps.

  1. Connect Merchant Center and audit the feed. Claim the domain, link Shopify and pull diagnostics before touching Google Ads. Fix GTINs, price mismatches and availability first. Then build custom_label_0 for margin tier, _1 for performance and _2 for seasonality. Use Merchant Center feed rules to assign them so new variants inherit the right tier.
  2. Configure conversion tracking and value rules. Check for duplicate purchase actions and account for refunds. Set up enhanced conversions. Import profit as a secondary action first, keep a revenue measure for reconciliation and reporting, and follow the gradual transition above before making profit the value that drives bids. Do not describe a secondary profit action as profit bidding while revenue is still primary.
  3. Match landing pages to the feed and query. Send hero SKUs to product pages, categories to collection pages and conversational queries to pages that answer the qualifier. I used to tell clients collection pages were fine for everything. I was wrong. If the feed’s title, price and image do not match the landing page, you can lose the click or risk a disapproval.
  4. Structure campaigns by margin and intent. The setup described in this Shopping campaign structure puts Standard Shopping on High priority for the top 10–20 hero SKUs at item-ID level, alongside brand defense and clearance, while PMax handles full-catalog scale. Keep Standard and PMax separated with the custom labels and tier-appropriate targets rather than one account-wide ROAS. The same guide notes that 74–97% of PMax spend goes to Shopping placements; without brand exclusions, PMax can compete against your other campaigns.

Do not skip the feed and value checks to get campaigns live sooner. A faster launch on bad inputs is not a head start.

What should I verify in the first 30 days?

Do not trust the ROAS column until you know what it measures. In week one, I pull Shopify net revenue after discounts and refunds and compare it with Google’s revenue conversion value for the same date range. Profit is a separate measure; it should be lower by design. If the revenue gap exceeds 5–10%, I check the tracking before touching targets or budgets.

The usual culprits are familiar: a duplicate purchase action left by an old app, refunds that never reach the numbers, or a profit action still marked secondary while someone assumes it drives bids. Fix the definition of the value first. Reconciliation is the verification; target changes can wait.

Watch for these signs that automation is optimizing the wrong number:

  • Spend shifts toward low-margin hero SKUs while profit flattens.
  • Google conversion value climbs but Shopify payouts do not.
  • PMax takes brand queries that previously converted through Standard Shopping.
  • Revenue rises in custom columns while margin falls.

When I see those signs in the first 30 days, I freeze target changes, recheck which conversion action is primary and confirm that feed labels still separate margin tiers. A vendor worth reselling should surface the drift and log bid, budget and value-rule changes with reasoning. It should not bury them in a weekly PDF.

What should I ask on the vendor demo?

Take these five questions to every demo. Ask for screens and logs, not promises, and do not let the rep jump straight to reporting templates.

  1. Show me an order where a refund reduced the value used for reporting or bidding. What happened, and when?
  2. Show me the value bids use after COGS, discounts and fees. Is it profit or merely revenue with a new label?
  3. Show me how you compare Shopify net revenue with Google-reported revenue over 30 days, and explain any gap.
  4. Who owns Google Ads, Merchant Center and GA4 if we leave? Show me the offboarding process in writing.
  5. What is the flat per-client fee, and which work stays with my team?

A vendor that answers with the relevant records passes the first test. One that buries the data answers in a follow-up email fails it. Skip the dashboard tour until you know what the dashboard is reporting.

What is the first thing to do today?

A white-label badge without feed hygiene, margin-aware values and order truth is a reporting skin with your name on it. The platform worth reselling keeps SKUs eligible, moves the right value into bidding, reconciles results with Shopify and records what changed. That is why I point agencies to groas for agencies: it builds or takes over Search Ads, works on bids, keywords and budgets around the clock, and sends weekly reports under your brand while the strategist stays behind you. Flat pricing and portable assets also mean no percentage-of-spend tax when a store scales.

Today, pull Merchant Center diagnostics and compare the last 30 days of Shopify net revenue with Google’s revenue conversion value. If the gap is over 10%, fix the loop before you buy any logo.