Identify People in Customer.io

Customer.io partner logo

Table of Contents

Summarize this documentation using AI

This banner was added using fs-inject

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Overview

Identifying people in Customer.io is how you turn anonymous site activity into a known shopper profile you can actually message, segment, and attribute revenue to. For D2C teams, this is the difference between seeing “someone viewed a product” and being able to send the right abandoned cart, browse abandonment, or post-purchase cross-sell to the right person.

A common scenario: a shopper browses on mobile, adds to cart, then checks out later on desktop. If you identify them at the right moments, you can stitch that journey together and trigger the right recovery and follow-up messages instead of treating each session like a different person.

If you want this wired cleanly across Shopify, email, SMS, and paid audiences, Propel can help you implement it quickly in Customer.io (and pressure test it against revenue goals). If you want help mapping identity to your cart and checkout events, book a strategy call.

How It Works

Identifying people in Customer.io works by assigning activity and events to a specific person profile using a stable identifier, then updating that profile as you learn more about the shopper.

In practice, you will typically see two states:

  • Anonymous activity: a browser visits, views products, adds to cart, and you collect events tied to an anonymous identifier.
  • Identified profile: once the shopper provides an email or logs in, you “identify” them so past and future activity rolls up to a single customer record.

The key operational win is that once a shopper is identified, you can run higher-intent automations (cart recovery, replenishment, winback) with accurate frequency controls and better personalization. If you are implementing this via your data pipeline or directly via APIs, align on one canonical ID strategy before you scale. For deeper implementation patterns, see how we support brands on Customer.io.

Step-by-Step Setup

Identifying people in Customer.io is easiest when you define your identity moments first, then instrument events so anonymous behavior merges cleanly into known profiles.

  1. Pick your canonical identifier. For most D2C brands, email is the best primary key because it is stable across devices and channels. If you have accounts, also store a customer ID as a secondary key for durability.
  2. Define your “identity capture” moments. Common moments include email capture popups, account creation, checkout start (email field), and completed purchase.
  3. Send anonymous events before identification. Track browse and commerce intent events like Product Viewed, Collection Viewed, Added to Cart, and Checkout Started with an anonymous identifier so you can still use them later.
  4. Identify the shopper as soon as you have a trustworthy email. When the email is captured, call identify with that email (and any known attributes like first_name, phone, acquisition_source).
  5. Merge anonymous activity into the identified profile. Ensure the anonymous identifier used for pre-email events is linked to the identified person so earlier events power cart recovery and browse abandonment.
  6. Update the person profile with commerce attributes. Add attributes like first_order_date, last_order_date, lifetime_value, last_product_viewed, preferred_category, and sms_opt_in_status.
  7. QA identity stitching. Test a full flow: browse anonymously, add to cart, submit email, then purchase. Confirm one person profile contains the full event trail and that campaigns trigger once, not twice.

When Should You Use This Feature

Identifying people in Customer.io matters most when you need anonymous shopping behavior to drive revenue, not just reporting.

  • Abandoned cart recovery: send email or SMS only after a shopper is identified, while still leveraging the cart events that happened before they shared an email.
  • Browse abandonment and product discovery: trigger category-specific follow-ups once someone becomes known, using their earlier product views to personalize.
  • First purchase conversion: connect sign-up source and browsing intent to the first purchase journey, then suppress “new subscriber” messaging after conversion.
  • Cross-device journeys: unify mobile browsing with desktop checkout so your frequency caps and attribution stay accurate.
  • Reactivation and winback: rely on a single profile with clean order history and engagement signals, rather than fragmented duplicates.

Operational Considerations

Identifying people in Customer.io has real downstream impact on segmentation, orchestration, and deliverability, so it needs an operational plan, not just a one-time integration.

  • Identity hierarchy: decide what wins if you receive conflicting identifiers (email vs customer_id). Document it so your warehouse, Shopify, and Customer.io stay consistent.
  • Duplicate prevention: if multiple systems send “create person” calls, you can accidentally fork profiles. Centralize identity creation in one source when possible.
  • Event timing: checkout events often fire before email is captured. Make sure you track them anonymously first, then merge when identification happens.
  • Consent status: store email and SMS consent as attributes. Identification is not permission. Your segments should respect opt-in status before sending.
  • Frequency and suppression: identity stitching affects how often someone gets messaged. Clean identity reduces double-sends and improves unsubscribe rates.

Implementation Checklist

Identifying people in Customer.io goes smoothly when you treat it like a data contract between your storefront, checkout, and messaging programs.

  • Canonical identifier selected (email, plus customer_id if available)
  • Anonymous identifier strategy documented (cookie ID, device ID, etc.)
  • Identity capture moments mapped (popup, checkout email, account login, purchase)
  • Anonymous events implemented for browse and cart actions
  • Identify call implemented at first trustworthy email capture
  • Anonymous activity merge confirmed in QA
  • Core customer attributes defined (LTV, order count, last order date, categories)
  • Consent attributes implemented for email and SMS
  • Duplicate profile monitoring process in place
  • Cart recovery and post-purchase journeys tested end-to-end

Expert Implementation Tips

Identifying people in Customer.io is one of those foundations that quietly determines how much revenue your automations can actually capture.

  • Identify earlier than you think, but only when the data is reliable. In retention programs we’ve implemented for D2C brands, capturing email at “checkout started” (not only at purchase) materially increases recoverable carts, but you need validation and consent handling to avoid bad addresses.
  • Use identity stitching to improve personalization, not just targeting. Once merged, you can personalize cart recovery with last viewed products, category affinity, and price sensitivity signals rather than sending generic reminders.
  • Build a “known but not purchased” segment that is identity-dependent. This segment powers first purchase conversion flows and should exclude anyone with an order event, even if that order happened on a different device.
  • Audit for double profiles after major site changes. Theme updates, new checkout apps, or new popup tools often change anonymous IDs and break merges.

Common Mistakes to Avoid

Identifying people in Customer.io can go sideways when teams optimize for “more data” instead of clean identity and message eligibility.

  • Waiting until purchase to identify. You lose the highest-value cart recovery window and your browse abandonment becomes far less actionable.
  • Creating multiple profiles for the same shopper. This leads to duplicate sends, inflated list size, and messy attribution.
  • Merging on unreliable identifiers. Typos, shared emails, or placeholder addresses can pollute profiles and hurt deliverability.
  • Ignoring consent. Identification is not opt-in. If consent is not modeled as attributes and enforced in segments, you risk compliance issues and higher complaint rates.
  • Not QAing cross-device behavior. The whole point is stitching. If you only test one browser session, you miss the real failure modes.

Summary

Use identity stitching when you need anonymous shopping behavior to power cart recovery, first purchase conversion, and repeat purchase journeys. Done well, it reduces duplicate sends and makes your segmentation and personalization in Customer.io far more profitable.

Implement with Propel

Propel helps D2C teams implement clean identity, event tracking, and revenue-driving journeys in Customer.io without the usual data and QA churn. If you want to accelerate setup and start capturing more recoverable revenue, book a strategy call.

Contact us

Get in touch

Our friendly team is always here to chat.

Here’s what we’ll dig into:

Where your lifecycle flows are underperforming and the revenue you’re missing

How AI-driven personalisation can move the needle on retention and LTV

Quick wins your team can action this quarter

Whether Propel AI is the right fit for your brand, stage, and stack