> For the complete documentation index, see [llms.txt](https://docs.mediarithmics.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mediarithmics.io/setup-and-monitor/collect-and-manage-your-data/design-your-data-model-and-schema/user-identity.md).

# User identity

Decide which identifiers you collect, and therefore when two UserPoints become one person.

## Your goal

Choose the identifiers you will send, understand how the platform links them into one view of a user, and know what happens when it gets that link right - or wrong.

## Expected outcome

An identity model you can state in a sentence: which identifiers you collect, which of them merge UserPoints, and which registration systems and registries they belong to.

## Why this is the decision that matters most

Identifiers do two things at once. They **route** incoming data to the right user, and they **join** data that arrived separately.

Two consequences follow, and both are hard to reverse:

* **Any activity or import carrying an identifier is automatically related to the correct UserPoint.** An activity using an identifier that does not already exist in the datamart **triggers the creation of a new UserPoint**.
* When identifiers show that two UserPoints are the same person, the platform **merges** them - and a merge is not something you undo.

## Identifiers versus content

It matters to distinguish nodes that *identify* a user from nodes that *describe* one. There are three types of user identifier:

<table data-view="cards" data-search="false"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>User Account</strong></td><td>A registered user, from your CRM, loyalty programme, or authentication system - always paired with a compartment.</td><td><a href="/setup-and-monitor/collect-and-manage-your-data/design-your-data-model-and-schema/user-identity/user-identifiers/user-account.md">User Account</a></td></tr><tr><td><strong>User Email</strong></td><td>An identifier derived from the email address, normally a hash.</td><td><a href="/setup-and-monitor/collect-and-manage-your-data/design-your-data-model-and-schema/user-identity/user-identifiers/user-email.md">User Email</a></td></tr><tr><td><strong>User Device</strong></td><td>Devices and their technical identifiers - cookies, mobile IDs, network IDs.</td><td><a href="/setup-and-monitor/collect-and-manage-your-data/design-your-data-model-and-schema/user-identity/user-identifiers/user-device.md">User Device</a></td></tr></tbody></table>

Everything else attached to a UserPoint - activities, profiles, segments, choices, scores - is describing content. Those are defined in [How mediarithmics works](/setup-and-monitor/understand-mediarithmics/how-mediarithmics-works.md#information-attached-to-a-userpoint).

## Work through it in this order

{% stepper %}
{% step %}

### Understand the graph and how merges happen

Before choosing identifiers, know what the platform does with them.

[UserPoint & Identity graph](/setup-and-monitor/collect-and-manage-your-data/design-your-data-model-and-schema/user-identity/userpoint-and-identity-graph.md)
{% endstep %}

{% step %}

### Choose your own identifiers

Account IDs from which systems, hashed emails with which function, which device identifiers.

[User identifiers](/setup-and-monitor/collect-and-manage-your-data/design-your-data-model-and-schema/user-identity/user-identifiers.md)
{% endstep %}

{% step %}

### Decide which third-party identifiers you need

Network IDs extend recognition beyond your own identifiers, and each one is integrated through a registry or a compartment.

[Network IDs](/setup-and-monitor/collect-and-manage-your-data/design-your-data-model-and-schema/user-identity/network-ids.md)
{% endstep %}

{% step %}

### Plan how you will fix and improve links

Declaring associations, and knowing what to watch.

[Resolve identities](/setup-and-monitor/collect-and-manage-your-data/design-your-data-model-and-schema/user-identity/resolve-identities.md)
{% endstep %}
{% endstepper %}

## The prerequisites this section assumes

Identifiers only work if the container they belong to exists first:

| Identifier family                   | Container       | Where you create it                                                                                           |
| ----------------------------------- | --------------- | ------------------------------------------------------------------------------------------------------------- |
| Account IDs, user-based network IDs | Compartment     | [Compartments](/setup-and-monitor/plan-and-integrate/set-up-the-environment/set-up-compartments.md)           |
| Device and device-based network IDs | Device registry | [Device registries](/setup-and-monitor/plan-and-integrate/set-up-the-environment/set-up-device-registries.md) |

{% hint style="danger" %}
If user data is received under an unknown registry, the identifiers are removed and the data may not be ingested properly. Create or subscribe to the registry before you send the identifier.
{% endhint %}

## Related pages

<table data-view="cards" data-search="false"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Design your data model &#x26; schema</strong></td><td>Back to the model this identity work sits inside.</td><td><a href="/setup-and-monitor/collect-and-manage-your-data/design-your-data-model-and-schema.md">Design your data model &amp; schema</a></td></tr><tr><td><strong>Enrich users with identifiers</strong></td><td>Declaring associations in batch.</td><td><a href="/setup-and-monitor/collect-and-manage-your-data/import-data-in-batch/enrich-users-with-identifiers.md">Enrich users with identifiers</a></td></tr><tr><td><strong>Explore a user profile</strong></td><td>Check what a real UserPoint actually carries.</td><td><a href="/setup-and-monitor/operate-and-monitor/explore-a-user-profile.md">Explore a user profile</a></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.mediarithmics.io/setup-and-monitor/collect-and-manage-your-data/design-your-data-model-and-schema/user-identity.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
