Quick Answer
Smart Deduplication uses Shopify's unique transaction IDs to prevent Google Ads from counting the same conversion more than once. When multiple tracking methods fire for the same purchase, ScaleUp ensures only one conversion is recorded — giving you accurate ROAS data and reliable Smart Bidding performance.
The Problem: Double-Counted Conversions Inflate Your ROAS
When you run multiple tracking methods simultaneously — a Google Ads pixel, a server-side integration, Google Tag Manager, and possibly a third-party tracking app — each one independently detects and reports the same purchase event. Without deduplication, Google Ads counts the same sale two or three times.
The symptoms are easy to spot if you know where to look: your Google Ads conversion count is significantly higher than your actual Shopify order count, your reported ROAS appears unrealistically high, and your cost-per-acquisition looks artificially low. The numbers feel too good, and they are — they are inflated by duplicate conversion events.
This is not a minor reporting inconvenience. Double-counted conversions directly corrupt Smart Bidding. When Google's algorithm believes a campaign is generating twice as many conversions as it actually is, it makes bidding decisions based on inflated data. It may bid more aggressively on underperforming keywords, allocate budget to campaigns that appear profitable but are not, and set target ROAS thresholds based on phantom conversions.
Silent Data Corruption
Double-counting is particularly dangerous because it makes campaigns look better than they are. You might not investigate a campaign that appears to have a 5x ROAS — but if half those conversions are duplicates, the real ROAS is 2.5x and the campaign may need optimization.
How ScaleUp Solves It
ScaleUp attaches Shopify's unique order ID (transaction ID) to every conversion event sent to Google Ads. This transaction ID is a unique identifier that Shopify assigns to each order — no two orders ever share the same ID, and the same order always has the same ID regardless of how many times it is reported.
When Google Ads receives a conversion event with a transaction ID it has already seen, it automatically discards the duplicate. This happens at Google's end, so it works regardless of how many tracking sources are firing. Whether the same purchase triggers a client-side pixel, a server-side event, and a third-party app simultaneously, Google counts it exactly once.
ScaleUp handles this automatically for every conversion. The app reads the order ID from Shopify's checkout completion event, includes it in the properly formatted transaction_id field that Google requires, and sends it with both the standard conversion tag and the Enhanced Conversion data. There is no configuration needed and no risk of the transaction ID being missing or malformed.
How Google Deduplication Works
Google Ads uses the transaction_id field to identify duplicate conversion events. When two or more conversion events arrive with the same transaction_id for the same conversion action, Google keeps the first event and discards subsequent duplicates. This is a built-in Google Ads feature that ScaleUp activates by consistently including the transaction ID.
Stop double-counting conversions
ScaleUp's transaction ID-based deduplication ensures every conversion is counted exactly once.
Install Free on ShopifyRated 5.0 on Shopify App Store
Technical Details: Transaction ID Deduplication
Transaction ID-based deduplication is straightforward in concept but requires consistent implementation across all tracking sources to work correctly. Here is how ScaleUp ensures reliable deduplication at every stage.
Note
If you are running other tracking methods alongside ScaleUp, make sure they also include the Shopify order ID as the transaction_id in their conversion events. Deduplication only works when all sources use the same transaction ID format. ScaleUp uses Shopify's order ID directly, so any other tracking source should do the same.
Shopify generates a unique order ID
When a customer completes checkout, Shopify assigns a unique order ID (also called order number or transaction ID) to the purchase. This ID is consistent across all Shopify APIs and events — the same order always returns the same ID.
ScaleUp captures the order ID from the checkout event
ScaleUp's Web Pixel receives the checkout_completed event from Shopify, which includes the order ID as a standard field. The app reads this value directly from Shopify's event data, ensuring it matches the order ID in your Shopify admin.
The order ID is included as transaction_id in the conversion event
ScaleUp formats the Google Ads conversion payload with the order ID mapped to the transaction_id parameter. This is the specific field that Google Ads uses for deduplication. The format must match exactly across all sources reporting the same conversion.
Google discards duplicate events
When Google Ads receives multiple conversion events with the same transaction_id for the same conversion action within the deduplication window, it keeps only the first event. Subsequent events with the same ID are silently dropped, preventing double-counting.
Why It Matters: Clean Data Drives Better Decisions
Accurate conversion counts are the foundation of every optimization decision in Google Ads. Smart Bidding strategies like Target ROAS, Target CPA, and Maximize Conversions use your conversion data as their primary input. If that data is inflated by duplicates, every automated decision Google makes is based on a false picture.
Consider a campaign where Smart Bidding sees 100 conversions at a 4x ROAS. It allocates budget aggressively because the returns appear strong. But if 30 of those conversions are duplicates, the real count is 70 conversions at a 2.8x ROAS. The campaign might still be profitable, but it needs a fundamentally different bidding strategy than what Google is applying.
Beyond Smart Bidding, accurate conversion counts affect campaign-level budget allocation, keyword-level bid adjustments, audience targeting decisions, and performance reporting to stakeholders. Every layer of your Google Ads strategy depends on knowing exactly how many conversions each campaign, ad group, and keyword actually generated.
Accurate Smart Bidding
Google's algorithms receive true conversion counts, enabling correct bid calculations for Target ROAS, Target CPA, and Maximize Conversions strategies.
Correct ROAS Reporting
Your reported ROAS reflects actual return on ad spend, not inflated numbers from duplicate conversion events. Budget decisions are based on reality.
Reliable Budget Allocation
Campaign and ad group performance comparisons are meaningful when conversion counts are accurate. You can confidently shift budget to genuinely top-performing campaigns.
Next Steps
If you suspect your Google Ads account has duplicate conversions, compare your Google Ads conversion count against your actual Shopify order count for the same period. A significant discrepancy — especially if Google Ads reports more conversions than Shopify reports orders — is a strong indicator of double-counting.
ScaleUp prevents this problem from the start by including Shopify's order ID as the transaction_id on every conversion event. Install the app, connect your Google Ads account, and every conversion is automatically deduplicated.
Get Accurate Conversion Counts
ScaleUp uses transaction ID-based deduplication to ensure every conversion is counted exactly once. No duplicates, no inflated ROAS, no corrupted Smart Bidding data.
Install Free on ShopifyNo credit card required

Written by Jamie Scott
Founder & CEO, ScaleUp
Jamie specializes in e-commerce conversion tracking, helping Shopify merchants improve their Google Ads performance through accurate data.
Google Ads & Shopify conversion tracking experts
Have questions about this article? Check our FAQ or contact us.
Related Resources
Ready to fix your tracking?
Get accurate Google Ads conversion tracking on Shopify in under 5 minutes.