Shopify
  • Personalization for Shopify
  • Installing
  • Tracking & Session Management
    • Standard Shopify Storefronts
    • Custom Storefronts (Hydrogen, Headless & more)
  • Shopify International (Markets)
    • Front End addition
  • Recommendation Extensions
  • Guides
    • Quicker loading times
    • Granting Access to your Store
    • Adding/Moving Recommendations
    • Customizing Product Metadata
    • How Nosto modifies your theme
    • Version Controlled Themes
    • Implementing enhanced conversion tracking
  • Features
    • Variations (Configurable Products)
    • Managing the Cart
    • Supplier Cost & Inventory Level
    • Restore Cart Link
    • Ratings & Reviews
    • Multi Currency Support
    • Shopify Flow
    • Shopify Hydrogen
    • Marketing permission and GDPR compatibility
    • Online Store 2.0
    • Shopify Sections
    • Dynamic Bundle Discounts
    • Customer Reference
  • Integrations
    • Using Yotpo
    • Using Stamped.IO
    • Using Judge.Me
    • Using Okendo
  • Articles
    • Article: Leveraging Margin Data
  • FAQ
  • Uninstalling
  • Visit Nosto
  • Issues
  • Releases
Powered by GitBook
On this page
  • Overview
  • How Tracking Works in Shopify
  • Nosto Script
  • The 2c.cId Cookie
  • Shopify Pixel
  • Required Permissions
  • Required scopes
  • Checking the Shopify Pixel
  • Cookie Consent & Legal Compliance
  • What’s required:
  • Troubleshooting

Was this helpful?

  1. Tracking & Session Management

Standard Shopify Storefronts

Personalization in Nosto depends on the ability to recognize returning visitors, follow them through the purchase journey, and attribute purchases correctly. On Shopify, tracking and session persistence require a few special building blocks — especially during checkout.

This guide explains how Nosto tracks sessions in Shopify, how the Shopify Pixel fits in, and what to watch out for when troubleshooting or working with headless setups.

Overview

Nosto tracks user session with the a session cookie. Due to the fact that Shopify’s checkout is sandboxed, most scripts and cookies from your storefront can’t be accessed once the user enters the checkout flow.

To keep tracking working across this barrier, Nosto uses:

  • A session cookie (2c.cId) to identify users

  • The Shopify Pixel to pass data between checkout steps

Without session tracking, Nosto can’t serve personalized content, collect behavioral insights, or track purchases for analytics and reporting.

How Tracking Works in Shopify

Here’s what powers Nosto’s personalization engine:

Nosto Script

The Nosto script loads on your storefront and sets the 2c.cId cookie. This cookie is the basis for identifying a user session.

The 2c.cId Cookie

This cookie stores the unique customer session ID. It is essential for tracking page views, clicks, and enabling personalization across the store.

Shopify Pixel

Shopify doesn’t allow third-party scripts inside the checkout.

To continue personalization in this environment, Nosto’s Shopify Pixel uses the 2c.cId cookie and Shopify’s checkout token to support session tracking and display personalized content in within Checkout.

Required Permissions

To activate and use the Shopify Pixel, Nosto requests access to specific Shopify scopes. You’ll be prompted to accept these permissions when:

  • Installing the Nosto app

  • Updating the app after a new feature release

When a new scope is added, Shopify will prompt you to approve the new access level. If you skip or decline this, the Pixel won’t activate and no checkout tracking will occur.

You can review permissions in Shopify Admin -> Settings -> Apps and sales channels -> Nosto -> Permission details

To accept new permissions navigate to Shopify Admin -> Apps -> Open Nosto — if new permission is required, your Shopify Admin can accept the new scope here

Required scopes

  • read_customer_events

  • write_pixels

These are necessary to create, manage, and respond to Shopify Pixel events — especially those related to checkout.

If the Pixel doesn’t appear in your Customer Events section, check if permission scopes are up to date. You may need to re-authorize the Nosto app.

Checking the Shopify Pixel

Nosto activated the Pixel automatically, but in cases of issues or if you're unsure if it works, you can check the status:

  1. Go to Shopify Admin → Settings → Customer Events

  2. Click Manage Pixels

  3. Look for the Nosto Pixel

In case the status is not "Connected", please reach out to us!

The Pixel will now automatically send a session update when a customer begins checkout.

Cookie Consent & Legal Compliance

For tracking to work, the customer must accept cookies — especially in regions with strict privacy laws.

What’s required:

  • The 2c.cId cookie must be present

  • Users must opt-in to analytics/marketing cookies

  • In regions like Germany, passive banners are not enough — consent must be explicit

Troubleshooting

Pixel request fails (404 / Cookie not found)

- Open DevTools → Network tab- Look for a request like /pixel/token/{shop}/{cid}/{checkout-token}- Confirm the cookie + token are passed

Pixel doesn’t show up at all

- Go to Shopify Admin → Settings → Customer Events- Make sure the Nosto Pixel is listed and active

Nothing seems to track

- Is Nosto script loaded on the storefront?- Does your consent tool properly trigger script loading and cookie creation?

Still not working?

  • Make sure the cookie is present before checkout

  • Confirm the Pixel is enabled under Shopify Admin → Customer Events

  • Double-check whether the customer gave consent (especially in strict regions)

If unsure, please reach out to your Nosto team via support@nosto.com!

PreviousTracking & Session ManagementNextCustom Storefronts (Hydrogen, Headless & more)

Last updated 5 days ago

Was this helpful?

Screenshot of Shopify’s permission prompt