Most "which barcode should I use?" guides give you a generic answer — "Code 128 for internal, EAN-13 for retail" — that is correct but useless. The interesting part is the second layer: the exact label size the FBA warehouse expects, whether Amazon rejects a Code 128 without a specific human-readable line, whether food code dating law requires the day-of-month to be printed under the barcode. This page is that second layer, organized by the industries we get the most questions from.
Quick picker — my industry is...
| Industry | Barcode | Label size | Print method | Common gotcha |
|---|---|---|---|---|
| Amazon FBA | Code 128 (FNSKU) | 1"×2" to 2"×3" | Thermal (Zebra/Rollo) or Avery 5160/5163 | FNSKU string must include the "X00" ASIN-linked prefix |
| WooCommerce / Shopify / Etsy | Code 128 for internal + UPC-A / EAN-13 for retail | Depends on product | Any | SKU field in the store must match the barcode value exactly |
| Restaurant / cafe | Code 128 with date + lot line | 2.25"×1.25" thermal roll | Thermal, direct-thermal is fine | Must survive walk-in cooler condensation |
| Food producer | UPC-A (retail) or Code 128 (internal lot) | Varies by package | Thermal or pre-printed | UPC prefix must be registered to your GS1 account |
| Apparel / garment | Code 128 or UPC-A | 2"×1" tag or care-label print | Thermal or textile-safe transfer | Ink must survive at least one wash cycle |
| Jewelry | Code 128 | 0.5"×1.75" barbell tag | Thermal or laser | Barcode must fit around the ring/chain hole |
| Book publishing | EAN-13 (from ISBN) | 1.5"×1.5" back cover | Included in cover art file | ISBN must be converted correctly to EAN-13 with the "978" or "979" prefix |
| Asset tracking | Code 128 or Data Matrix | 1"×2" permanent adhesive | Thermal transfer (not direct thermal) | Must last 5+ years without fading |
| Warehouse / 3PL | Code 128 | 2"×4" bin or 4"×6" pallet | Thermal, laminated for shelf edge | Consistent SKU format across all inbound suppliers |
Amazon FBA sellers
The one industry where the barcode is the compliance
Amazon FBA barcodes are FNSKUs — Fulfillment Network SKUs — that Amazon generates for you and ties to a specific ASIN in your account. The barcode itself is Code 128. What kills most first-time FBA prep jobs is not the barcode format but three specific line-item requirements:
- The human-readable line under the barcode must exactly match the FNSKU string (starts with "X00" for private-label ASINs). Some generators strip the "X00" prefix if the string is longer than the visible box — the label is technically valid, but the warehouse still rejects it.
- The product title beneath the FNSKU must match the title on your Amazon listing. An outdated cached title from before you edited the listing causes rejection.
- Labels must cover the manufacturer barcode. If the product ships with a UPC or EAN barcode already on the box, the FNSKU sticker has to be placed over that barcode, not next to it.
Smaller items (jewelry, cosmetics, small electronics) usually get labeled with Avery 5160 sheets — 30 labels per US Letter, cheap, prints on any laser printer. Boxes and larger products get Avery 5163 (2"×4") so the label plus title plus "Made in ___" text all fit. High-volume sellers move to thermal printers (Zebra ZD421 or Rollo) because 500 labels off a thermal roll cost about a third of the equivalent Avery sheet output.
Generate FNSKU labels →WooCommerce, Shopify, Etsy — direct-to-consumer stores
Internal SKU discipline is the real deliverable
For a direct-to-consumer store shipping from your own warehouse, the barcode's job is not compliance — it's making the pick-pack-ship workflow scannable so you don't put SKU-A-102 in an SKU-A-103 order. Code 128 is the right format because it accepts any string you invent and does not require a registration fee. The important discipline is that the "SKU" field in your Shopify or WooCommerce dashboard must contain the exact value that gets encoded into the barcode. If your store shows TSHIRT-BLK-XL and the barcode encodes tshirt-blk-xl, some scanners preserve the case difference and your inventory sync silently drifts.
WooCommerce-specific note: the default "SKU" field is a free text input, so nothing stops you from typing Tee (Black — XL). Barcodes love that value about as much as a URL parser loves a space. Standardize on hyphens, no spaces, ASCII only, before you generate the first label.
For products you'll also sell at retail (a farmers-market booth, a wholesale account, a physical store), you'll want a UPC-A or EAN-13 code alongside the internal Code 128. These retail formats require a GS1 registration or a reputable UPC reseller — see the Amazon barcode requirements article for the reseller landscape.
Generate SKU labels for your store →Restaurants & cafes — the wet-environment case
Date-code labels that survive the walk-in
Restaurants use barcodes for one purpose: date-and-lot labels on prepped food in the walk-in cooler. The FDA Food Code (adopted by most US health departments) requires ready-to-eat food to carry a "consume by" date. In restaurants that also want traceability — for allergen recalls, or for chain kitchens that track batch quality — the label carries a barcode encoding ITEM-YYYYMMDD-BATCH# plus a human-readable line showing the date and the initials of the prep cook.
The critical requirement is survival in a 34 °F environment with condensation cycling. Standard direct-thermal labels curl and lift after 12–24 hours. Two things solve it: switch to freezer-grade direct-thermal stock (about 2× the price of standard), or move to thermal-transfer with wax ribbon (labels last months). Either way, 2.25"×1.25" on a roll is the near-universal size — fits on the lid of a 1/6-pan or the top of a soup insert.
For chains and larger operations, integrations with Prepwizard and DayMark do the label printing. For independent restaurants, generating labels from a spreadsheet of prepped items and printing on a Rollo or Zebra ZD-series is the cheapest working setup.
Generate restaurant date-code labels →Food producers & packaged goods
UPC for retail, internal lot codes for traceability
Packaged food sold in retail stores needs a UPC-A (US/Canada) or EAN-13 (international) barcode with a prefix that traces back to your registered GS1 company account. Buying "cheap UPCs" from a reseller works for Amazon and independent stores, but Whole Foods, Costco, and most major-chain buyers verify the prefix against the GS1 database and reject products whose UPC prefix does not match the company name on the invoice.
Separate from the retail UPC, most producers also carry an internal lot code — a Code 128 barcode encoding the production date and batch number. FDA's FSMA rule 204 (Food Traceability Final Rule) requires traceability records for foods on the "Food Traceability List" (leafy greens, cheeses made from unpasteurized milk, some seafood, etc). A scannable lot code makes those records vastly easier to generate on demand.
Generate food-industry labels →Clothing, garments & apparel
Barcodes that survive washing
Apparel barcodes come in two forms with different requirements. Hang-tag barcodes are removable and only need to survive the retail journey — thermal printing on standard label stock is fine, formats are typically UPC-A for retail or Code 128 for internal tracking. Care-label barcodes are the ones sewn into the seam and must survive multiple wash cycles.
For care-label barcodes, only two print methods work reliably: thermal-transfer with a resin ribbon onto satin or polyester care-label stock, or a specialized textile printer using UV-cured ink. Standard direct-thermal fades to nothing after a single cold wash. If you're printing hang tags in-house on Avery sheets, jump straight to laser (not inkjet) — the toner is far more scratch-resistant during shipping and store handling.
Garment-specific size guidance: for hang tags on t-shirts, hoodies, and folded jeans, a 2"×1" tag with a Code 128 barcode plus SKU and price text is the industry norm. For higher-end apparel where the tag doubles as branded packaging, jump to Avery 5163 (2"×4") or a custom size — see the Avery templates guide for exact dimensions.
Generate apparel & garment labels →Jewelry & small-item retail
The barbell-tag problem
Jewelry barcodes need to fit on a "barbell" tag — a small strip with a hole punched at each end that wraps through a ring or around a chain. The barcode and price text have to fit in the ~1-inch space between the two holes. Avery 5167 (0.5"×1.75", 80 per US Letter sheet) is the closest match; specialty jewelry-tag stock from Uline or Panduit has the pre-punched holes.
Code 128 is the right symbology because internal SKUs work fine and the format handles short strings (5–8 characters) in a compact bar pattern. Anything longer than 10 characters gets too dense to scan reliably at that size. If your inventory catalog runs longer SKUs, either shorten the SKU for barcode purposes or move to a larger tag.
Price tag doubles as inventory tag: most small jewelry shops encode the SKU in the barcode and print the retail price as human-readable text. At the register, the scanner pulls the SKU, the POS system looks up the price. This works even during power outages — worst case, the cashier can read the price from the tag.
Generate jewelry tags →Book publishing — ISBN barcodes
The one industry where the barcode standard is not what you think
A book's "ISBN barcode" is an EAN-13 code, not a special ISBN-only format. The ISBN itself is a 10 or 13 digit number; to encode it as a scannable barcode, you convert the ISBN-10 to ISBN-13 by prepending 978 (or 979 for newer allocations), then encode the resulting 13-digit string as EAN-13. Most publishing platforms (KDP, Ingram, Lightning Source) do the conversion for you if you upload the barcode as part of the cover art file.
The barcode goes on the back cover in the lower-right region, typically at 1.5"×1.5" with a white background and 10 pt human-readable ISBN printed above it. Some retailers (Barnes & Noble) also require a "price add-on" — a small 5-digit code to the right of the main barcode encoding the retail price. This is optional for most online-only titles and required for physical bookstore shelving.
Generate ISBN barcodes →Fixed asset tracking & IT equipment
Labels that outlast the equipment
Fixed asset labels — the small barcodes stuck on laptops, monitors, servers, forklifts, and lab equipment — have exactly one requirement that separates them from every other barcode use case: they have to last as long as the asset does. A laptop that lives 5 years cycles through a lot of thermal and mechanical stress. Direct-thermal labels fade in months. The right stock is thermal-transfer with a resin ribbon onto polyester with an aggressive permanent adhesive.
Symbology choice depends on scanning distance. Code 128 is the default and reads on any handheld scanner. Data Matrix is the better choice when you need very small labels (½"×½" and below), because 2D formats encode more data per unit area and tolerate damage — a Data Matrix with one corner scratched still reads; a Code 128 with a scratched middle usually does not.
Common failure mode: printing asset tags on standard direct-thermal stock because it's what the office already has. Six months later half the labels are unreadable, and you have to physically inspect each asset to reconcile the inventory list. Either pay the premium for thermal-transfer or expect to redo the labeling every 6–12 months.
Generate asset tracking labels →Warehouse inventory & 3PL
Where the barcode strategy becomes an operations strategy
Warehouse barcodes split into two very different jobs. Location labels (bin, shelf, aisle) are the labels you print once and expect to keep in place for years. They benefit from lamination or overlay film so scuffing from picking carts doesn't damage them. Product labels (SKU tags on each item or case) rotate with inventory turnover, so a cheap direct-thermal is fine.
The strategic question in a warehouse is not "which barcode format" — it's almost always Code 128 — but which coding scheme. A well-designed warehouse encodes location as AISLE-BAY-LEVEL (like A-12-3) so the barcode itself is human-readable to trained staff during scanner-down periods. SKU strings that mix your internal system's identifier with a suffix indicating condition (SKU-A-NEW, SKU-A-USED) let you scan variants without switching between multiple codes per item.
3PL-specific note: if you handle inbound freight from multiple suppliers, you'll almost certainly need to re-label at receiving. Suppliers use their own SKU conventions, and imposing yours at the receiving door — even if it means an extra step per pallet — is what makes downstream pick-pack scanning work reliably.
Generate warehouse inventory labels →FAQ & cross-industry pitfalls
My industry isn't listed — what should I use?
Answer the three underlying questions: (1) Is the barcode for retail sale at a store's POS? Use UPC-A or EAN-13 with a registered prefix. (2) Is it for internal tracking only? Use Code 128. (3) Do you need to fit a lot of data in a small space or need error tolerance? Use QR Code or Data Matrix. Print method depends on volume and durability: sheets for <500/week, thermal for high volume, thermal-transfer for anything that has to survive years.
Can I use one barcode format across all industries in my business?
Yes if all your uses are internal (warehouse, asset tracking, restaurant date codes) — Code 128 handles everything. No if any of your uses hit retail POS scanning, because retail requires the registered UPC or EAN prefix and internal Code 128 will not scan through most retail POS systems (they explicitly ignore non-retail formats).
Does the free bulk barcode generator handle every industry on this page?
Yes for label generation — the generator outputs Code 128, EAN-13, UPC-A, QR Code, Data Matrix, and Code 39 with the label sizes and formats each industry needs. What it does not do is issue you a GS1 prefix, generate Amazon FNSKUs (that comes from Amazon's own system), or provide compliance sign-off for FDA / FSMA / GS1 audits. It generates the labels; the compliance decisions are yours.
Which industry has the highest barcode failure rate?
Anecdotally, apparel — because care-label barcodes need to survive washing and half the tutorials online recommend inks that do not. Second worst is asset tracking, because direct-thermal labels get printed on assets that are meant to last five years and fade at month six. Both problems are solved by upgrading the print stock, not by changing the barcode format.
How do I know if my industry needs a registered barcode prefix?
If the barcode will be scanned by a system you do not control — a retail POS, an Amazon warehouse scanner, a distributor's receiving dock — you likely need a registered UPC or EAN prefix. If the barcode will only be scanned by devices in your own operation, Code 128 with any SKU string you invent works.
Ready to generate? Head to the bulk barcode generator, paste or upload your list, pick the format from your industry section above, and download PDF / PNG / ZPL. See also the Avery templates reference for label-sheet dimensions and the thermal printer guide for direct printer output.