Value Instability
Your Google Ads account has conversion actions in the same category where average values swing by more than 10x. Either the categories are mixing genuinely different products, or one of the actions is sending the wrong number. Target ROAS and value-based bidding are running on values you cannot trust.
Why It Matters
Average conversion value should cluster within a category. All "purchase" actions on the same site should sit within a reasonable range of each other, because the underlying basket sizes do. When one purchase action averages $12 and another in the same category averages $640, three things might be true: a tag is passing cents instead of dollars (the classic 100x error), a tag is passing a placeholder value like 1 or 0 while another tag passes real revenue, or currency is being sent without a `currency_code` and Google Ads is treating EUR as USD silently. The consequence is downstream and quiet. Target ROAS bidding optimizes against the value each action reports. If half your purchase actions are off by 100x in either direction, tROAS is chasing a fictional revenue surface and the campaign will either starve (under-reported value) or overspend (over-reported value). Reporting suffers the same way: the revenue column in Google Ads diverges from the commerce backend, and finance reconciliation breaks once a month forever. Test transactions left in production are another common cause. Someone runs a $0.01 test purchase, or a $9,999 staging order, and never excludes the test action from production reporting.
How To Fix It
- List the conversion actions in the flagged category with their average values.
- For each outlier, trace the value parameter from the site dataLayer through GTM and into the Google Ads tag. Confirm units (dollars vs cents), confirm currency, confirm whether the value is dynamic or hardcoded.
- Reconcile three recent real orders against the value Google Ads received for the same transactions.
- Fix tag-level value bugs at the source rather than overriding in Google Ads.
- Exclude or rename test-environment actions so they cannot pollute production reporting.
Example
Category: purchase
Action A average value: $8.40
Action B average value: $612.00
Ratio: 73x. One of these is wrong.This Google Ads account has conversion actions within a single category where average conversion value varies by more than 10x. Per Google Ads conversion value documentation, value-based bidding strategies such as Target ROAS optimize directly against the value each conversion action reports. Variance this large inside one category typically indicates a tag passing cents while another passes dollars (the 100x error), a hardcoded placeholder value (1 or 0) running alongside a dynamic revenue value, missing currency parameters causing silent currency mismatches, or a test-environment action leaking into production reporting. The downstream effect is a Target ROAS strategy optimizing against a revenue surface that does not exist, with the campaign either starving on under-reported value or overspending on over-reported value. Fix: trace the value parameter from dataLayer through GTM into the Google Ads tag, confirm units and currency, reconcile three recent orders against the commerce backend, and exclude test-environment actions from production goals. Source: support.google.com/google-ads/answer/13064107.
Drop this paragraph into your client deliverable. Sources back to the canonical platform documentation linked below.
References
Audit your own files for this check
AdLint runs this check (and 177 others) against your GTM, Google Ads, Meta, TikTok, LinkedIn, Pinterest, Twitter/X, and Snapchat exports. Everything stays in your browser. No uploads, no accounts.
Run a free audit