An identity graph enables real-time identity resolution by storing and continuously linking the many identifiers a person generates across devices, channels, and interactions, then matching those identifiers to a single, unified profile in milliseconds. Rather than querying a static record, the graph traverses live connections between data points to confirm who someone is the moment they show up. The sections below unpack exactly what an identity graph stores, how that matching process works at speed, and why it is fundamentally different from a traditional customer database.
What data does an identity graph actually store?
An identity graph stores the full range of identifiers that connect a real person to their digital and offline presence. This includes persistent identifiers such as email addresses, phone numbers, and postal addresses alongside device-level signals like mobile advertising IDs, cookie IDs, and IP addresses. The graph also holds professional attributes, demographic data, and behavioral signals, all organized around a single resolved individual rather than a device or a session.
The depth of what a well-built identity graph contains goes well beyond a simple contact record. At its core, the graph is structured to hold two categories of data simultaneously: the raw identifiers that arrive from digital interactions, and the resolved attributes that give those identifiers meaning.
Persistent and transient identifiers
Persistent identifiers are the anchors of an identity graph. An email address, a phone number, or a home address changes infrequently and therefore provides a stable foundation for linking other signals back to a real person. Transient identifiers, by contrast, are more fluid. Cookie IDs reset, devices change, and IP addresses shift. A strong identity graph maintains the relationship between both types, so when a transient identifier appears, it can be mapped back to a persistent anchor quickly and accurately.
Enrichment attributes layered onto identities
Beyond raw identifiers, an identity graph stores enriched attributes that describe the person behind the data. These can include:
- Demographic signals such as age range, household composition, and location
- Professional data including job title, industry, and employer
- Lifestyle and interest indicators drawn from online and offline behavior
- Purchase intent signals and engagement history across channels
This layered structure means the graph is not simply a lookup table. It is a living record of who a person is, what they care about, and how they interact with brands across every touchpoint they use.
How does an identity graph match identifiers in real time?
An identity graph matches identifiers in real time by using probabilistic and deterministic methods to traverse the connections stored in the graph the moment a new identifier arrives. When a signal such as an email address or a device ID is submitted, the graph evaluates which known identities it connects to, weighs the confidence of those connections, and returns a resolved profile within milliseconds rather than through a batch process run overnight.
The speed of real-time matching depends on how the graph is structured. Graphs built around a true network of relationships, where every identifier points to every other identifier it has been observed alongside, can resolve identity far faster than systems that rely on sequential database lookups. The traversal happens across the graph’s edges rather than through row-by-row queries, which is what makes sub-second resolution achievable at scale.
Deterministic matching
Deterministic matching connects identifiers that have been directly and explicitly linked. If a person logs into a website with their email address on both a desktop and a mobile device, the graph can record that both devices belong to the same authenticated individual with high confidence. This method produces the most accurate matches because the connection is observed rather than inferred.
Probabilistic matching
Probabilistic matching fills the gaps that deterministic signals cannot cover. When two identifiers have never been directly linked by an authenticated action, the graph evaluates shared signals, behavioral patterns, and contextual proximity to estimate the likelihood that they belong to the same person. The confidence score assigned to probabilistic links allows downstream systems to decide how to act on the match based on the required level of certainty for a given use case.
Together, these two methods allow an identity graph to resolve identity across both authenticated and anonymous interactions, which is critical for businesses trying to recognize customers regardless of whether they are logged in, browsing anonymously, or switching between devices mid-session.
What’s the difference between an identity graph and a customer database?
The key difference between an identity graph and a customer database is structural. A customer database stores records in rows and columns, where each row typically represents one profile and relationships between records require explicit joins or manual deduplication. An identity graph, by contrast, stores data as a network of connected nodes and edges, where every identifier is inherently linked to every other identifier it has been observed alongside, making relationship traversal native to the system rather than a secondary operation.
This structural difference has significant practical consequences for what each system can do.
A customer database is well suited to storing and retrieving known, stable records. It answers questions like “what did this customer buy last month?” efficiently. But it struggles when the same person appears under multiple records, uses different email addresses on different devices, or interacts anonymously before ever creating an account. Resolving those fragmented records requires manual deduplication or a separate matching layer, and even then the result is often a static merge rather than a dynamic, continuously updated identity.
An identity graph is purpose-built for exactly that fragmentation problem. Because every identifier is a node in the network and every observed co-occurrence between identifiers is an edge, the graph can answer questions like “is this anonymous visitor the same person as this known customer?” in real time, without requiring a separate deduplication job. The graph updates continuously as new signals arrive, so the resolved identity reflects the most current state of what is known about a person rather than a snapshot from the last batch run.
Another meaningful distinction is scope. A customer database is typically populated only with data a business has directly collected about its own customers. An identity graph can incorporate signals from across the open web, offline data sources, and third-party partnerships, giving it a much broader view of identity that extends beyond the walls of a single organization’s CRM.
How FullContact helps with identity graph-powered resolution
We have spent over a decade building a true identity graph, not a customer database or a relational lookup table, specifically designed to resolve identity in real time across authenticated and anonymous interactions. Our Resolve platform matches the identifiers your business collects against our identity graph and returns a unified customer profile in under 150 milliseconds, so recognition happens at the moment of interaction rather than after the fact.
Here is what that means in practice for your business:
- Append 900+ personal and professional attributes to new and existing customer records without exposing your own data
- Recognize anonymous visitors and connect them to known profiles across devices and channels
- Unify fragmented customer records into a single, continuously updated identity without manual deduplication
- Maintain privacy-safe resolution that keeps your customer data secure throughout the process
Whether you are trying to improve personalization, reduce fraud, or close the gaps in your omnichannel marketing, the identity graph is the infrastructure that makes it possible. If you want to see how real-time identity resolution could work for your specific use case, we would love to talk, so feel free to contact us and start the conversation.