Understanding the EPC Standard
Electronic Product Codes Explained
How Electronic Product Codes work, their structure, encoding schemes, and role in global supply chain identification.
Understanding EPC (Electronic Product Code)
The EPC is the global standard for encoding object identity on RFID tags. Defined by EPCglobal and administered by GS1, it provides a unique, hierarchical identifier that links physical items to digital records in supply chain systems.
EPC Structure
An EPC consists of four logical parts encoded into the tag's EPC memory bank:
| Field | Bits | Purpose | Example |
|---|---|---|---|
| Header | 8 | Encodes EPC scheme/length | 00110000 (SGTIN-96) |
| Filter value | 3 | Reader filtering hint | 001 = retail item |
| Partition | 3 | Company prefix / item reference split | Varies by GS1 prefix length |
| Company prefix | 20–40 | GS1 company identifier | Allocated by GS1 |
| Item reference | 4–24 | Product/SKU identifier | Assigned by brand |
| Serial number | 38 | Unique instance | Sequential or random |
The total is 96 bits for the most common scheme (SGTIN-96), stored as 12 bytes in EPC memory bank 01.
EPC Schemes: SGTIN, SSCC, GIAI
The SGTIN (Serialised Global Trade Item Number) is the standard scheme for consumer goods — it encodes a GS1 company prefix, item reference, and unique serial number, mapping directly to a GTIN barcode plus serial.
Other schemes cover different object types:
| Scheme | Full Name | Typical Use |
|---|---|---|
| SGTIN | Serialised GTIN | Consumer items, pharmaceuticals |
| SSCC | Serial Shipping Container Code | Pallets, cases |
| GIAI | Global Individual Asset ID | Reusable assets, tooling |
| SGLN | Serialised GLN | Locations, dock doors |
| GRAI | Global Returnable Asset ID | Kegs, totes, reusables |
GS1 Encoding and TDS
The GS1 Tag Data Standard (TDS) defines the canonical encoding rules, bit-level layouts, and translation between URI, pure identity, and binary representations. Version 2.0 introduced GS1 Digital Link URIs, enabling a single QR or RFID tag to serve both human-readable web URIs and machine-readable EPC identity.
When encoding, use the EPC Encoder to convert a GTIN + serial into a valid 96-bit hex string. To decode a hex value from a tag, use the EPC Decoder.
The Tag Data Translation engine in middleware handles this programmatically, converting between binary, pure identity, and URI forms as data moves from reader to EPCIS event to ERP.
EPC Memory Layout
A Gen 2 tag exposes four memory banks:
| Bank | Name | Typical Contents |
|---|---|---|
| 00 | Reserved | Kill password, access password |
| 01 | EPC | EPC + PC word + XPC |
| 10 | TID | IC manufacturer, model, unique serial |
| 11 | User | Application-specific data |
The EPC bank is read-write (subject to lock state). TID memory is factory-programmed and read-only, providing a cryptographically unique tag fingerprint independent of the EPC.
See also: RFID Tag Memory Planning, Understanding RFID Tag ICs.
Preguntas frecuentes
Our guides cover a range of experience levels. Getting Started guides introduce RFID fundamentals. Implementation guides help engineers design RFID solutions for specific industries. Advanced guides cover topics like dense reader mode, anti-collision algorithms, and EPC encoding schemes.
Most getting-started guides require only a basic UHF RFID reader (such as the Impinj Speedway or ThingMagic M6e) and a few sample tags. Some guides reference desktop USB readers for development. All hardware requirements are listed at the beginning of each guide.