Shopify analytics
What a Shopify store measures without any extra code, where those reports run out, and what it takes to add an analytics tool of your own.
- checked 2026-09-18
- The table of tools →
What Shopify analytics shows
Shopify counts sessions, visitors, orders and revenue for your online store without any code from you, and shows them on the Analytics page, in Live View and in a set of reports. Shopify’s documentation states that the main features are available to merchants on any Shopify subscription plan.
The Analytics page is a set of metric cards you arrange yourself, and Shopify states that they are “updated within about 1 minute”. Live View shows current activity on its own page for stores with an online storefront. The reports go further. Acquisition reports display “information about how visitors come to your store” through sessions by referrer, sessions by location, sessions over time and visitors over time, and Shopify notes that they “do not show converted sales or the amount of orders”. Behaviour reports hold the store funnel: conversion rate over time, and a conversion rate breakdown that reads sessions with cart additions, sessions that reached checkout and sessions that completed checkout as shares of all sessions. What people typed into your store search is reported too, with a delay of up to 72 hours.
Two definitions decide how the traffic figures read. A session “ends after 30 minutes of no activity, and at midnight UTC”, and because the same visitor can open several of them, “the number of sessions is usually higher than the number of visitors”. Those counts rest on two cookies Shopify sets on the storefront: _shopify_s, which identifies the combination of browser session and shop and expires on a rolling 30 minutes, and _shopify_y, which supports Shopify Analytics and lasts a year. Acquisition reports also carry a filter that separates human traffic from bot traffic.
Where the built-in reports stop
The first limit is scope: they stop at what the platform already records. Reports are assembled from orders, sessions, products and searches, so anything else you want counted, a click on a size guide, a video played, a care sheet downloaded, has to be collected by an outside tool through the customer events system described below. There is no place in the reports to define an event of your own.
History is the second limit, and it is fixed: “Historical data for sessions-based metrics go back only to October 1, 2022.”
Editing is the third. Filters and column changes are temporary unless you save the result as a custom report, and not every report accepts them: Shopify names all finance reports except United States sales tax, all fraud reports and most order reports as ones that take neither.
Time is the fourth. Sessions close at midnight UTC rather than at midnight in your store’s time zone, so a late evening visit and the order it produced can land on different days, and a daily traffic chart will not line up with a daily sales chart for stores far from that meridian.
The fifth is the store’s own code inflating its sessions. Shopify documents session cookie rotation, where something on the storefront regenerates the session cookie during one visit and each new value is counted as another session; consent tools and analytics scripts are the usual causes. Sessions are the denominator of the conversion rate, so the rate reads lower than it was, while “orders, sales, and customer counts aren’t affected”.
The sixth is the gap with any outside tool, which Shopify explains rather than denies: bots that some software counts and other software does not, collection that depends on JavaScript and cookies, extensions that block it, reporting time zones set differently on each side, and the point that “it’s unlikely that identical tracking mechanisms are being used by each of the services, so your visitors aren’t recorded equally”. Expect two sets of numbers and decide which one you act on.
How to add an analytics tool to a Shopify store
A store is two surfaces, so installation has two parts.
The first is the theme. In the admin, Online Store and then Themes, the three dot menu on the current theme, Edit code, the theme.liquid file in the Layout folder, and the snippet goes in the head before the closing tag. This is the route vendors document, among them Plausible, Fathom and Mixpanel, and it covers the storefront: home, collections, product pages, cart, content pages. The snippet lives in that theme’s files, so a theme you install later starts without it.
The second part is checkout and the thank you page. They are not rendered from the theme layout, so the theme snippet never sees them, and the supported way in is a pixel: Settings, then Customer events, then Add custom pixel, with code that subscribes to Shopify’s standard events by name and forwards them to the tool. Mixpanel’s guide states the constraint plainly, that Shopify’s checkout flow is strict about only running proprietary scripts.
Older instructions point at doors that are now shut. Shopify’s documentation states that checkout.liquid “is now unsupported for the Information, Shipping, and Payment checkout steps”, that “checkout.liquid and additional scripts were sunset for the Thank you and Order status pages on August 28, 2025”, and that script tags were sunset on those pages on that date for Plus stores “and are sunset for non-Plus stores on August 26, 2026”. A guide that tells you to paste analytics code into a checkout settings field is describing a store that no longer exists.
Sandboxes change what a tool can see. An app pixel runs in a strict sandbox inside a web worker; a custom pixel runs in a lax sandbox, an iframe that cannot reach the page around it, which is why a script asking the window for the current address receives the sandbox address instead. Pixels that work by reading the page or writing to it behave differently here, and what a tool reports from checkout comes from the event payload Shopify hands it.
Consent works at two levels. Shopify states that web pixel app extensions honour the consent signals chosen by the customer: where customers must consent before tracking, callbacks run only after consent is given and earlier events are replayed, and where tracking is on by default, callbacks run until the customer opts out. For custom pixels the help centre puts compliance with applicable laws and consents on the merchant. What applies to your store depends on where you and your customers are, on the tool and on everything else your pages load; the vendors that state data stays in the EU are listed on the page of tools that store data in the EU, and this page is not legal advice.
Of the 44 tools in the table, 23 publish a Shopify route of their own, meaning an app in the Shopify App Store or an installation guide written for Shopify; 2 more name the platform without publishing either and point to the general snippet. Among them is Google Analytics 4, which Google documents installing through the Google and YouTube app rather than by hand, and Piwik PRO, whose app is published in the Shopify App Store by Piwik PRO SA. One of them no longer takes new sign-ups, a kind of change the market log records. The Shopify page lists the whole set with the date each value was checked.
What to count in a store
Four events carry most of the answer, and Shopify emits all of them: product_viewed, product_added_to_cart, checkout_started and checkout_completed. Together they give the same shape as the built-in funnel, with one difference that matters: in your own tool each step keeps the source, the campaign and the landing page of the visit, so you can see which channel produced carts and which produced orders rather than which produced sessions.
Add page_viewed for the checkout paths, since those pages are invisible to the theme snippet, and the purchase confirmations otherwise never appear among your pages. Stores that live on search and merchandising also take collection_viewed and search_submitted, which turn the question of what people wanted into a list you can act on.
Money travels only if you send it. Revenue appears in an outside tool when the order value is attached to the purchase event, and without that the reports hold counts and no amounts. A store selling in several currencies has to settle which one it sends, or the totals mix.
Two habits keep the numbers usable: name events once and keep the names, since a rename splits a metric in two, and check the pixel after every theme or app change.
Questions and answers
Does Shopify have analytics of its own?
Yes, on every plan. The Analytics page, Live View and the report set come with the store and need no code: sessions, visitors, orders, revenue, conversion rate, sessions by referrer and by landing page, search terms. Shopify’s own statement is that the main features are available to merchants on any subscription plan. What they cannot do is count actions you define yourself or follow a visitor across a site that is not the store.
Why do Shopify and an outside tool disagree about sessions?
Because each counts by its own rules, and Shopify says so. Its session ends after 30 minutes without activity and again at midnight UTC, while another tool sets its own window and its own day boundary; bot filtering differs, blockers remove different shares of visits, and reporting time zones are configured separately on each side. Shopify also documents a store-side cause of inflated sessions in cookie rotation. Treat one tool as the record for a given question and use the other for what only it can see.
Can a snippet in the theme track the checkout?
No. Checkout and the thank you page are not built from the theme layout, so a snippet in theme.liquid does not load there, and purchases would be missing from an otherwise complete picture. The route Shopify supports is a pixel that subscribes to customer events, added under Settings and Customer events, which also reaches the post purchase pages. The older routes through checkout.liquid, additional scripts and script tags have been sunset on the dates in Shopify’s documentation.
Which analytics tools work with a Shopify store?
The table records 23 of its 44 tools as documenting Shopify themselves, through an app in the Shopify App Store or an installation guide of their own, and 2 more that mention the platform without publishing either. The set runs from light counters to product analytics, and the questions to ask are the usual ones: where data is stored, whether the tool reads the standard customer events, and what a plan costs at your traffic in the unit the vendor bills.
Do I need a consent banner on a Shopify store?
That depends on where your customers are, what your pages load and how the tool is configured, and it is not a question this directory answers for you. Shopify provides the consent mechanics, with app pixels running only after consent where consent is required. Some vendors state a banner is not needed for their tool; that is the vendor’s position, and the privacy-friendly tools page sets out the conditions each of them applies. A store usually loads more than analytics, and the answer covers all of it at once.
Tools named on this page
Each card shows the values we check, with the date of the last check.

Google Analytics 4
Cloud web analytics, with an optional cookieless mode.

Piwik PRO
Cloud or on-premise web analytics, with an optional cookieless mode.

Plausible
Cloud or self-hosted web analytics, cookieless by default, open source.

Fathom Analytics
Cloud web analytics, cookieless by default.

Mixpanel
Cloud product analytics, with an optional cookieless mode.
Values in this guide come from the directory and carry the date they were checked. Seehow we check every value and thefull table of tools.