Are Your Ads Counting the Same Purchase Twice?

Separate duplicate purchase events from overlapping ad attribution. Use a test-order checklist to check IDs, values, conversion actions, and reporting periods.
Laptop beside printed performance reports used to review ecommerce conversion tracking.

If your ad dashboards claim more purchases than your store recorded, start by separating two problems: the same purchase being recorded more than once inside a system, and different platforms taking credit for the same order. They require different fixes.

Do not turn off a tag just because the totals disagree. First establish which order, event, and reporting definition you are comparing.

Follow one authorized test order

Arrange a test with the store owner and whoever maintains tracking. Record a non-sensitive order reference, timestamp and time zone, currency, expected value, and the checkout path used. Follow your normal test-order and refund process; avoid placing an accidental real order.

Then trace that purchase through the systems that are supposed to receive it. The aim is to understand the implementation before changing it.

Check What to record What a discrepancy suggests
Purchase trigger The action that sends the event A reload or repeated callback may send it again
Identifier Transaction or event identifier used by that destination Missing, reused, or mismatched identifiers need investigation
Value Amount, currency and inclusion of tax/shipping Reports may be using different revenue definitions
Destination Tag, integration or import receiving the purchase Two implementations may be measuring the same action
Conversion action Name, source and bidding role Duplicate actions may influence the reported total or bidding
Reporting period Time zone and conversion date convention Apparent differences may reflect timing

Do not put customer names, emails, or payment details into a shared diagnostic sheet.

Check identifiers before rewriting tracking

For GA4 web streams, Google says purchase events with the same transaction ID are deduplicated. Use a unique transaction ID for each transaction; do not reuse it across users or send an empty string. Google also notes that this transaction-ID deduplication does not apply to app streams. See GA4’s transaction-ID guidance.

This is a destination-specific rule. A correct GA4 transaction ID does not prove that another platform’s browser/server deduplication is configured correctly. Ask the implementation owner to verify that platform’s current requirements separately.

Look for two conversion actions describing one purchase

Inside Google Ads, inspect both the action’s source and its role in campaign goals. A purchase imported from Analytics and a separate purchase tag may describe the same business outcome. Their names alone will not tell you whether the setup is intentional.

Google distinguishes primary actions used in bidding and the Conversions column from secondary actions generally used for observation. Custom goals are an exception: their included actions can be used for bidding regardless of primary/secondary status. Review Google’s current definitions before making a change.

The correct fix depends on which action should guide the campaign. Changing settings without that decision can exchange an inflated report for an incomplete one.

Overlapping attribution is a different issue

One shopper can encounter more than one marketing channel before buying. A platform reporting an attributed purchase is not necessarily claiming a second checkout occurred.

Treat store orders as the record of orders, subject to your exclusions and refunds. Treat platform attribution as each platform’s assignment under its own rules. Compare dates, windows and definitions before drawing a conclusion, and do not add channel-attributed purchases together as if they were guaranteed to be unique customers.

This is also why branded versus nonbranded search ROAS needs context. Accurate event collection does not settle which activity caused a sale.

Close the loop after the fix

Keep a before-and-after record of the implementation and settings. Repeat the test, then review enough subsequent activity to confirm that the fix behaves as intended. Retest relevant checkout paths and consent conditions with the implementation owner. One successful test is useful evidence, not proof that every path works.

If tracking is sound but visitors still are not buying, move to the ads-versus-landing-page diagnostic. Event collection and conversion performance are separate questions.

For help defining what the campaign should optimize toward, talk with BPM’s paid search team. Bring the purchase definitions and the discrepancy you can reproduce, rather than just two screenshots with different totals.

Share:

More Posts

Send Us A Message