Let's Crack the Universal Product Code

Originally published April 1, 2017 on the Tiny Cables Medium publication.

If you’re like me, you’ve never thought much about the Universal Product Code (or UPC). There’s a barcode on everything I’ve ever purchased, sure, and the barcodes obviously corresponded to the item I bought, of course, but there are so many questions:

  • How does a UPC code work?
  • Who manages this database of (seemingly) every product ever?
  • How do I get a UPC code?
  • How much does all of this cost?

A business who sells through their own channels (e-commerce, small retail) doesn’t (technically) need a UPC code, but if there’s any intent to sell on a larger e-commerce site (like Amazon) or a brick and mortar retailer, you’d best get your hands on one.

While selling on Amazon or a brick and mortal retailer isn’t in our immediate plan, we don’t want to limit our options out of the gate. We need to get one and I don’t know the first thing about the process, so buckle up.

It turns out that I know as much about UPC codes as I do about fishing: nothing.

The UPC(-A) code is used throughout retail in the U.S. and Canada. Simply, it’s a twelve-digit code that identifies a product.

It turns out that all of those numbers mean something.

The left guard bar and right guard bar tell a scanner where to start and end the scan. They’re like playing with bumpers in bowling — keeping our beloved UPC code from throwing a gutter ball.

The number system character defines a general product category:

  • 0 — Standard UPC number
  • 1 — Reserved
  • 2 — Random weight item (fruit, meat, vegetables, etc.)
  • 3 — Pharmaceuticals
  • 4 — In-store marketing for retailers, so a store can have their own barcode that no other store will be able to read
  • 5 — Coupons
  • 6, 7, 8 — Standard UPC number
  • 9 — Reserved

The number system character does not identify the product’s country of origin, something widely represented as fact on seemingly reputable websites. It does vary based on which organization has allocated the number to the company — so if an American company registered the code, it will look different from the code of a South African company, but both products may come from China.

Sharing this picture again because you’ve probably scrolled past the first one.

The manufacturer number identifies the company.

The item number identifies the individual product. You may have heard a retailer or brand say that they offer something like “1,000 SKUs” to demonstrate how many products they offer — I thought that the item number must = SKU but they are not the same. A SKU (or Stock Keeping Unit) is a separate code for the purposes of tracking inventory at a manufacturer — in fact, a single product may have different SKUs if it’s sold by different retailers. Just a little something I learned so I thought I’d pass it along.

The check digit is a single-digit number that relies on a mathematical formula to verify that the barcode is legitimate. It’s something like: first digit multiplied by 3, plus second digit multiplied by 1, so on and so on, divided by ten. This is a final check to confirm that the number is valid. The actual formula is here.

Fun fact: the first UPC-marked item ever scanned at a retail checkout was at a supermarket in Troy, Ohio in 1974. The item? A 10-pack of Wrigley’s Juicy Fruit gum. The top song of 1974? Barbra Streisand’s “The Way We Were.”


There’s an international agency responsible for handling UPC code issuance: GS1. They are not a secret government intelligence agency from James Bond.

They issue new manufacturer numbers and UPC codes — for a fee.

Unexpected cost alert!

Each product variant needs its own UPC code. If you were to sell a single shirt that comes in three sizes, you would need three UPC codes. We expected to offer twelve cables at launch.

Therein lies a problem: the GS1 guide has a code estimator tells us that there’s a significant price jump from 10 UPC codes to 12 UPC codes. We could get 10 UPC codes for a $250 initial fee and a $50 annual fee. The initial fee for 12 UPC codes jumps to $750. Yikes.

We will need some more UPC codes down the road but we’ll cross that bridge when we get to it — we have to validate the concept with some revenue first.

We decided to trim the product line to ten. Fine. I guess we have to shell out $300.


But wait! It turns out there’s a third-party market for UPC codes.

When I Googled “buy a upc code,” I found a lot of options that were significantly cheaper:

One eBay listing promises 1,000 UPC codes for $2.19, which represented a huge savings from the $300 that I was getting ready to shell out.

Here’s the catch: these codes are sourced from all kinds of places, primarily from products that have found their way to the graveyard. Their manufacturer number can not be modified and so the barcode would never accurately point to Tiny Cables.

The biggest problem with buying a third-party UPC code is that Amazon (and other major e-retailers) say that they’ll check each UPC code to make sure your product listing matches the GS1 database.

We’re not planning to sell with Amazon but if we ever change our minds, this would be a problem. We’ll play it safe.


We’re buyin’ some UPC codes.

…which brings us to a quick hit overview of some smaller items and our financial summary as of 3/31/2017:

  • We’re looking for creative ways to test our cables for an upcoming post. If you have ideas, tweet us @cablestiny or e-mail team [at] tinycables.com. UPDATE: We built a robot. Check out the post here.
  • Our MailChimp list is growing — we’re over 60 subscribers now — and it’s highly engaged with an open rate of more than 70% and a click-through rate that hovers around 40%. If you know e-mail marketing, you know that those are some great early numbers. Small sample size but this is a good early signal. You can sign up for the mailing list at TinyCables.com, but only if you keep our open rate in mind.
  • We’ve confirmed that we’re going with FBTC (Fulfillment by Tommy’s Cousin) out of a warehouse in Texas. We’ll be getting the paperwork done on that soon.
  • We’re shopping a blog about the benefits of blogging this journey. We have some promising leads but if you know of any publications that might be interested in such a topic, tweet us @cablestiny or e-mail team [at] tinycables.com. #meta

Expense Summary

  • UPC codes: $300
  • Website hosting: $52
  • Website domains: $25.98
  • Samples: $137.17
  • Competition samples: $49.89
  • Shipping: $7
  • Logo: $3.99
  • Total: $576.03