Self-hosted session replay for Shopify stores

There is no Replayowl app in the Shopify App Store. You can add the recorder to your theme by editing one file.

You need a running Replayowl server first. See Deploy to Cloudflare Workers. Below, replace replay.example.com with your server’s domain.

Add it to your theme

  1. In Shopify admin, go to Online Store, then Themes.
  2. On your current theme, open the menu and choose Edit code.
  3. Open layout/theme.liquid and paste this just before </head>:
<script src="https://replay.example.com/recorder.js"
  data-endpoint="https://replay.example.com/api/ingest" defer></script>
  1. Save. Browse your store, then open your Replayowl dashboard to see the session.

What will be recorded

Storefront pages that use your theme: home, collections, products, cart and any custom pages. Shopify’s checkout is not rendered by your theme, so a script added to theme.liquid does not run there.

Attaching customers

To find sessions by customer, pass the customer ID when someone is signed in:

<script src="https://replay.example.com/recorder.js"
  data-endpoint="https://replay.example.com/api/ingest"
  {% if customer %}data-user-id="{{ customer.id }}"{% endif %} defer></script>

Privacy

Inputs are masked by default, as are email addresses and long digit runs in page text. Check your store’s privacy policy and consent requirements before recording. See Masking and privacy.