Founder of SnowcatCloudApril 5, 2023

We live in a multi-device world; Apple ITP limits cookie lifetime to 7 days for most collectors, privacy compliance regulations are on the rise, and many data collection tools still treat a device as a customer.

In this blog post, I promote the implementation of an identity resolution strategy that can significantly increase the number of devices you can associate with a customer.

The outcomes include more accurate customer profiles, improved marketing attribution, and ultimately better user experience and marketing performance. Let's dive in!

No Identity Resolution Strategy

These are three significant problems/symptoms of a lack of identity resolution.

  • Inaccurate marketing attribution - Customers use multiple devices from first touch to conversion; without knowing which devices belong to the Customer, ROAS, or any other efficiency metric related to customer behavior will be inaccurate.
  • Poor understanding of the customer - Incomplete customer profiles can lead to poorly defined customer segments, making it challenging for businesses to target specific groups effectively and create relevant marketing campaigns.
  • Privacy compliance - Without proper identity resolution, it becomes difficult to comply with data access, portability, and erasure requests from customers.

An illustration of the problem

See the illustration below with the graphical representation of a journey where the customer uses multiple devices from the first touch to conversion, steps 1 to 3 respectively.

Without Identity Resolution

(1) A customer opens Facebook and is clicks an ad (cpc) from within the app. From a data collection perspective, a new device is created (Webview)

(2) The customer then clicks a link and opens a browser inside the Facebook app where it signups for a first visit 10% discount.

(3) Finally the customer is now on a desktop and gets an email about a product on sale; the customer clicks and orders.

Without Identity Resolution we have two distinct devices where only one is identified with a customer.

Now see below a journey with a identity resolution in place.

With Identity Resolution

By collecting and hashing the email identifier we effectively know who the customer is and can stitch the webview device to the customer through the emailhash identifier.

What is an Identity Resolution Strategy

An Identity Resolution Strategy is an operational plan designed to associate the highest possible number of devices with individual customers.

This approach enables businesses to accurately represent each customer's behavior and journey, providing a comprehensive understanding of their interactions and experiences.

An identity resolution strategy is applicable to both digital and offline environments, and devices can be linked to customers either deterministically (by explicitly stating that device X belongs to customer Y) or probabilistically (by assigning a device to a customer based on a combination of factors).

This method allows for a more comprehensive understanding of customer interactions across various channels and touchpoints.

How to Create an Identity Resolution Strategy

Regardless of the data collection platform used, our goal is to create a breadcrumb trail that facilitates linking all devices to a customer. To achieve this, we must seize every opportunity to gather relevant information and strengthen these connections.

Step 1. Define Your Organization Customer's Identifiers

Initially, it's essential to identify the various identifiers available when a customer interacts with a brand, whether through online or offline channels.

Here's are some examples:

  • customer_id - Unique customer identifier referencable to the backend database/CRM
  • email - Customer email address
  • mobile - Customer phone number
  • loyalty_card_number - The customer loyalty card number
  • Credit card - Customer credit card number
  • Browser fingerprint - Professional fingerprinting can get up to 99% accuracy.

Each customer will have multiple identifiers. While stitching identifiers to customers over time might appear straightforward at first, the process can become increasingly complex (we'll discuss this later). As a best practice, it is advisable to hash any identifiers containing personally identifiable information (PII) to protect privacy.

Tip: Using device fingerprinting can also increase your device coverage as cookies will be optional; the device still has the same fingerprint. See Step 3 for an illustration.

Step 2. Defining how to use Identifiers

With the identifiers established, it's time to operationalize their use. Make sure every platform interacting with customers employs at least one identifier, and ensure that any PII or sensitive data is hashed to maintain customer privacy.

We only need the customer to use an identifier once, and we'll have that device forever associated with that customer.

The more you do this, the better your coverage will be.

Collaborate with your data team to explore methods for utilizing one or more customer-level identifiers and collecting them, thereby effectively linking devices to individual customers.

Here are some ideas:


  • Links shared with the customer in chat (Query parameter with customer id)


  • Contact Forms (capture customer id or email/phone hashed )
  • Newsletter signup (capture customer id or email/phone hashed )
  • Discount signup banners (capture email/phone hashed )
  • Links shared with Customers in chat (Query parameter with customer id)
  • Order confirmation (Tag URL with customer id query parameter)
  • Login (capture customer id on login and promote login)

Email/SMS Systems

  • Add the query parameter or dynamic URI with the customer id.
  • Outreach (Tag links with customer id query parameter)
  • Order tracking (Tag links with customer id query parameter)
  • Track email Opens/Closes (Use customer id in webhooks)

Offline world

  • Order in-store (phone number, email, or CC hash)

Step 3. Stitching all the devices to the customer

Now the data team can get to work. They can utilize SQL models to query the data, identifying devices with customer identifiers, and aggregate their behavior at the customer level.

As time progresses, the stitching process can become increasingly complex. That's why we recommend using a graph database like Neo4j (check out our 1-click integration Iceberg Customer Graph), as it significantly simplifies the process. Graph databases were specifically designed for handling such tasks.

Read this blog post on why the modern data stack needs an identity graph.

Iceberg Customer Graph uses your existing event tracking implementation (events, pageviews, ecommerce, and webhooks) to create and maintain a real-time graph of which devices are used by which customers. The graph is hosted in your Neo4j instance, so you own and have full control of your data and can be used for a lot more than identity resolution.

In the example below, using browser fingerprint and a stitching strategy we can determine that customer “Joao Correia” owns four devices, and aggregate his behavior across those four devices. Mind blowing right?

For ease of integration with your data warehouse and models Iceberg Customer Graph outputs a table for ingestion in your dbt SQL models.

CustomerIdentifier ValueIdentifier NameDevice
Joao Correia77a06a7fSP CookieiPhone Webview
Joao CorreiaC8573621Customer IDDesktop
Joao CorreiaemailhashEmail hashiPhone Webview


In conclusion, implementing an identity resolution strategy is crucial for organizations seeking to create a comprehensive customer 360 view, enhance communication relevance based on behavior, and improve marketing attribution.

By following the outlined steps and collaborating with your data team, you can establish a more accurate representation of your customers' behavior across multiple devices and channels.

Embracing this approach also paves the way for various additional use cases that can help drive your organization's success.

Would like to know more about customer graphs and identity resolution? Let's chat!