Walk into any busy shop at closing time and ask, “How many black school shoes in size 7 are left?” If the answer needs someone to go and check the rack, the shop doesn’t have a stock problem; it has a naming problem. This guide explains how to create SKU codes that your staff can read at a glance and your billing software can count without mistakes. You’ll get a simple structure, worked examples from textile, footwear, grocery and hardware shops, the mistakes to avoid, and how SKUs fit with the barcodes already printed on your products.
You don’t need special tools to start. A notebook or a spreadsheet is enough to design the system; the software comes in when you load it into your item master.

What is an SKU, and how is it different from a barcode?
SKU stands for stock keeping unit. It is a code your shop creates for every distinct item you stock and sell. “Distinct” is the key word: a cotton shirt in size 40 blue and the same shirt in size 42 blue are two SKUs, because you need to count and reorder them separately.
A barcode is different in three ways:
- Who creates it: most packaged goods arrive with a manufacturer barcode (usually a GS1 EAN-13 number). You don’t choose it. Your SKU is your own internal code.
- Who reads it: a barcode is made for scanners. An SKU is made for people: staff, buyers and you, reading a stock report.
- What it tells you: a manufacturer barcode is a meaningless number to your staff. A well-built SKU like
SH-PEB-40-BLUtells anyone that it’s a shirt, from the brand you’ve coded PEB, size 40, blue.
In good billing software, one item record holds both: the SKU as the item code, and one or more barcodes mapped to it. Scanning the barcode at the counter finds the SKU, and every sale reduces stock on the right line.
How to create SKU codes: a simple structure that works
Most retail SKU systems follow the same pattern: go from the broadest attribute to the most specific, and separate each part with a hyphen.
Category – Brand or supplier – Model or style – Size – Colour or variant
You won’t need every part for every shop. A grocery store might only need category, brand and pack size. A textile shop needs almost all of them. Pick the parts that actually change how you buy, price or count stock.
Rules that keep SKUs clean
- Keep it short. Aim for 8 to 12 characters plus hyphens. Long codes get mistyped and don’t fit on shelf labels.
- Use only capital letters, numbers and hyphens. No spaces, slashes, dots or special characters; they break spreadsheet imports and searches.
- Fix the length of each part. If category is two letters, it is always two letters. Fixed parts make codes sort neatly in reports.
- Avoid letters that look like numbers. O and 0, I and 1, S and 5 get confused on handwritten lists. Many shops skip O and I in codes entirely.
- Don’t start with zero. Spreadsheets quietly drop leading zeros, so
0042becomes42and your import no longer matches. - Never put price, date or location in the SKU. Those change. An SKU should stay the same for as long as the item exists.
- Never reuse a retired code. If a style is discontinued, its SKU stays retired so old bills and reports still make sense.

SKU code examples for different shops
Here is how the same idea adapts to different trades. The brand and supplier abbreviations below are made-up examples; use your own.
| Shop type | Structure | Example SKU | What it means |
|---|---|---|---|
| Textile / readymade | Category-Brand-Style-Size-Colour | SH-PEB-F12-40-BLU | Shirt, brand PEB, formal style 12, size 40, blue |
| Footwear | Category-Brand-Model-Size-Colour | SC-KLM-204-07-BLK | School shoe, brand KLM, model 204, size 7, black |
| Grocery / supermarket | Category-Brand-Item-Pack | RC-KNR-MAT-5KG | Rice, brand code KNR, matta rice, 5 kg bag |
| Hardware | Category-Type-Size-Finish | SC-WD-25-ZN | Screw, wood screw, 25 mm, zinc finish |
| Mobile accessories | Category-Brand-Compatible model-Colour | CV-GEN-A15-CLR | Back cover, generic, fits phone model A15, clear |
Notice the size part in the footwear example: 07, not 7. Padding sizes to two digits means sizes 7, 8, 9 and 10 sort in the right order in your stock report instead of 10 appearing before 7. (It’s also fine because the zero isn’t at the start of the whole code.)
A worked example: setting up a small textile shop in Thrissur
Say a shop stocks men’s shirts, trousers and kids’ wear from four suppliers. The owner sits down with a notebook for one evening and makes four short lists:
- Category codes: SH (shirt), TR (trouser), KW (kids’ wear), IN (innerwear).
- Brand codes: three letters each, written once and never changed.
- Size codes: collar sizes as two digits (38, 40, 42), waist sizes as two digits (30, 32, 34), kids’ ages as two digits (02, 04, 06).
- Colour codes: three letters (BLU, BLK, WHT, GRY, NAV, MRN).
Now any new arrival gets its code in seconds. A navy formal trouser, style 8, waist 34 from brand PEB becomes TR-PEB-F08-34-NAV. Staff can read it off a tag, and the owner can filter all TR- items in the stock report to see trouser stock at a glance.
Mapping SKUs to barcodes
This is where many shops get confused. You don’t have to choose between SKUs and barcodes; you link them.
- Items that already have a manufacturer barcode (packaged groceries, cosmetics, branded electronics): create the SKU in your item master and add the manufacturer barcode to the same item. Scanning at the counter finds the right SKU.
- Items without a barcode (loose textiles, unbranded footwear, hardware in bulk, own-packed staples): print your own barcode labels from the item master. Many shops simply encode the SKU itself, or a short internal number linked to it, in the label.
- One SKU, more than one barcode: the same product sometimes arrives with different barcodes from different batches or pack designs. Map all of them to one SKU so stock stays on a single line.
- Pack sizes: a single soap and a pack of four are different SKUs if you sell both, even though they’re the same product. If you buy in cartons and sell in pieces, use units of measure in the item master instead of a separate SKU for the carton.
Our guides on barcode billing software and barcode label printing software go deeper into scanners, label sizes and printing your own codes.

Common SKU mistakes (and how to avoid them)
Using the supplier’s code as your SKU
It looks convenient, but two suppliers can use the same code for different things, and if you change suppliers your codes become meaningless. Keep the supplier’s code in a separate field if you need it for purchase orders.
Making codes so detailed nobody uses them
A 25-character SKU that includes fabric, season and fit will be ignored at the counter. If an attribute doesn’t change how you buy or count stock, leave it out of the code and keep it in the item description.
Creating new SKUs for the same item
When staff can’t find an item quickly, they create a new one. Six months later you have “Coconut Oil 200ml”, “COCONUT OIL 200 ML” and “Coconut oil bottle 200” with stock split across all three. Fix this by allowing only one or two people to create items, and by searching before creating.
Mixing up SKU and HSN code
The HSN code is a GST classification that many different items share; it decides the tax rate, not the stock line. Both belong on the item master, but they do different jobs. See our guide to HSN and SAC codes in billing software for that side.
No written key
If the meaning of your codes lives only in the owner’s head, the system breaks the day a new manager joins. Keep a one-page key of category, brand, size and colour codes, and update it whenever you add a value.
Rolling out SKUs in an existing shop
If you already have hundreds of items in the system, don’t try to recode everything in one weekend. A practical order:
- Write the key first. Agree on category, brand, size and colour codes before touching any item.
- Start with fast movers. The top-selling categories give the biggest benefit in stock accuracy and reorders.
- Export, recode in a spreadsheet, re-import. This is faster and safer than editing items one by one. Check for duplicates before importing.
- Do a physical count category by category. New SKUs are a good moment to correct stock quantities. Our guide on opening stock entry in billing software walks through counting and entering stock you can trust.
- Label the shelf and the item. Shelf-edge labels with the SKU make restocking and counting quicker.
- Merge duplicates as you find them. Move stock to the correct SKU and mark the duplicate inactive rather than deleting it, so old bills still open.
How Caddayn Biller helps
An SKU system is only as good as the software that holds it. Caddayn Biller keeps your item codes, barcodes, units of measure and GST details in one item master, supports barcode billing at the counter, and gives you inventory with low-stock and reorder alerts so each SKU tells you when to buy more. It runs as a Windows app and a web app, and works across multiple branches when you grow. If you’re planning a recode, try it with a few of your categories first and see how quickly stock reports start to make sense.

Frequently asked questions
Can I use the manufacturer’s barcode number as my SKU?
You can, but it’s not ideal. Barcode numbers are long and mean nothing to staff, and items without barcodes would need a different system anyway. It’s cleaner to create your own SKU and map the barcode to it.
How long should an SKU code be?
Short enough to read and type easily: around 8 to 12 characters, with hyphens between parts. If codes are growing beyond that, you’re probably including attributes that belong in the description instead.
Do I need a separate SKU for each size and colour?
Yes, if you stock and reorder sizes and colours separately, which most textile and footwear shops do. Otherwise you’ll know you have “20 shirts” but not which ones are about to run out.
Is an SKU required for GST billing?
No. GST invoices need details like the HSN code, tax rate and taxable value, not your internal SKU. SKUs are for your own stock control, though they make GST billing faster because every item is set up correctly once.
What should I do with old SKUs for discontinued items?
Mark them inactive, don’t delete them, and never give the same code to a new item. Old bills and sales reports will still point to the right product.
