Updated 20 October 2026

Shopify analytics

Privacy-first, cookieless analytics for Shopify: one tag in theme.liquid, and no dependence on the checkout page you cannot edit.

In short

  • One tag in layout/theme.liquid, before </head>.
  • Checkout on basic plans is not editable, so purchases are recorded by the payment webhook, which is more reliable.
  • No cookie banner needed in cookieless mode, no IP address stored, and nothing loaded from another company.

Install on Shopify#

Use your own site id and server address in the code below. On trckable Cloud the address is https://cloud.trckable.com.

In Online Store → Themes → Edit code, open layout/theme.liquid and paste the tag before </head>:

<script
  defer
  data-site="tkb_a1b2c3d4"
  data-domain="example.com"
  src="https://stats.example.com/js/tkb_a1b2c3d4.js">
</script>

Open your site once, then run npx trckable doctor --host https://stats.example.com --site tkb_a1b2c3d4 --url https://example.com. It only reads, and tells you whether the tag is on the page and the server answers.

What to know about Shopify#

  • Checkout pages on Basic plans are not yours to edit. The tag does not run there, so record the purchase through the payment webhook rather than the script.
  • Theme changes are per theme. If you switch to a new theme, add the tag to its theme.liquid too.
  • Use your store's main domain in data-domain so a visitor on the storefront is the same visitor across its subdomains.
  • Check on the live store, then look for your visit in the Live view.

Goals and revenue#

A goal needs no code: put an attribute on the element and each click is counted.

<button data-trckable-goal="signup" data-trckable-goal-plan="pro">Start trial</button>

Connect Stripe, Paddle, Lemon Squeezy, Polar or Dodo Payments with one key, and each payment is credited to the visit that earned it, so revenue shows next to traffic. See revenue attribution.

Questions#

Can I see Shopify sales per source?
Connect the payment provider that handles the money, and each payment is credited to the visit that earned it. The revenue pages describe each provider.
Do I need a cookie banner on my Shopify site?
Not for the counting itself. In cookieless mode (add data-cookieless to the tag) nothing is stored on the visitor's device and no IP address is kept. Whether your site needs a banner for other reasons is a question for your own situation; the cookie banner guide explains the rules in plain words.
Can ad blockers stop it?
A blocker can block any script, and trckable does not claim otherwise. Sending events through your own domain removes the separate analytics file a blocklist would match by name, which is the accurate setup. The same-origin proxy guide shows how.
Is it free for a Shopify site?
The server is open source and free to self-host, and the tracker is MIT licensed. If you would rather not run a server, trckable Cloud runs it for you; the plans are on the pricing page.

Keep reading#

Other stacks#

Start free