What Is a Product Identity Graph?
A product identity graph turns one-off record matching into persistent identity knowledge: a canonical product linked to SKUs, MPNs, suppliers and documents with scored edges, including NOT_SAME_AS, that survive re-ingestion.
A product identity graph links a canonical product to its identifiers, suppliers and documents with scored edges, including negative edges such as NOT_SAME_AS, that persist across ingestions. It turns one-off record matching into durable identity knowledge.
Matching two records is a moment. A product identity graph is the memory of every such moment: the canonical product and all the identifiers, suppliers and documents that resolve to it, kept so the next supplier feed does not start from zero.
Definition
A product identity graph links a canonical product to its identifiers, suppliers and documents with scored edges, including negative edges (NOT_SAME_AS), that persist across ingestions.
Most catalog tools match and move on. A supplier file comes in, a matching step decides which rows are duplicates, the catalog is cleaned and the reasoning evaporates. Next month the same file arrives and the same rows are matched again. A product identity graph is what you get when that reasoning is kept, written down as edges between a canonical product and everything that points at it.
Record matching vs identity knowledge
| Record matching | Identity graph | |
|---|---|---|
| Output | A pairwise score | A canonical entity with durable edges |
| Lifespan | Today's run | Persists across ingestions |
| New supplier feed | Re-match from scratch | New records attach to existing identities |
| Rejected pairs | Discarded | Stored as NOT_SAME_AS |
| Human review | Repeated for the same pair | Decided once, inherited afterwards |
So ABB AF1630101013 from a new supplier lands on the existing AF16-30-10-13 identity automatically, not because it was re-matched, but because the graph already knows the two are the same.
Positive edges
Each edge carries a source and a confidence score.
SAME_AS: this record is the canonical product.VARIANT_OF: a configuration of a parent (AF16 vs AF26).SUPPLIED_BY: a commercial source and its SKU.REPLACED_BY: the manufacturer’s successor part.DOCUMENTED_BY: the datasheet or drawing that proves a value.
The full vocabulary and the lines between the easily confused ones are in the product relationship types guide.
Negative edges: the part most systems throw away
The graph also records what is not the product. AF16-30-10-11 is one digit away from AF16-30-10-13 but carries a 24–60 V AC / 20–60 V DC coil instead of a 100–250 V AC/DC one. A NOT_SAME_AS edge keeps that near-miss on file, so it is never silently merged in a later run and a reviewer never re-investigates a question that has been answered. Storing the rejection is the most valuable thing the graph does that a cleaned table cannot.
A minimal data model
ProductIdentity(id, canonical_name, manufacturer, mpn)
SourceRecord(id, supplier, sku, raw_text, source_file, observed_at)
Document(id, type, uri, page)
Edge(from, to, type, confidence, evidence_ref, decided_by, decided_at)
type: SAME_AS | NOT_SAME_AS | VARIANT_OF | SUPPLIED_BY | REPLACED_BY | DOCUMENTED_BY
The details that make it work are on the edge: confidence routes the work, evidence_ref makes it defensible and decided_by records whether a rule or a person made the call.
Why it survives the next supplier feed
Because the edges are data and not a one-time computation, every ingestion inherits them. New records attach to existing identities, confirmed relationships raise confidence and only the genuinely new or ambiguous cases reach a human. That is the mechanism behind the claim that your catalog should get smarter every day: the identity graph is where “smarter” accumulates.
Common mistakes
- Merging records and deleting the originals. Keep every source record linked, so a merge can be reversed.
- Only storing positives. Without
NOT_SAME_AS, near-misses return. - Edges without evidence. An unsourced
SAME_ASis a guess with a nicer name. - Treating confidence as permanent. A supplier revision can change an edge; keep the timestamp.
Where Claro fits
A product identity graph is the identity-and-resolution core of the broader Product Identity & Evidence Graph. The entities it links are product identities, and the wider structure is described in product knowledge graph.
Related
Glossary
Product Identity
The entities the graph links.
Guide
Product Relationship Types
The edge vocabulary and the lines between edges.
Glossary
Product Knowledge Graph
The broader graph the identity graph is part of.
Glossary
Entity Resolution
How candidate pairs are decided.
Article
Matching Should Produce Knowledge
Why the output of matching should be a durable edge.
Guide
Product Identity & Evidence Graph
The full model.
FAQ
What is a product identity graph?
A product identity graph links a canonical product to its identifiers, suppliers and documents with scored edges, including negative edges, that persist across supplier ingestions. It is the stored memory of identity decisions.
How is a product identity graph different from a product knowledge graph?
A product identity graph is the identity-and-resolution core: which records are the same product. A product knowledge graph is broader and also covers attributes, compatibility, classification and other relationships between products.
What is a NOT_SAME_AS edge?
A NOT_SAME_AS edge records that two products look alike but are different, such as two contactor variants that differ only in coil voltage. Keeping it stops the pair being merged in a later run and stops reviewers re-investigating it.
Does a product identity graph replace my PIM or ERP?
No. It sits alongside them. Your PIM and ERP remain systems of record, and the identity graph supplies the resolved identities and evidence that are written back to them.
Claro
See how Claro handles this in production
This concept is one piece of keeping a catalog trusted. See how Claro resolves identity, enriches missing attributes, and validates every update before it reaches your PIM or ERP.
Learn more