How to Set Up a Barcode Inventory System for a Small Business
How do I set up a barcode inventory system for my small business?
Short answer
Decide what you will track, write a short SKU scheme, scan the manufacturer barcodes already on purchased goods, and print your own Code 128 labels only for items, bins and equipment that lack a usable code. Pair a keyboard-style scanner or phone app with software that keeps a transaction history, then keep counts honest with receiving checks and small weekly cycle counts.
On this page
You probably already have an inventory system of some kind: a spreadsheet, a clipboard, or one person who remembers which shelf holds what. Barcodes don't replace that system. They replace the typing and the guessing, so every delivery, pick and count gets recorded the same way.
This plan runs in the order you should do the work. The early steps, deciding what to track and how to name it, cost nothing. They also decide whether the later spending on labels, scanners and software pays off.
Decide what you will track
Most small businesses end up tracking three different kinds of things. Each answers a different question, so decide up front which ones you need.
- Stock items are what you sell or use up. The question is "how many do we have?"
- Locations are shelves, bins and overflow areas. The question is "where is it?"
- Assets are equipment you own and don't sell, such as laptops, label printers and hand trucks. The question is "which one is it, and who has it?"
If every product lives in exactly one spot, a location can simply be a field on the item record. Once the same product sits in two places, such as a pick shelf and an overflow pallet, you need quantities per location. Otherwise your total will be right while your pickers keep walking to an empty shelf.
Also decide what you will not barcode. Tape, poly mailers and other low-value supplies are usually better handled with a reorder point and a quick visual check. For each item you do track, choose the counting unit. If you buy mugs in cases of 24 but sell them one at a time, record that conversion once so nobody has to multiply in their head at the receiving door.
Design a SKU scheme
A SKU (stock keeping unit) is your own name for one thing you stock and count separately. You make it up, and nobody else has to recognize it. GS1 US points out that several retailers can sell the identical product under one GTIN while each gives it a different SKU in its own system (GS1 US). If the difference is still fuzzy, read SKU vs. UPC before you start naming things.
Good SKUs follow a few plain rules:
- One SKU per variant you count separately. Every size, color and pack count gets its own.
- Keep it short. Six to twelve characters prints as a smaller barcode and is easier to read aloud across a stockroom.
- Use uppercase letters, digits and hyphens only. Spaces, slashes and lowercase cause trouble in lookups, file names and some barcode types.
- Use one fixed pattern, such as category, style, then variant:
MUG-BLK-12. - Start with a letter. Excel removes leading zeros, can turn letter-and-number strings into dates, and reads digits around an "E" as scientific notation (Microsoft Support).
- Leave out anything that changes, such as price, cost, supplier or shelf location.
- Avoid look-alike characters. Letter O and zero, or letter I and one, get misread on handwritten counts.
- Never reuse a retired SKU. Old orders, returns and sales reports still point to it.
Here is what breaking those rules looks like in practice:
| Bad SKU | What goes wrong | Better |
|---|---|---|
Blue Mug Large | Spaces and lowercase; long barcode; typos in lookups | MUG-BLU-L |
000417 | A spreadsheet stores it as 417, and lookups stop matching | MUG-0417 |
OCT-4 | Excel can turn it into the date October 4 | TRY-OCT-04 |
2E5 | Excel can read it as 200,000 in scientific notation | PRT-2E5 |
CND-LAV-$18 | Price is baked in; the code is wrong after a price change | CND-LAV-08 |
SHELF3-CANDLE | Location is baked in; the code is wrong after you move it | CND-LAV-08 |
Write the rules on one page and give a copy to whoever adds new products. A scheme only works if the 301st SKU follows it as well as the first.
Choose what each barcode will carry
Most goods you buy for resale already carry a UPC-A or EAN-13 barcode holding the manufacturer's GTIN (Global Trade Item Number). Scan that code; don't cover it with your own label. In your software, store the GTIN as a barcode on the SKU record so that scanning the manufacturer's code pulls up your SKU.
You print your own label only when an item has no barcode, an unreadable one, or the same code on variants you need to tell apart. For those labels, encode your SKU exactly as written, in Code 128. Code 128 handles letters, digits and punctuation and packs pairs of digits compactly, so labels stay short. Code 39 also works and is common in older systems, but it produces a longer barcode for the same text.
Your own products are a different case. If you sell them through retailers or marketplaces that require GTINs, you need numbers licensed from GS1 US, the U.S. member organization of GS1. [VERIFY] Never invent a UPC number, because it may already belong to another company's product. This is general information, not legal or financial advice.
If your point-of-sale system only accepts UPC-shaped codes, there is a company-internal option. GS1 reserves the U.P.C. prefix 4 for Restricted Circulation Numbers used within a company, and these numbers must never be used in open trade (GS1 General Specifications). For everything else, a Code 128 SKU label is simpler.
| What you're labeling | What the barcode carries | Barcode type | Notes |
|---|---|---|---|
| Purchased goods with a manufacturer barcode | Manufacturer's GTIN (already printed) | UPC-A or EAN-13 | Link the GTIN to your SKU in software |
| Purchased goods with no usable barcode | Your SKU | Code 128 | Label the item, or its bin if the bin holds one SKU |
| Your own products sold through retailers or marketplaces | GTIN licensed from GS1 US | UPC-A | Printed on the product packaging |
| Your own products sold only by you | Your SKU | Code 128 | A UPC starting with 4 only if your POS demands it |
| Shelves and bins | Location code | Code 128 | Use a pattern that can't be mistaken for a SKU |
| Equipment and tools | Asset number | Code 128 or QR Code | Durable material; record in an asset list |
| Cases you ship to a retailer | Case-level GTIN | ITF-14 or GS1-128 | Only when a trading partner asks for it |
Label your stock and locations
Give locations their own pattern so a scanner can't confuse a shelf with a product. A common layout is unit, shelf, position: A-3-2 means shelving unit A, shelf 3, position 2. Put shelf labels on the front edge at a consistent height, and bin labels on the face that points into the aisle.
When one bin holds one SKU, label the bin instead of every unit inside it. Label individual units only when they leave the bin without their packaging, or when two similar items share a bin. Fewer labels means fewer labels to replace.
For the printer, you have three realistic choices. Direct thermal printers need no ribbon, but the labels fade with heat and light, so they suit short-lived labels. Thermal transfer printers use a ribbon and produce durable labels for shelves and equipment. Laser printers with label sheets work for low volumes when you already own one. The trade-offs are covered in barcode label printers and labels.
Before printing hundreds of labels, print ten. Our barcode generator makes Code 128 labels as SVG or PNG files in your browser, and nothing you type is sent to a server. Scan each test label with every device you'll use, at the distance you'll actually scan from.
Pick your scanners
USB keyboard-wedge scanners are the simplest option. The scanner acts like a keyboard and types the decoded data into whatever field has the cursor, usually followed by Enter. It's a common factory setting; one manufacturer's quick start guide, for example, marks USB Keyboard HID as the default for USB connections (Zebra). In this mode a scanner works with spreadsheets and web apps without special drivers.
Bluetooth scanners work the same way without the cord, which helps when the shelves are far from the computer. Check how a model behaves when it loses its connection before you rely on it for counts.
Phone apps use the camera. Google's ML Kit, a scanning library developers can build into Android and iOS apps, reads Code 128, Code 39, EAN, UPC, ITF and QR Code on the device without an internet connection (Google for Developers). A phone is fine for occasional receiving or counting, but slower than a dedicated scanner when you scan hundreds of items a day.
One rule matters more than the brand: laser and linear-imager scanners read only linear barcodes. If you plan to scan QR codes anywhere, buy a 2D imager. How barcode scanners work explains the difference.
Choose a software category
You don't need to pick a product yet, but you do need to pick a category. Each fits a different stage of business.
| Category | Fits when | Watch for |
|---|---|---|
| Spreadsheet | One person, one stockroom, a few hundred SKUs | No automatic history; edits overwrite each other; formulas break when rows move |
| Dedicated inventory app | Several people, bin locations, purchase orders, cycle counts | Per-user pricing, import and export options, label printing support |
| Inventory in your POS or e-commerce platform | You already sell through one, mostly from one channel | Limited bin, receiving and counting features; sync between channels |
Whatever you choose, check for these features before you commit:
- A transaction log showing who changed which quantity, when and why.
- More than one barcode per SKU, so a manufacturer GTIN and your own label both find the same record.
- Quantities per location, if your stock lives in more than one spot.
- CSV import and export, so you can leave later without retyping everything.
- Plain keyboard input from a scanner, so you aren't locked into specific hardware.
A spreadsheet is a fine place to start, and barcodes in Excel and Google Sheets shows how far you can push it. Move to an app when a second person starts editing counts, or when you can no longer explain why a number changed.
Set up receiving, picking and counting
The barcodes only help if every movement of stock goes through a scan. Write each routine down in a few lines and tape it near the place it happens.
Receiving
Check the delivery against the purchase order first. Then scan each product once and type the quantity, rather than scanning 24 identical units one by one. If a barcode comes up unknown, stop and resolve it on the spot: it's either a new item or a manufacturer code you haven't linked to a SKU yet. Finish by scanning the location label where the stock goes, then the item.
Picking and packing
Print pick lists sorted by location so the picker walks the room once. At each stop, scan the location, then the item. The scan catches a common picking error, grabbing the neighboring size or color, before the box is sealed.
Cycle counts
Instead of closing for one big annual count, count a few locations every working day so each location gets counted on a regular schedule. Count fast movers and expensive items more often. Use blind counts, where the counter doesn't see the expected quantity, so people count what's there rather than confirm what the screen says.
When a count doesn't match, recount before adjusting. Then record a reason, such as damaged, receiving error, mis-pick or unknown. The reasons tell you which process to fix.
Adjustments and returns
Every quantity change, including damage and write-offs, should go through the software with a reason attached. Inspect returns before scanning them back into a sellable location, and give damaged stock its own location code so it doesn't get picked.
Roll it out and audit it
Changing over is mostly preparation. Follow these steps in order:
- Export or write out your current item list, remove duplicates, and assign a SKU to every item using your one-page rules.
- Write down every location code and sketch a simple map of the room.
- Link existing manufacturer GTINs to SKUs by scanning each product once into its record.
- Print a test set of labels in your chosen size and material, and scan each one with every device you'll use.
- Label all locations first, then the items and bins that need your own labels.
- Do a full count to set starting quantities, with no stock moving in or out while you count.
- Go live. From this day on, nothing moves without a scan.
- Start cycle counts in the first week and record the variance for each count.
- After 30 days, audit: pick 20 random SKUs, count them, and compare. Review the unknown-barcode log and the adjustments by reason.
- Fix the cause of any repeating variance, whether it's a confusing label, a skipped scan or a training gap, before adding new features.
Keep one simple measure going forward: the share of counted locations that matched the system with no adjustment. If that share drops, look at the adjustment reasons before blaming the counters.
Worked example: a 300-SKU online shop with one stockroom
Here is how the plan plays out for a hypothetical online kitchenware shop. It stocks 300 SKUs in one back room, and two people handle receiving and shipping.
What to track. About 210 SKUs are bought from suppliers for resale. Of those, 190 arrive with manufacturer UPCs and 20 have no barcode at all. The other 90 SKUs are the shop's own brand: 30 designs in three sizes, sold on its own site and on one marketplace. Shipping supplies are left out and handled with a reorder point.
SKUs. Every SKU follows category, style, variant: MUG-BLK-12, TWL-STR-L. None starts with a digit, and none contains a price or a location.
Locations. The room has six shelving units (A to F), five shelves each, and four positions per shelf, for 120 locations coded A-1-1 through F-5-4. Because location codes start with a single letter followed by a digit, they can't be mistaken for SKUs.
What gets printed.
- 120 location labels in Code 128, thermal transfer, stuck to shelf edges.
- 20 SKU labels in Code 128 for the bins holding the unbarcoded supplier items.
- No labels for the 190 supplier items with UPCs. Their GTINs are linked to SKUs in the software.
- UPC-A barcodes on the packaging of the 90 own-brand products, using GTINs licensed from GS1 US, because the marketplace requires them. [VERIFY]
Hardware and software. One USB scanner sits at the packing desk and one Bluetooth scanner goes to the shelves. The shop started in a spreadsheet but moved to a dedicated inventory app once two people were editing counts and the shop needed quantities per location.
Daily routine. A supplier carton of 24 mugs arrives. The receiver scans the UPC once, types 24, scans A-3-2, and shelves the mugs. Orders print sorted by location. Every working day, someone blind-counts six locations, which covers all 120 locations about once a month. The 30 fastest sellers also get a weekly count.
First audit. After 30 days, the shop counts 20 random SKUs. The adjustment log shows most variances on two look-alike towel sizes, so the shop moves them to non-adjacent bins and reprints their labels with the size in large text.
Next step
Write your SKU pattern and your location pattern on one page, then label a single shelving unit and run it for a week: receive, pick and count it only by scanning. Make the test labels in the barcode generator, and fix whatever trips you up on that one unit before you label the rest of the room.
Sources
- GS1: GS1 General Specifications Standard, Release 26.0
- GS1 US: What is a GTIN?
- GS1 US: Types of Barcodes
- Microsoft Support: Keeping leading zeros and large numbers
- Google for Developers: Barcode scanning | ML Kit
- Zebra Technologies: DS8178 Digital Scanner Quick Start Guide