Summary Matrix
| Attribute | SKU (Stock Keeping Unit) | Barcode (UPC / EAN / GTIN) |
|---|---|---|
| Scope | Internal to a specific business | Global across all supply chains & retailers |
| Assigned By | The merchant or seller | The manufacturer via GS1 standardization |
| Format | Alphanumeric string (e.g. TSH-BLK-MD) |
Strict numerical string (e.g. 012345678905) |
| Human Readable | Yes, designed for humans to parse attributes | No, designed primarily for laser scanners |
| Cross-Store Consistency | Varies per merchant | Identical across all stores worldwide |
| Primary Purpose | Warehouse sorting, ERP sync, inventory tracking | Marketplace verification, POS checkout scanning |
Key Differences
1. Internal Scope vs. Global Standard
A SKU is tailored to a merchant’s internal warehouse workflows. Merchant A might code a blue Medium jacket as JKT-BLU-MED, while Merchant B codes the exact same jacket as 10492-BLUE-M.
In contrast, a Barcode (UPC/EAN) is registered with GS1. Both Merchant A and Merchant B will record the identical 12-digit barcode 041333021948 for that jacket.
2. Formats and Readability
SKUs contain letters, numbers, and dashes (SHIRT-RED-XL). Warehouse workers can read a SKU and immediately know which shelf bin to inspect. Barcodes are purely numeric strings read by optical barcode scanners.
Developer Takeaway
Database Schema Recommendation: Always store sku and barcode as separate fields on your variant model. Do not combine them into a single column. Provide indexing on both columns for fast lookup queries in API integrations.