Shopify app
Send the purchases GA4 missed, from the server
Keep your tag. Fill the gap.
GapFill: GA4 Server Tracking is a Shopify app that compares your Shopify orders with the purchases in Google Analytics 4 and sends the orders GA4 didn’t track from the server. Revenue and conversions in GA4 stay close to your real sales.
Why GA4 misses purchases
GA4 tracks a purchase only when the tag runs in the buyer’s browser. The order exists in Shopify, but GA4 never hears about it, and the results you see in GA4, and in the ad platforms that learn from it, are smaller than they really were.
How it works
Connect GA4
Sign in with Google and choose the GA4 property for your store.
See the gap, for free
The report shows how many of the last 30 days’ orders are missing from GA4 and how much revenue that is, by channel, source / medium and payment method.
Nothing is sent until you approve
Even after you start the paid plan, nothing is sent until you approve. You can check every order that would be sent first.
Approve, and it sends every hour
Every hour, orders still missing from GA4 26 hours after they were placed are sent (orders older than 70 hours are not). GapFill uses the browser ID stored at checkout, so the purchase is tracked as part of the original visit.
Choose what else to send
In-app checkouts in AI assistants and social apps are sent from the start. Subscription renewals, orders from other channels, refunds and cancellations can be turned on in Settings.
Built-in safeguards
- No double counting
- An order is not sent if GA4 already has the same transaction ID, and GapFill checks again after sending.
- A broken tag is not covered up
- If orders missing from GA4 suddenly jump, GapFill treats it as a broken tag and stops sending.
- Consent is respected
- Orders from buyers who declined analytics cookies are not sent. In regions that require consent, only orders with confirmed consent are sent.
- Easy to tell apart
- Every purchase GapFill sends carries
gapfill=1, so you can separate it from tag-tracked purchases in GA4.
Pricing
The missing purchases report is free. Sending to GA4 needs the Standard plan: $19 per month with a 14-day free trial, including 200 events a month. Beyond 200, each event costs $0.02 to $0.05. No events are charged during the dry run, before you approve.
Get it on the Shopify App Store
FAQ
Does GapFill replace my GA4 tag?
No. Keep your current setup. GapFill only sends purchases that GA4 didn’t track.
Could a purchase be counted twice?
An order is not sent if GA4 already has the same transaction ID. GapFill waits at least 26 hours for GA4 to finish processing before it decides.
Which orders does GapFill send?
By default, online store orders that GA4 didn’t track, and in-app checkouts in AI assistants and social apps. Subscription renewals, refunds and the rest are sent only if you turn them on in Settings.
How is customer consent handled?
GapFill follows Shopify’s customer privacy settings. Orders from buyers who declined analytics cookies are not sent.
Support
The help pages cover each step and common problems. For anything else, email [email protected]. We reply within two business days (Japan time). See the privacy policy for how GapFill handles data.
GapFill is developed by ULTRO Inc., Tokyo, Japan.