- US device IDs in the graph
- 750M+
- Match rate on events
- 90%+
- Identity window, per customer
- Lifetime
- Most brands are live
- <20 min
How it flows
How a Shopify event reaches your warehouse. Captured on the server, resolved to a person, then sent.
01 Capture
Captured from Shopify
One Upstack app setup that captures Shopify storefront and checkout events with the Upstack Pixel, records every order directly from Shopify, and forwards both to every tool you spend on.
See the Shopify integration →
ShopifyWhat it sends order_idShopify order and checkout tokenemail / phonecustomer contact from checkoutcustomer_idShopify customer record, if they have oneline_itemsproducts, variants and quantitiestotal / subtotal / discountorder economics
02 Understand
Resolved to one person before it leaves
Every Shopify event is matched against a 750M+ device graph, so a phone browse and a desktop checkout resolve to one customer rather than two strangers.
How resolution works →
Resolved before it is sent - IdentityMatched against a 750M+ device graph, so a phone browse and a desktop checkout resolve to one customer.
customer_typeNew or returning, resolved before send.- DeduplicationStable event IDs, so re-runs and backfills do not double rows.
- Bot and fraud filteringFiltered before load, with the filter decision recorded.
03 Activate
Delivered to your warehouse
A clean, resolved event stream into BigQuery, Snowflake or Redshift: the same data your dashboards run on.
See the warehouse integration → Your warehouseWhat it receives
event_idprimary key you can join onresolved person IDstitch sessions to customersfull property payloadnothing dropped, nothing sampledingest timestamprebuild any point-in-time view
The catch
Shopify's own exports are order-shaped, not event-shaped.
You can reconstruct what was bought but not the path to it, which is why warehouse analysis of Shopify data usually stops at the checkout and cannot answer anything upstream of it.
Where to check in your warehouseA stream you can audit
Query the events table directly: count distinct resolved person IDs against count distinct sessions, and compare the ratio to what your analytics reports.
What changes
What changes when Shopify feeds your warehouse. Two gains on the warehouse side, two on the Shopify side.
Your warehouse
One resolved event stream
The same identity-resolved events that reach your ad platforms, landed in your warehouse.
Your warehouse
Nothing sampled
Full-fidelity events, not an aggregate or a sample.
Shopify
Orders recorded from Shopify itself
Purchases also reach Upstack directly from Shopify, about 10 minutes after the order, so an order still counts when an ad blocker stopped the pixel or the shopper closed the page.
Shopify
Recognize returning customers
Shopify customer IDs, emails and phones are matched against the graph, so repeat buyers are identified across devices.
Setup
Live in under 20 minutes.
App install, no theme edits and no developer.
Upstack dashboardExample
Shopify Data source Connected
Your warehouse Destination Healthy
Read the full warehouse setup guide → -
01
Connect Shopify
In the Upstack dashboard, open System, then Data Sources, and click Connect Shopify. Approve the install in your Shopify Admin: Upstack reads products, orders and customers, and writes only its own pixel.
-
02
Add the warehouse destination
Under Destinations, add your warehouse. Every resolved Shopify event is then forwarded to it.
-
03
Check delivery to your warehouse
Every row traceable to the event that produced it and the time it landed.
FAQ
Questions about Shopify and your warehouse.
How do I check that Shopify events are reaching your warehouse?
Query the events table directly: count distinct resolved person IDs against count distinct sessions, and compare the ratio to what your analytics reports.
Will re-runs or backfills duplicate rows?
No. Stable event IDs, so re-runs and backfills do not double rows.
Do I need a developer to connect Shopify to your warehouse?
No. Shopify connects as an app install with no theme edits, and most brands are live in under 20 minutes. Headless storefronts add the Upstack Pixel script instead of the theme app extension.