You open the Analytics page in Shopify, and Shopify analytics greets you with a wall of numbers: total sales, sessions, conversion rate, sales by channel. Some went up, some went down. But you came here with a simple question, like "is my Meta spend working?", and you're not sure any of these numbers answer it.
That's the most common experience with Shopify analytics, the reporting built into every Shopify store. It's genuinely good at telling you what happened in your store. It's much weaker at telling you why, and it can't tell you what you kept after your ad bills and costs.
This guide walks through what's in Shopify's analytics, how to read the numbers that matter, and where you'll need something more.
What "Shopify analytics" includes
Shopify's built-in analytics is a section of your Shopify admin with three main parts:
- [The Analytics dashboard](https://help.shopify.com/en/manual/reports-and-analytics/shopify-reports/overview-dashboard) (the overview page): a set of cards with headline numbers and small charts for the date range you pick.
- Reports: detailed tables you can filter and break down, grouped into categories like sales, orders, customers, marketing and profit.
- Live View: a real-time view of who's on your store right now and what they're doing.
Shopify says the main analytics features are available on every subscription plan. The exact set of reports, and whether you can save your own custom reports, depends on your plan. Shopify's plan pages list what each one includes, and it changes from time to time, so check yours rather than relying on an old blog post.
Your staff need the Analytics permission to see any of it.
The Shopify analytics dashboard
The Shopify analytics dashboard is where most people start. Each card shows one metric for the period you've picked, compared with an earlier period. You can customize which cards appear and in what order, so it's worth spending ten minutes putting the ones you actually use at the top.
Here are the numbers you'll see most often, and what each really means.
Total sales
Shopify's total sales is what customers paid, after discounts and returns, including taxes and shipping charges. It's not the same as what you earned. Taxes go to the government, shipping charges mostly go to your carrier, and none of it accounts for product costs. When someone quotes "sales" from Shopify, ask which version they mean: gross sales (before discounts and returns), net sales (after them) or total sales.
Sessions
A session is one visit to your store: someone arrives, browses for a while, and leaves. One person can create many sessions. Shopify counts sessions using code that runs in the shopper's browser, so the count depends on things like cookie consent and browser settings.
Conversion rate
Conversion rate is the share of sessions that ended in an order. If you had 2,000 sessions and 40 orders, that's 2%. Shopify also shows a breakdown of the steps along the way (added to cart, reached checkout, completed), which helps you see where people drop off.
Average order value
AOV (average order value) is your sales divided by your number of orders. It's useful for spotting whether bundles, free-shipping thresholds or upsells are working.
Returning customer rate
The share of customers who've ordered more than once. A healthy returning customer rate means your ads aren't the only thing keeping the store alive. We go deeper on this in what is customer retention rate .
Sales by channel and sessions by source
These cards show where orders and visits came from: your online store, other sales channels, and referral sources like social or search. They're the first hint of how your marketing is doing, but as we'll see below, they're also where Shopify analytics is easiest to misread.
Shopify reports
The dashboard is a summary. Reports are where you go for detail. Shopify groups its default reports into categories including acquisition, behavior, customers, finances, fraud, inventory, marketing, orders, profit, retail sales and sales.
You can filter any default report, change the columns and break it down differently. On plans that support it, you can save your edits as a custom report or build one from scratch. Shopify's Sidekick assistant can also generate a report from a plain-English request. Every report can be exported, which is how many stores get their Shopify data into a spreadsheet.
Later in this guide we'll look at which numbers to trust and where the reports run out.
Live View
[Live View](https://help.shopify.com/en/manual/reports-and-analytics/shopify-reports/live-view) shows activity happening right now: visitors on the store, what they're looking at, carts and checkouts in progress, and orders as they come in. It's great during a launch or a sale, when you want to see whether an email or a new ad is sending traffic. It's not where you make budget decisions, because a few minutes of activity tells you very little.
How Shopify analytics handles marketing attribution
This is the part most merchants care about, so it's worth being precise.
Shopify's marketing reports try to connect orders to the marketing that brought the shopper in. Shopify uses the visit information it collects (where the shopper came from, any UTM tags on the link) to decide which channel and campaign to credit. UTM tags are labels added to the end of a link, like ?utm_source=facebook&utm_campaign=spring_sale, so analytics tools know where a click came from.
Shopify lets you switch between several attribution models, which are the rules for deciding which visit gets credit for a sale. The options are last non-direct click, last click, first click, linear and any click. Last non-direct click is the usual default, though reports that mix sales figures with marketing channels start on last click. Switching models is a good habit, because it shows you how much your view of a channel depends on the rule you picked.
What Shopify analytics does well here:
- It uses your actual orders, so it never claims more sales than you made (with a single-credit model like last click or first click).
- It's free and already installed.
- It gives a cross-channel view that no single ad platform will give you.
What Shopify analytics can't tell you
Here's where you hit the limits. None of these are bugs. They're just outside what a store's built-in analytics is designed to do.
It only sees visits the browser reports
Shopify's sessions and marketing sources come from browser-side tracking. When a shopper blocks tracking, declines cookies, or their browser deletes cookies after a few days, Shopify can lose the connection between the visit that came from your ad and the order that followed. Those sales tend to land in "direct" or "unknown." The result is that paid channels look worse than they are, and direct looks better.
It doesn't connect the same person across devices well
Sarah clicks your ad on her phone during lunch. A week later she buys on her laptop. Unless something links those two devices to the same person, they look like two different visitors, and the ad that started it all gets no credit.
Ad spend coverage is limited
To calculate ROAS (return on ad spend: revenue from ads divided by what you spent), you need both sides. Shopify knows your revenue. It only knows your spend for channels connected through supported apps, and it isn't built to match spend to the exact ad behind each order. So per-ad, per-ad-set ROAS across Meta, TikTok and others usually isn't something you can get from Shopify alone.
Profit stops at product cost
Shopify's profit reports use the cost per item you enter on each product to show gross profit. That's useful, but it isn't the whole picture. Shipping you paid, payment processing fees and ad spend all sit outside it. So you can't easily see contribution margin, which is what's left of an order after the costs that come with it, and whether a specific campaign made money.
It can't tell you what the ad platforms will do next
Meta and TikTok decide who to show your ads to based on the purchases they see. Shopify analytics shows you your numbers, but it doesn't change what the platforms see. That's a separate job, covered in the Meta Conversions API on Shopify .
A worked example: the "direct" mystery
Here's how the gaps show up in practice, with illustrative numbers.
Last month your Shopify marketing report showed:
| Channel | Orders credited |
|---|---|
| Direct | 420 |
| Paid social | 180 |
| Search | 150 |
| | 90 |
| Other | 60 |
Direct is your biggest "channel" by far. Did 420 people really type your URL out of nowhere?
Some did, especially repeat customers. But many direct orders are people who first found you through an ad, lost their tracking cookie (deleted by the browser, blocked, or never accepted), and came back days later. Others started on a phone and finished on a laptop. Shopify can't see the earlier visit, so it credits the only one it saw.
If you'd judged paid social on its 180 orders and cut its budget, you might find next month that direct orders fall too, because some of them were paid social all along. This is why a big direct number is a question to investigate, not a channel to celebrate.
Getting the most out of Shopify analytics
Even with its limits, Shopify's analytics is worth using well. Here's how.
- Customize the dashboard. Put the five or six cards you actually act on at the top: net sales, orders, conversion rate, AOV, returning customer rate, sales by channel.
- Tag every ad link with UTMs. Consistent
utm_source,utm_mediumandutm_campaignvalues make Shopify's marketing reports far more useful. Pick one naming style and stick to it. - Enter cost per item for every product. Without it, profit reports are empty. With it, you get gross profit by product.
- Compare attribution models. Look at the same channel under last click and first click. A channel that's strong on first click and weak on last click is probably introducing customers rather than closing them.
- Watch the direct share over time. If direct climbs while you're spending more on ads, your tracking is likely losing visits.
- Use comparison periods. Always compare to the same period last month or last year. A raw number on its own tells you very little.
- Export when you need to combine data. If you want to join Shopify orders with ad spend or costs, exporting reports into a spreadsheet is the free starting point.
When you've outgrown Shopify analytics
Shopify analytics is enough when you're mostly selling through one or two channels and your main question is "how's the store doing?" You'll feel its limits when:
- You spend real money on more than one ad platform and they each claim the same sales.
- Your direct or unknown share is large and growing.
- You need ROAS per campaign or per ad, not just per channel.
- You want to know which campaigns are profitable after shipping, fees and ad spend.
- You manage several stores and need the same view across all of them.
At that point, stores usually add a dedicated attribution tool. Look for one that records purchases on the server, splits each order's credit across the visits that led to it (see what is multi-touch attribution ), pulls in spend from your ad accounts, and accounts for your costs.
How Soran handles it
Soran connects to your Shopify store and imports orders, products and customers, including your order history. Purchases are recorded server-side, so ad blockers, tracking prevention and closed tabs don't lose them. Visits from different devices are joined into one customer profile where possible, and repeat revenue is shown apart from first purchases.
Each order's credit is split once across the visits that led to it, so totals add up to what your store actually took. You can switch between ten attribution models and see channel, campaign, ad set and ad levels together, with Meta and TikTok spend matched to the exact ad. Revenue steps down to contribution margin after discounts, refunds, cost of goods, shipping and transaction fees, and you can see revenue and margin per product. One caveat: visit paths only start once tracking is installed, so attribution for older orders isn't available.
Frequently asked questions
Is Shopify analytics free?
Yes. Analytics comes with every Shopify plan. Which reports you get, and whether you can save custom reports, depends on your plan, so check Shopify's plan details for yours.
How accurate is Shopify analytics?
Order and sales numbers are accurate, because they come straight from your store's orders. Session counts and marketing attribution are less complete, because they rely on browser tracking that can be blocked or lose its cookies. Treat sales as the truth and traffic sources as a good estimate.
Why are so many of my Shopify orders marked as direct?
Usually because Shopify couldn't see the visit that brought the shopper in. That happens when tracking is blocked or declined, when cookies are deleted, or when the shopper switched devices. Some direct orders are genuine repeat customers typing your URL, but a large and growing direct share is usually a tracking gap.
Does Shopify analytics show ROAS?
Only for channels where Shopify knows your ad spend, which depends on the apps you've connected. It isn't built to show ROAS at the ad set or ad level across all your platforms, so most stores running multiple ad platforms use a separate tool for that.
What's the difference between Shopify analytics and Google Analytics?
Shopify analytics is built into your store and is strongest on orders, products and customers. Google Analytics focuses on site behavior and traffic across your whole website. Both rely on browser tracking for visits, so both share the same blind spots around blocked cookies and switched devices.
Want to see what Shopify analytics is missing on your own store? Book a demo and we'll walk through it with you.