SKU vs MPN vs GTIN: What Each Identifier Does and Why All Three Matter
SKU vs MPN vs GTIN explained: who owns each code, how they differ, and why confusing them breaks matching, dedup, and enrichment.
Every MRO distributor, CPG brand manager, and PIM administrator has faced the same catalog wreck: a supplier sends a price update keyed to MPNs, your ERP holds internal SKUs, your marketplace requires GTINs, and none of the three columns align. The result is duplicate entries, mis-priced items, and enrichment that never lands on the right record. Understanding what each identifier actually does — and where it breaks — is the prerequisite for fixing it.
Claro’s identity and matching layer was built specifically for this tangle. It ingests supplier feeds, maps MPNs and GTINs against your internal SKUs, resolves every combination to one canonical record, and writes the trusted result back into your PIM or ERP — so the fix is permanent, not a spreadsheet you inherit from the last consultant.
What Each Identifier Does
A SKU (Stock Keeping Unit) is an internal, seller-controlled identifier. You mint it, you own it, and it usually encodes how your business handles the item: pack size, warehouse location, channel, or merchandising logic. Two distributors selling the identical pump will carry different SKUs for it, and the same item can have several SKUs inside one company if it is sold in different units or bundles.
A MPN (Manufacturer Part Number) is assigned by the brand that makes the product. It is stable across every reseller — the manufacturer prints the same MPN on the datasheet, the carton, and the catalog page — but it is not guaranteed to be globally unique. Two unrelated manufacturers can independently choose the same string (for example, a part number like 100-2), which means MPN alone is never a safe match key.
A GTIN (Global Trade Item Number) is the number behind a UPC, EAN, or ITF-14 barcode, allocated under the GS1 system. It is designed to be globally unique to a specific trade item at a specific packaging level, with a check digit that lets any system validate it on ingestion.
The practical hierarchy: GTIN identifies the trade item worldwide; MPN identifies the part within a manufacturer; SKU identifies the unit within your operation.
| Identifier | Assigned by | Scope | Globally unique? | Validatable? |
|---|---|---|---|---|
| SKU | The seller (you) | Internal operations | No | No standard rule |
| MPN | The manufacturer | Per manufacturer | Not guaranteed | No standard rule |
| GTIN | GS1 member companies | Global trade item | Yes, by design | Yes — via check digit |
Why SKU vs MPN vs GTIN Breaks Product Data
The three identifiers fail in different ways, and product-data work lives in those failure modes. SKUs are unique to you but meaningless to anyone else, so they cannot be used to match against a supplier feed or a marketplace listing. MPNs travel between trading partners but arrive dirty — inconsistent punctuation, dropped leading zeros, casing differences — so naive equality checks miss real matches. GTINs are clean and globally unique but frequently missing, reused incorrectly across packaging levels, or pasted into the wrong column.
Consider an MRO distributor ingesting a manufacturer price file. The supplier sends MPN and GTIN; the distributor’s ERP keys everything on internal SKUs. To enrich the catalog, the system must link SKU 4471-A (internal) to MPN GG-NV-100 (manufacturer) to GTIN 00012345678905 (global) — three identifiers, one bearing. Get that linkage wrong and you create a duplicate, mis-price an item, or publish a listing that an AI shopping assistant cannot verify. The same pattern recurs in CPG (a beverage case carries one GTIN, each can another), in furniture (one model, many fabric SKUs, a shared MPN), and in industrial supply (a fastener with a GTIN at carton level but loose units sold by your own SKU).
Resolving these identities is exactly the job of a canonical product record: collapse every SKU, MPN, and GTIN that refers to the same physical item into one trusted entity, then enrich and syndicate from there.
Before and After: Messy Identifiers vs Trusted Catalog
| Before — identifier tangle | After — Claro-resolved catalog |
|---|---|
| Supplier MPN and internal SKU live in separate, unlinked spreadsheets | Every SKU is mapped to its source MPN and GTIN in one canonical record |
| MPN arrives as 'GG NV100', 'GG-NV-100', and 'GGNV100' — three apparent products | Normalized MPN matches all three variants to one product entity |
| GTIN column is blank for 30% of the catalog; GTIN-12 and GTIN-13 mixed | Missing GTINs resolved via MPN-plus-brand fallback; lengths padded consistently |
| Duplicate SKUs created each time a supplier sends a reformatted part number | Dedup runs on resolution output — no new duplicate created for a known product |
| AI search returns inconsistent specs because the same product has five records | One authoritative record per product; AI cites a single trusted source |
Matching Strategy: Which Identifier to Use When
Effective matching follows a waterfall:
-
Match on GTIN first. It is globally unique and self-validating. Use GTIN / EAN / UPC Validator to strip leading zeros, normalize length, and confirm the check digit before matching.
-
Fall back to MPN + brand pair. MPN alone is not safe because the same string can appear under different manufacturers. Normalizing punctuation and casing first with the MPN Normalizer cuts false negatives dramatically.
-
Use attribute-level similarity when both are absent. Product name, dimensions, voltage rating, and classification code (ETIM, ECLASS) form a probabilistic fingerprint. This is where deterministic rules end and fuzzy matching begins.
-
Tie the resolved match back to your SKU. Once you know which MPN and GTIN a SKU corresponds to, store all three together. That mapping is the canonical product record — the foundation every downstream system reads from.
Related
Glossary
GTIN vs EAN vs UPC
How the barcode standards relate and why a UPC is really a GTIN.
Glossary
Canonical Product Record
Collapsing many identifiers and sources into one golden record.
Glossary
Data Normalization
Why MPNs must be normalized before they can be matched.
Comparison
GTIN vs MPN vs SKU — Side-by-Side
A structured comparison of all three identifier types for catalog teams.
Tool
MPN Normalizer
Standardize punctuation and casing in manufacturer part numbers.
Tool
GTIN / EAN / UPC Validator
Check digit and format validation for trade item numbers.
FAQ
Can a product have a SKU but no GTIN or MPN?
Yes. Private-label goods, custom kits, services, and freight items often have only an internal SKU. Many long-tail items also lack a GTIN because the supplier never registered one with GS1. This is normal — but it means you cannot rely on a single universal key, and your matching logic has to fall back to attributes when GTIN and MPN are absent.
Is a UPC the same as a GTIN?
A UPC is one encoding of a GTIN. A 12-digit US UPC is a GTIN-12; a 13-digit European EAN is a GTIN-13. Adding a leading zero to a UPC-A gives you the GTIN-13 form most systems store. They are the same number expressed at different lengths, which is why padding and length handling matter. See GTIN vs EAN vs UPC for the full breakdown.
Why do two different products sometimes share the same MPN?
Because manufacturers assign MPNs independently, and the namespace is not coordinated globally. A part number like 200 could belong to many unrelated brands. That is why MPN should always be matched together with the manufacturer name or brand, never on its own — pairing MPN with the brand makes it effectively unique.
Which identifier should I match on first?
Match on GTIN first when present, because it is globally unique and check-digit-validated. Fall back to the MPN-plus-brand pair next. Use your own SKU only as the local key that ties a resolved match back into your systems — never as a cross-company match key, since it means nothing outside your business.
Should I store SKU, MPN, and GTIN in separate fields?
Always. Each carries different meaning and different uniqueness guarantees, and downstream consumers — ERPs, marketplaces, and AI search engines — expect them as distinct attributes. Overwriting one with another is a common cause of silent data loss that breaks matching, deduplication, and provenance tracking.
How does Claro use all three identifiers together?
Claro’s identity layer ingests supplier feeds that carry MPNs and GTINs, maps them against your internal SKUs, and resolves every combination to one canonical product record. Where identifiers are missing, inconsistently formatted, or duplicated, Claro applies probabilistic matching and attribute-level scoring to fill the gap — then writes the enriched, resolved record back into your PIM or ERP so the mapping is permanent, not a spreadsheet you maintain by hand.
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