Skip to content

Pet accessories (Shopify)Client work

Orders in Shopify, None in Google Ads: Proving a Purchase Repair With One Paid Click

A Shopify pet accessories store had orders but no purchases in Google Ads or GA4. I rebuilt the purchase sender and proved it with one paid click traced to its order.

The brief

Context

A UK Shopify store selling pet accessories had recently changed owners. Orders kept arriving in Shopify, but Google Ads and GA4 recorded no purchases, so campaigns were spending without a conversion signal to optimise for.

I was asked to restore Purchase, find out who owned which tag, and check how Shop Pay checkout and cross-domain attribution affected the ad click.

Sounds familiar?

Symptoms

The situation Pet accessories (Shopify)
Tick what applies to you

The 10 orders included the client’s own test orders, so they are not 10 lost ad sales. The comparison proves a missing event, not how many conversions Google Ads should have credited.

The investigation

How I diagnosed it

I read Shopify, Google Ads and GA4 through their APIs and mapped every sender against every destination: the Google & YouTube app, the custom pixels and each Google tag.

  1. The legacy tag still looked installed but no longer delivered anything to either platform. Separating that dead tag from the senders that were active showed the real gap: Purchase had no working sender at all.

  2. The second problem sat in checkout. I checked the checkout, referral and cross-domain settings and found where the paid-click identity was lost: it never reached the order, so even a recorded conversion could not be matched to a real sale.

Handover

What I changed

Delivery noteDelivered Aug 2026

  1. One consent-aware purchase pixel on checkout completion, sending to the existing Google Ads conversion action and to GA4, with transaction IDs for deduplication.
  2. Click-ID capture on the order, so the paid click and the order carry the same identifier.
  3. A reference test: one authorised purchase placed after a real ad click, checked in Google Ads, in GA4 and on the order.
  4. Reconciliation of the orders that followed, one by one, which found a GA4 consent-loading gap. I fixed it.
  5. Unused Primary bidding goals cleaned up in Google Ads.

Full server-side attribution for Shop Pay was proposed as a separate phase. It is not part of this delivery.

Screenshots

The evidence

Archived captures from the audit, Google Ads and the closing report. Order and account IDs are masked; nothing else is edited.

Audit table for 18 July to 18 August: Shopify 10 purchases and £198.40 revenue; Google Ads and GA4 0 purchases, £0 and 0% capture
18 August audit, read from Shopify, Google Ads and GA4. The 10 Shopify orders include client test orders.
Google Ads columns: one click, 100% conversion rate, 1.00 conversion
Google Ads, 20 August: the reference ad click produced one recorded conversion. This is a test, not a campaign result.
Report card: the order attributes now carry the gclid identical to the ad click, the GA client ID and the session ID; earlier orders carry none
The reference order carries the same click ID as the ad click; earlier orders, including four test orders, carry none. Identifier values are not shown.
Order-by-order table from 19 to 25 August: the authorised test recorded in Google Ads and GA4, an organic order in GA4 only, an order missing in GA4 because of consent, and one order placed before the consent fix
25 August closing report: every order since the fix and what each one shows. Order IDs masked.

Before → after

Results

Client work Done for real clients. Client details are anonymised.

Purchases recorded in Google Ads and GA4, 30 days to 18 Aug 2026

Aug 2026

Before
none recorded (Shopify had 10 orders, incl. client test orders)
After
recorded on the reference ad-click purchase

Paid-click ID on the order

Aug 2026

Before
missing on every earlier order
After
the same ID as the ad click

GA4 consent-loading gap found in follow-up reconciliation

Aug 2026

Before
an order missing in GA4
After
fixed on 25 Aug 2026
The full results table
CheckBeforeAfterRead on
Purchase in Google Ads0 in 30 daysRecorded on the reference ad-click purchase20 Aug 2026
Purchase in GA40 in 30 daysRecorded on the reference purchase19 Aug 2026
Paid-click ID on the orderMissingThe same ID as the ad click19 Aug 2026
Order with no ad click before it—In GA4, correctly absent from Google Ads20 Aug 2026
GA4 consent-loading gapAn order missing in GA4Fixed25 Aug 2026

What this case does not claim

This is a verified repair, not a claim that every order is tracked. It proves a working path on a reference purchase and a reconciled set of follow-up orders. Full server-side Shop Pay attribution stayed a separate, proposed phase. No change in sales, revenue or ROAS is claimed, and history from before the fix was not recovered.

A note from Daniilbefore you decide

What this means for a similar business

“Tag installed” is not proof. Take one paid click, find the order it produced, and confirm the conversion landed in both platforms with the same identity.

Then keep reading the next orders one by one. The first test proves the path works; the follow-up finds what still breaks it, such as consent loading or an order edited after checkout.

— Daniil

Daniil Maximkin

Hi, I’m Daniil.

I work with you from defining the problem to implementation and handover. You talk to the person who does the work. I work in English and Russian; written correspondence in Spanish with translation support.

Have a similar task?

Describe your task

The first answer is free, within one working day. Or write directly: next@taskfordaniel.com

Discuss your task

Describe what needs to be built, fixed or connected.

Write your task next@taskfordaniel.com