Barcode Guides · 5 min read

SKU vs UPC: What Each Code Does, What It Costs, and When You Need Both

By Toolsque Team · September 2, 2026 · Updated October 21, 2026

A SKU is an internal product code you invent yourself, for free, and it only has to make sense inside your own business. A UPC is a globally registered 12 digit number licensed through GS1 that identifies the exact same product across every retailer, scanner, and marketplace that stocks it.

Most growing sellers end up with both. The SKU runs your shelves, your point of sale, and your spreadsheets. The UPC gets the product through retail checkouts and past Amazon's listing checks. This guide compares the two codes line by line, shows how one product carries both, and ends with a SKU scheme you can copy.

What a SKU is: your code, your rules

SKU stands for stock keeping unit. You create it, you own it, and it costs nothing. A typical SKU is 8 to 16 alphanumeric characters that pack real meaning into a fixed order: category, color, size, batch. TEE-BLK-M tells a warehouse picker everything in nine characters.

Uniqueness only matters inside your company. Ten thousand other shops can also use TEE-BLK-M and nothing collides, because SKUs never leave your own systems. That freedom cuts both ways: every variant needs its own SKU, so one t-shirt in 4 colors and 5 sizes is 20 SKUs, not 1.

What a UPC is: one number for the whole planet

UPC stands for Universal Product Code. The standard retail form is UPC-A: 12 digits, known inside the GS1 system as a GTIN-12. The first chunk is a GS1 company prefix licensed to the brand owner, the middle digits are an item reference the owner assigns, and the final digit is a check digit that lets scanners catch misreads. The first digits also show which GS1 office issued the prefix, which the barcode country code lookup tells you for any number.

Unlike a SKU, a UPC carries no meaning. The digits never say navy or XL. The number is a lookup key: the register scans it, the store's database returns price and description. And the number travels with the product, not the store, so the same jar of sauce scans identically at 500 different retailers.

One caution before you print anything. A barcode image and a registered number are two different things. Our free UPC barcode generator turns any 11 digits into a scannable UPC-A symbol with the check digit computed for you, which is perfect for internal labels, mockups, and testing. But a symbol that scans is not a number GS1 has licensed to you, and retail systems care about the second part.

Outside the United States most products carry a 13 digit EAN code rather than a 12 digit UPC. EAN-13 and UPC-A are both GTINs inside the same GS1 system. A UPC-A is technically an EAN-13 with a leading zero prepended: the 12 digit code 012345678905 and the 13 digit code 0012345678905 identify the same product. Most modern scanners, including those at Amazon fulfillment centers, read both without any configuration change.

This matters if you sell internationally. A product shipping to Europe needs an EAN-13, but if you already hold a US UPC you simply prepend a zero to produce the equivalent EAN. GS1 registers both formats under the same global numbering system, so one license covers both codes.

Outside the United States most products carry a 13 digit EAN code rather than a 12 digit UPC. EAN-13 and UPC-A are both GTINs inside the same GS1 system. A UPC-A is technically an EAN-13 with a leading zero prepended: the 12 digit code 012345678905 and the 13 digit code 0012345678905 identify the same product. Most modern scanners, including those at Amazon fulfillment centers, read both without any configuration change.

This matters if you sell internationally. A product shipping to Europe needs an EAN-13, but if you already hold a US UPC you simply prepend a zero to produce the equivalent EAN. GS1 registers both formats under the same global numbering system, so one license covers both codes.

SKU vs UPC: the comparison table

SKUUPC
Who assigns itYouGS1, licensed to the brand owner
Cost$0Around $30 one time per single GTIN, or a few hundred dollars plus annual renewal for a company prefix
Uniqueness scopeYour company onlyGlobal
FormatFlexible alphanumeric, usually 8 to 16 charactersFixed 12 digits (GTIN-12)
Meaning in the codeYes: category, color, size, batchNone, it is a pure lookup key
Where it is usedYour POS, warehouse, spreadsheetsRetail checkout, Amazon, Walmart, distributors
Can it changeAny time you decideStays with the product permanently
Typical barcodeCode 128UPC-A symbol
Do I need a UPC for my product?

Select where you sell. The answer changes by channel.

Where do you sell?
You need GTINs. Amazon requires a valid GS1 GTIN on most new listings. For 5 variants: 5 single GTINs at $30 each = $150 one time, no renewal. At 9 or more variants a 10 number company prefix at $250 + $50 per year works out cheaper. eBay and Etsy do not require a UPC.
Do I need a UPC for my product?

Select where you sell. The answer changes by channel.

Where do you sell?
You need GTINs. Amazon requires a valid GS1 GTIN on most new listings. For 5 variants: 5 single GTINs at $30 each = $150 one time, no renewal. At 9 or more variants a 10 number company prefix at $250 + $50 per year works out cheaper. eBay and Etsy do not require a UPC.

How one product carries both

Every sellable variant gets exactly one SKU and, if it goes to retail, exactly one GTIN, mapped 1 to 1 in your inventory table. A black medium tee might sit in your system as SKU TEE-BLK-M-26 next to UPC 012345678905, and every report, pick list, and marketplace feed joins on that pair.

In practice the two codes even live on different labels. The poly bag in your warehouse gets a Code 128 barcode of the SKU, because Code 128 encodes letters and hyphens. The hang tag or retail box gets the UPC-A symbol. On Amazon you submit both in the same listing form: the SKU field feeds your own seller reports, the product ID field takes the UPC.

When SKUs alone are enough

If you only sell through your own website, your own point of sale, market stalls, or direct invoicing, you can skip UPCs entirely and save the GS1 fees. You still want barcodes, just not registered ones. For apparel, the garment barcode generator turns a full style-color-size SKU like HOOD-NVY-L into a Code 128 label ready for hang tags, and its page covers tag sizing and label materials in depth.

The same logic covers gear that never gets sold at all. For laptops, ladders, and test equipment, print QR labels of your internal IDs with the QR code for asset tags tool, and if the inventory already lives in a spreadsheet, the QR generator from an Excel list batches hundreds of labels in one pass.

Marketplace rules and the Amazon GTIN exemption

Amazon asks for a GTIN, usually a UPC in the US, on most new product listings, and it checks submitted numbers against GS1 records. Numbers bought from cheap third party UPC resellers often trace back to some other company's prefix, and listings built on them can be blocked or removed later. If you need real UPCs, license them from GS1 directly.

The GS1 US pricing splits into two paths. Single GTINs cost a small one time fee, around $30 each with no renewal, which fits sellers with a handful of products. A company prefix costs a few hundred dollars up front plus an annual renewal and comes in capacity tiers from 10 up to 100,000 numbers, which pushes the per number cost down fast at volume.

The exemption is real but narrow. Amazon grants GTIN exemptions per category and brand, mainly for handmade goods, generic unbranded products, bundles, parts, and private label brands whose products genuinely carry no barcode. You apply inside Seller Central and upload images showing the product and packaging without a barcode, and approval is not guaranteed. eBay asks for product identifiers in many categories but still accepts listings without them, and Etsy has no UPC requirement at all. Walmart Marketplace requires a GTIN and is stricter about waiving it.

Building a SKU scheme: a worked example

A good scheme survives 5 years of new products without a rewrite. Six rules cover most of it:

  • Lead with a 2 to 6 letter style or category code: TEE, HOOD, MUG.
  • Fix your abbreviation lists once, so BLK always means black and NVY always means navy.
  • Separate segments with hyphens. Code 128 encodes them fine.
  • Skip lookalike characters like O and I, and never start a SKU with 0, because spreadsheets strip leading zeros.
  • Stay under about 16 characters so labels print small and typing errors stay rare.
  • Retire SKUs, never recycle them. A reused code poisons your sales history.

Worked example: a small apparel brand with 3 styles, 4 colors, and 5 sizes carries 3 x 4 x 5 = 60 variants, so 60 SKUs on day one. The pattern STYLE-COLOR-SIZE, plus an optional 2 digit year for batch tracking, covers all 60. The question that actually costs money is which of them need a GTIN:

VariantSKUUPC needed?
Hoodie, navy, L, own webshop onlyHOOD-NVY-LNo
Hoodie, navy, XL, own webshop onlyHOOD-NVY-XLNo
Crew tee, white, S, 2026 run, on AmazonTEE-WHT-S-26Yes, 1 GTIN
Crew tee, black, M, Amazon plus retailTEE-BLK-M-26Yes, same GTIN everywhere

If all 60 variants go to Amazon without an exemption, you need 60 GTINs, which is exactly the case where a GS1 prefix on a 100 number tier beats buying single GTINs one at a time.

Is a UPC the same as a SKU?

No. A SKU is a code you make up for your own stock, so two shops can sell the same shirt under different SKUs. A UPC is a 12 digit number licensed from GS1, and every store that sells that exact shirt scans the same UPC. One product can have one UPC and a different SKU in every store that stocks it.

What a SKU number and a UPC look like

CodeExampleHow it is built
SKUTSH-BLK-M-001Your own pattern: product type, color, size, running number. Letters and numbers allowed.
UPC-A03600029145211 digits from your GS1 prefix and item number, plus a check digit. Here the first 11 digits are 03600029145, and the check digit works out to 2.

How the check digit 2 is found: add the digits in odd positions (1st, 3rd, 5th and so on) and multiply by 3, add the digits in even positions, then take the number that brings the total up to the next multiple of 10. For 03600029145 the total is 58, so the check digit is 2. Our UPC code generator does this for you and draws the barcode.

SKU vs barcode

A barcode is only the printed symbol. A SKU is the text inside it. You can print a SKU as a Code 128 barcode for your shelves, and print a UPC as a UPC-A barcode for checkout. Asking "SKU or barcode" is like asking "phone number or phone": one is the data, the other is how it is carried. Make a SKU barcode with our Code 128 barcode generator.

PLU vs SKU

A PLU is the 4 or 5 digit number on a sticker on loose fruit and vegetables, such as 4011 for yellow bananas. PLU numbers are shared by grocery stores worldwide and assigned by the International Federation for Produce Standards (IFPS). A 5 digit PLU that starts with 9 means the organic version of the same item, so organic bananas are 94011. A SKU is still your own internal code, and a store can give the same bananas a SKU for its stock system.

SKU vs GTIN

GTIN (Global Trade Item Number) is the family name for GS1 product numbers. A UPC is a GTIN-12, an EAN is a GTIN-13, and a case code is a GTIN-14. When Amazon or Google Shopping asks for a GTIN, they want one of these GS1 numbers, not your SKU. You still enter your SKU as the seller SKU, so a listing normally has both.

By Toolsque Team. Sources: GS1 US: UPCs, barcodes and prefixes and IFPS: PLU codes, checked September 2026.

The short version

SKUs and UPCs answer two different questions: what do I call this thing, and what does the world call it. Start with a clean SKU scheme today, add GS1 numbers the day a marketplace or retailer demands them, and print each code in the symbology built for it. For more barcode and labeling walkthroughs, browse the full guides library.

Is an SKU the same as a barcode?

No. A barcode is the printed symbol a scanner reads. The SKU is the text encoded inside it. Code 128 is used to print SKUs. UPC-A is used to print GTINs. The same product often carries two barcodes on different labels, one for your warehouse and one for the checkout.

Do I need a UPC to sell on Amazon?

Amazon requires a valid GTIN on most new product listings in most categories. In the US that is usually a UPC. Exemptions exist for handmade goods, genuine generic unbranded products, and certain bundles. You apply for an exemption inside Seller Central and upload images showing packaging without a barcode.

Can I sell on eBay without a UPC?

Yes. eBay asks for product identifiers in some categories but still accepts listings without them. Listings without a GTIN reach fewer buyers, because eBay uses GTINs to match your listing to its product catalog pages.

What is the difference between a UPC and an EAN?

Both are GTINs in the GS1 global system. A UPC is 12 digits (GTIN-12) and is used mainly in the US and Canada. An EAN is 13 digits (GTIN-13) and is used everywhere else. A UPC with a leading zero prepended is a valid EAN-13, so one GS1 license covers both formats.

How much does a UPC barcode cost?

The barcode image itself is free to generate. The registered 12 digit number costs around $30 as a one time fee when you license a single GTIN directly from GS1. A company prefix covering 10 to 100,000 numbers costs a few hundred dollars up front plus an annual renewal fee, which lowers the per number cost at any meaningful volume.

Related: barcode vs QR code

Related guides

Do I Need GS1 Barcodes? An Honest Guide for Small Product Sellers An honest look at when GS1 barcodes are genuinely required, when self-generated codes work fine, what… UPC vs EAN vs GTIN: The Real Difference, With a Free Checker UPC-A and EAN-13 are the same barcode system separated by one leading zero. This guide covers… How to Make a Barcode for a Product: A Step by Step Guide From SKU to Shelf A step by step guide to putting barcodes on your products: how to decide between free…
About Toolsque
Every tool and guide here is built and tested by hand. Formulas are checked against published sources, and QR tools are verified with a real scanner before release. Read how we build and test.