Skip to content
←  All writing

Microsoft Clarity on Shopify: What It Shows You, and What It Structurally Cannot

Clarity answers "what is broken". It cannot answer "what is this costing me" — and on a store, that is the whole game.

7 min readMirage Capital Corp

Disclosure

DynoWeb is one of our own products. This article links to it, and you should weigh the recommendation accordingly.

Microsoft Clarity is free, unlimited, and genuinely good. If you run a Shopify store and have no behavioural analytics at all, install it today — this article is not an argument against it.

It is an argument about a boundary. Clarity was built as a general-purpose web analytics tool, and a store is not a general-purpose website. There is a specific class of question a Shopify merchant needs answered that Clarity cannot answer, not because of a missing feature, but because of what it was designed to know.

Understanding where that line sits saves you from the more common failure: staring at heatmaps for an hour, learning something interesting, and having no idea whether it was worth anything.

What Clarity does well

Credit first, because it earns it.

  • Session recordings, unlimited and free. No sampling caps that matter at most store volumes. This alone is worth the install.
  • Rage clicks and dead clicks. Clarity flags when a visitor clicks the same element repeatedly (rage) or clicks something that is not interactive at all (dead). Both are excellent bug detectors. A dead-click cluster on your product page is usually an image people expect to be zoomable, or a text label they think is a link. These are real, findable, fixable.
  • Heatmaps that work without configuration. Click, scroll and area maps out of the box.
  • No session limit, no pricing tier to outgrow. Rare and meaningful.

For finding broken things, Clarity is hard to beat at any price.

Where the boundary is

Clarity sees pageviews, clicks, scrolls and DOM events. It does not see your orders.

That sounds like a small distinction. On a store it is the whole game, and it produces four concrete blind spots.

1. Every session weighs the same

Clarity cannot tell you that the frustrated session you just watched belonged to someone with £340 in their cart, and the smooth one belonged to a bounce. Both appear in the list as one session each.

So you cannot ask the question that actually matters: show me the sessions where a large cart was abandoned. You can only watch sessions in the order they arrived and hope you get lucky. At any real traffic volume, you will not get lucky often enough.

2. You cannot segment by what a customer did commercially

"Show me sessions from people who viewed three or more products but never added to cart." "Show me sessions from returning customers." "Show me sessions that reached checkout and stopped at the shipping step."

These are Shopify concepts — products, carts, checkout steps, customer records. Clarity has pageview URLs and DOM events. You can approximate some of this with URL filters, and the approximation breaks the moment your theme uses a drawer cart or an app-embedded checkout step that does not change the URL.

3. You cannot tell whether a fix made money

This is the one that costs the most over time. Say Clarity shows you a dead-click cluster on the size guide. You fix it. Now what?

Clarity will show you that dead clicks went down. It cannot show you that revenue went up, because it does not know revenue exists. You are left inferring from Shopify Analytics in another tab, over a period during which ten other things also changed — your ad spend, the season, a competitor’s sale.

Without that loop closed, optimisation becomes a series of plausible-sounding changes with no scoreboard. That is how stores end up having "done CRO" for six months with nothing to show.

4. Shopify’s structure is invisible to it

Variant selections, cart value, discount codes applied, UTM source tied to an actual order, checkout step progression — none of this exists in Clarity’s model. A generic tracker sees a click on a button. A Shopify-aware one sees a customer selecting the size that is out of stock in the colour they wanted.

Two things to stop doing with Clarity

Stop watching sessions in chronological order. It feels like research and it is close to random sampling. Without value-based filtering you are spending an hour to find what a filtered query would surface in a minute. If Clarity is your only tool, at least filter to sessions that hit /cart or /checkout — a crude proxy for intent, but far better than the raw feed.

Stop treating a rage-click count as a result. It is a symptom counter. Rage clicks going down is evidence that a bug is fixed. It is not evidence that the fix earned anything, and the two get conflated constantly in optimisation reports.

So what do you do about it

Three honest options, depending on the size of the store.

Keep Clarity and accept the ceiling. Below roughly 1,000 sessions a month, the data is too thin for value-based segmentation to be reliable anyway. Use Clarity to find bugs, fix the bugs, move on. This is a reasonable place to stop.

Keep Clarity and add order context manually. Use Clarity’s custom tags to pass cart value or customer type from your theme. It works. It requires theme code, it breaks when the theme is updated, and someone has to own it.

Use something that reads Shopify’s data natively. There are tools that read Shopify order data alongside the session, so cart value and checkout step are dimensions you can filter on rather than tags you have to maintain. That comparison covers the Shopify-native options and is worth reading before you install anything — including the part where it is honest about which ones are worse than Clarity at the things Clarity is good at.

The actual recommendation

Run Clarity. Seriously — free and unlimited is a strong offer and the rage-click detection alone will find you something in the first week.

Then be clear-eyed about what you are doing with it. Clarity answers "what is broken." It does not answer "what is this costing me" or "did fixing it help." If those questions matter to your store — and past a certain revenue they are the only questions that matter — you need something that knows what an order is.

For the specific trade-offs between a general-purpose tracker and a Shopify-native one, there is a direct comparison of the two approaches that lays them out side by side.

Common questions

Does Microsoft Clarity work on Shopify?
Yes. Microsoft Clarity installs on Shopify and records sessions, heatmaps, rage clicks and dead clicks with no session limit and no cost. Its limitation is that it does not read Shopify order data, so it cannot filter sessions by cart value, segment by customer type, or show whether a fix changed revenue.
What are the limitations of Microsoft Clarity for ecommerce?
Clarity treats every session as equal weight because it has no access to cart or order values, so you cannot prioritise watching high-value abandoned sessions. It cannot segment by ecommerce concepts like checkout step or returning customer, and it cannot attribute a revenue change to a fix you made, because revenue is not in its data model.
Should I replace Microsoft Clarity or add to it?
Below roughly 1,000 sessions a month, Clarity alone is usually enough — the data is too thin for value-based segmentation regardless of tool. Above that, the question is whether you need to connect behaviour to revenue. If you do, a Shopify-native tool that reads order data answers questions Clarity structurally cannot, and many stores run both.

Filed under

Microsoft ClarityShopifyAnalyticsSession replay

Drawn from our own products