Why Your Google Ads ROAS Is Dropping (And What to Check Before You Cut Spend)
Most ad-spend panic is not an ad problem. It is a measurement problem hiding inside the ad account. Six specific things to check before you pause campaigns or fire your ad agency.
Most ad-spend panic is a measurement problem in disguise
The pattern is consistent. ROAS was 4x. ROAS dropped to 2x. Nobody changed the campaigns, the creative, the audiences, or the budget. Something happened, but the dashboard does not say what.
The instinct is to pause campaigns, change agencies, or rebuild the funnel. In most cases none of that is the right move. The ads are still working. The measurement broke and nobody noticed.
Six specific things to check before you cut spend. Each one is a measurement issue we have seen kill reported ROAS without changing the underlying business. Each one has a fast diagnostic.
Check 1: Is your conversion tracking actually firing?
Half the "Google Ads stopped working" cases we see are conversion events that silently broke. A Shopify theme update, a developer touching the head tag, an app uninstall, a tag manager change. The page still loads, the campaign still runs, but the conversion event no longer fires.
Symptom: cost-per-conversion looks fine in Google Ads, but revenue in GA4 dropped on a specific date you can identify.
Quick check: open Google Ads and GA4 side by side. Pull the last 30 days of conversions in each. If they disagree by more than 10 percent, the tracking is the problem. If they disagree by 30 percent or more, an event almost certainly stopped firing.
How to fix: open Google Tag Assistant or the GA4 DebugView, run a test conversion through the live site, confirm both Google Ads and GA4 receive the event. If only one does, the tag is broken on that platform.
Check 2: Did the privacy or cookie settings change?
Browser updates, iOS updates, a Shopify privacy banner install, or a developer tightening the cookie consent banner can break attribution overnight. The conversion still happened. Google just cannot connect it to the click anymore.
Symptom: ROAS dropped on a specific date you can pinpoint, not as a slow decline.
Quick check: match the date your ROAS dropped against (a) iOS or Android update releases in the same week, (b) any changes to your cookie banner or consent management platform, (c) any privacy app installs on Shopify. If one aligns within a day or two, that is the cause.
How to fix: in most cases you do not undo the privacy change, you adjust the measurement to work with it. Server-side tracking via Conversions API, enhanced conversions, and consent mode v2 each recover some of the attribution lost to client-side blocking.
Check 3: Is your audience actually still your audience?
Google's smart-bidding algorithms need consistent audience signal. If you migrated to Performance Max in the last 60 days, changed campaign types, or significantly shifted the audience pools, the algorithm is still learning. ROAS dips during the learning phase are normal.
Symptom: ROAS dropped after a campaign type change or a major restructure, not for any reason on the measurement side.
Quick check: in Google Ads, look at the campaign learning status. If the campaign is still in "learning" or "limited" status, give it the full 4 to 6 weeks. Smart bidding gets better with data, not worse.
How to fix: resist the urge to keep changing things. Each change resets the learning phase. The fastest path back to stable ROAS is to leave the campaign alone for 30 days and let smart bidding optimize.
Check 4: Are your conversion values actually right?
Many Shopify accounts pass static conversion values to Google Ads (for example, $50 per purchase) instead of dynamic order values. Google Ads optimizes against what you tell it, not what is true. If your average order value is $120 but Google Ads thinks every conversion is worth $50, smart bidding optimizes for the wrong outcome.
Symptom: Google Ads ROAS reported looks healthy but actual store revenue feels flat. The platform is happy, the bank account is not.
Quick check: in Google Ads, open the conversion action settings. Look at the "value" field. If it is a static number, this is the problem. If it says "use the value passed by the page," confirm the page is actually passing the right value (test a real order).
How to fix: implement dynamic conversion values via the Shopify checkout pixel, GTM, or server-side tagging. Smart bidding becomes meaningfully more accurate the day you ship this.
Check 5: Did Meta or another platform start cannibalizing?
Cross-platform attribution gets messy. Both Google Ads and Meta claim the same conversion. Neither shows you the overlap. If Meta scaled in the last 30 days, Google Ads ROAS may look worse without the underlying business actually changing.
Symptom: total platform-reported revenue (Google Ads + Meta + any other platform reporting attributed revenue) is meaningfully higher than your actual store revenue from the same period.
Quick check: add up all platform-reported attributed revenue for the last 30 days. Compare to actual store revenue from Shopify or your accounting system. If the platforms claim 50 percent more than you actually made, attribution overlap is the cause.
How to fix: use GA4 as the source of truth for cross-platform attribution. GA4's data-driven attribution model deduplicates across channels in a way no single platform can. Optimize bids based on GA4-attributed conversions, not platform-attributed conversions.
Check 6: Is the landing page the actual problem?
Sometimes the ads are working and the page stopped converting. Site speed regression, broken form, blocked checkout, theme update that hid the call-to-action below the fold on mobile. Most "ad spend stopped working" diagnostic engagements end here.
Symptom: click-through rate from ads is fine. Cost-per-click is fine. Bounce rate or session duration changed.
Quick check: run PageSpeed Insights on the landing page on mobile. Compare against a screenshot from 3 months ago if you have one. Fill out the form on mobile yourself. Complete a purchase from a fresh browser. Most landing page regressions are visible in 5 minutes of manual testing.
How to fix: revert the most recent theme or app changes that align with the ROAS drop. If you cannot revert, fix forward: prioritize the specific regression (form field broken, image too large, CTA below the fold, checkout step blocked) and ship the fix.
How to actually diagnose this in your account
The six checks above cover roughly 80 percent of the cases we see. The remaining 20 percent are stack-specific edge cases: a CAPI event misconfigured for Shopify Markets, a GTM trigger firing on the wrong page type, a consent banner blocking events for visitors from specific countries, an enhanced conversions setup that double-counts logged-in customers.
We run a cross-platform measurement check (Google Ads, Meta, GA4, and tag manager reviewed as one connected system) as part of our SEO + AEO Optimization engagements. It catches the six issues above plus the stack-specific edge cases. Done-for-you, From $2,500 CAD, in 1 to 3 weeks.
Or run the free Website Scorecard for a fast diagnostic across SEO, AEO, CRO, performance, and mobile. The scorecard does not audit your ad accounts directly, but it catches the landing page issues that most "Google Ads stopped working" cases trace back to.
The honest bottom line
Before you pause campaigns, fire your ad agency, or rebuild the funnel, run the six checks. In our experience, four out of five "Google Ads ROAS dropped" cases are a measurement problem hiding inside the ad account. The ads are doing the work. The numbers are not telling you the truth.
Fixing the measurement is faster, cheaper, and reversible. Pausing campaigns is none of those things.
Want a clear digital marketing strategy?
We'll cut through the noise and tell you exactly where to focus your budget for maximum return.
Book a Free Discovery Call