Blog

Shopify analytics without a cookie banner: what is possible and what is not

Store owners in Europe usually ask this the other way round: "Why do my Shopify numbers drop after I turn on the cookie banner?" The answer is that every visitor who clicks Reject, or ignores the banner, stops being counted by any analytics tool that needs consent. Here's what you can and can't do about it, without breaking the law.

Short answer

This isn't legal advice. Rules differ by country, so check with your own advisor.

What sets cookies on a Shopify store

WhatNeeds consent in the EU/UK?
Cart, checkout and session cookies Shopify needs to run the storeNo, strictly necessary
Shopify's own analytics and marketing cookiesYes, Shopify only sets them when the visitor allows it in regions where you show its banner
Google Analytics 4Yes
Meta, Google Ads, TikTok and other ad pixelsYes
Cookieless analytics that stores nothing on the deviceGenerally no

Shopify has a built-in banner (Settings → Customer privacy) that you can show only in the regions that require it. That's a good default if you run ads.

Why your numbers drop with a banner

Shopify Analytics and GA4 respect the visitor's choice, so people who decline, or never touch the banner, are partly or fully missing from the reports. Depending on the audience and the banner design, that can be a large share of European traffic. You still see the orders, but not the sessions, sources and pages that led to them, so conversion rates and channel reports look wrong.

What cookieless analytics counts

A cookieless tool loaded in the theme runs for every visitor, because it doesn't read or write anything on the device. It typically counts unique visitors per day with a one-way hash of the IP address, user agent and a salt that's deleted daily. You get:

What you give up: you can't recognise an anonymous shopper who comes back next week. See how cookieless counting works and its trade-offs.

The part that stays consent-gated: checkout

Shopify runs checkout in its own sandbox. Apps see checkout events (checkout started, order completed) only through a web pixel, and every web pixel declares what it's for: analytics, marketing or both. Shopify then runs the pixel only when the visitor's consent allows that purpose. So even a cookieless tool gets checkout events only from visitors who allow analytics, in regions where you show the banner.

In practice that's fine: you see all storefront visits and sources, and you see the orders themselves in Shopify. What's partial is linking each order back to its source for visitors who declined.

A setup that works

  1. Keep Shopify's banner on in the regions that require it, if you run any ad pixels.
  2. Add a cookieless tool in the theme for full visitor, page and source numbers.
  3. Use its web pixel for checkout events, declared as analytics only, not marketing.
  4. Compare the visitor count with Shopify's sessions for a week. The gap is roughly the traffic you were missing.

PageLens Analytics for Shopify does steps 2 and 3: a theme app embed that loads the cookieless script (no theme code edits) and a web pixel declared as analytics only. If you'd rather paste a snippet, there's a manual install guide.

Try PageLens on your site

Create a free PageLens account: 7-day trial, no card, no cookie banner needed.

Start free trial

Keep reading