Barcodes used to require dedicated label software and an IT department. Now you can generate a print-ready barcode in about ten seconds, directly in your browser.
Here's what the different formats mean and which one you actually need.
The Barcode Formats That Matter
There are dozens of barcode standards, but most use cases fall into a handful of formats.
Code 128 is the most versatile. It encodes any ASCII character — letters, numbers, punctuation — and is used for shipping labels, inventory systems, event tickets, and anywhere a custom internal code makes sense. If you're not sure which format to use, start here.
EAN-13 is the standard for retail products sold internationally. The 13-digit number includes a country code, manufacturer code, and product code. If you're selling a product in a store, the retailer likely requires EAN-13.
UPC-A is the North American equivalent of EAN-13 — 12 digits, seen on virtually every product sold in US and Canadian retail. UPC-A is actually a subset of EAN-13 (an EAN-13 starting with 0).
EAN-8 is a shorter version of EAN-13 for small products where a full barcode won't fit — think lip balm, matchboxes.
Code 39 is an older standard still used in manufacturing, defense, and healthcare. It encodes uppercase letters and digits but not lowercase. Less dense than Code 128, so it requires more physical space for the same data.
ITF-14 encodes 14 digits and is used on outer cartons and shipping containers. It's the barcode on the box that holds the boxes.
How to Generate One
The Barcode Generator on this site handles all six formats above. It runs in your browser — the barcode is rendered locally, nothing is sent anywhere.
- Type or paste the value you want to encode
- Select the format (Code 128 for custom data, EAN-13/UPC-A for retail products)
- Download as PNG
The PNG is high-resolution and suitable for printing directly on labels, inserting into Word documents, or embedding in design files.
A Few Things to Get Right
Data validation matters. EAN-13 and UPC-A have a check digit — the last digit is calculated from the others using a specific algorithm. If you type a random 13-digit number, the barcode may scan successfully but fail validation at point-of-sale systems. The generator handles the check digit automatically if you enter the first 12 digits.
Size affects scannability. A barcode that's too small or printed at low resolution won't scan reliably. For label printing, aim for a barcode that's at least 1 inch wide. The PNG output is sized for crisp rendering — don't scale it down too aggressively.
Quiet zones are required. Every barcode standard requires blank space on each side of the barcode (called the quiet zone) for scanners to find the start and end of the code. Don't crop the image right up to the bars.
When You Need an Official GS1 Barcode
If you're selling retail products, your EAN-13 or UPC-A barcode needs to be registered with GS1 — the global standards organization. GS1 assigns manufacturer prefixes, which is what makes your barcode globally unique and readable at any retailer's POS system.
For internal use — warehouse inventory, event badges, library books, internal asset tracking — no registration is needed. You control the numbering scheme yourself.
What Each Industry Actually Uses
Barcode format choice is mostly decided by the industry and application, not personal preference. Here is what you will actually encounter in each context:
Retail (consumer products) — EAN-13 for international sales, UPC-A for North American retail. These are the barcodes on every product in a grocery or department store. Retailers scan them at point of sale, distributors scan them at receiving, and logistics systems track them through the supply chain. Registration with GS1 is required for these formats to work globally.
Shipping and logistics — Code 128 is the dominant format on shipping labels. FedEx, UPS, and USPS all use Code 128 for tracking numbers. The format handles alphanumeric tracking codes efficiently and scans reliably on curved or partially damaged label surfaces.
Warehouse and inventory management — Code 128 for internal SKUs and bin locations, ITF-14 for carton-level tracking. If you are building an internal inventory system, Code 128 with a simple sequential numbering scheme is the practical starting point — no registration required, no check digit to manage manually.
Healthcare — Code 128 and Code 39 appear in pharmacy labeling and patient wristbands. Older healthcare systems still use Code 39 because of its early adoption in the industry. New implementations use Code 128 for better data density.
Events and access control — Code 128 for printed tickets and badges. QR codes for mobile tickets (smartphones read them without a dedicated scanner). For high-volume events where people scan in at turnstiles, traditional barcodes on paper tend to be more reliable than QR codes on bright phone screens in direct sunlight.
Libraries and asset tracking — Code 128 or Code 39 for book spine labels and equipment tags. Simple sequential numbering, no external registration, controlled internally.
Print Specifications That Actually Matter
A barcode that looks fine on screen may not scan in print. The variables that cause print failures are specific and preventable.
Minimum width — Code 128 should be at least 1 inch (25mm) wide in the final printed output. EAN-13 has a standard minimum size of 80% of the nominal size (about 29mm wide). Narrower than this and scanner lasers may miss bars.
Resolution — Print at a minimum of 300 DPI. 600 DPI is better for label printers. The PNG exported from the generator is sized for clean output at standard label sizes — do not stretch it beyond 100% of the original dimensions or you will introduce blur.
Quiet zones — The white space to the left and right of the bars is part of the specification, not just padding. Code 128 requires at least 10× the narrow bar width on each side. EAN-13 requires specific quiet zone measurements encoded in the standard. Cropping the image to the edge of the bars will cause scan failures.
Test before committing — Print a single label on the actual material (thermal label paper, sticker stock, cardboard) and scan it with a dedicated barcode scanner before printing a full run. Phone cameras are more forgiving than warehouse scanners. A code that scans on a phone but not a laser scanner will cause problems at the point it matters most.
QR Codes vs. Barcodes
If you need to encode a URL, contact information, or Wi-Fi credentials rather than a numeric product code, a QR Code Generator is the better fit. QR codes hold significantly more data than traditional barcodes, and every smartphone camera reads them without a dedicated scanner.
For keeping a deployment log of which barcodes are assigned to which products or locations, the Markdown Notes editor is a quick local record — no account required and nothing sent to a server. If you're calculating product pricing or margins before going to print, the Profit Margin Calculator handles gross margin and markup calculations.
Frequently Asked Questions
What is the difference between Code 128 and EAN-13?
Code 128 encodes any ASCII character and is used for internal tracking, shipping, and inventory. EAN-13 encodes exactly 13 digits and is the international retail standard — it is required by most retailers for products sold in stores. Use Code 128 for custom internal data and EAN-13 or UPC-A for retail products.
Does the Barcode Generator upload my data to a server?
No. The Barcode Generator renders barcodes entirely in your browser. The data you enter never leaves your device, and there is no account required.
What resolution should a barcode be for printing?
The PNG output from the generator is sized for clean printing. For labels, aim for a minimum physical width of 1 inch and do not scale the image down too aggressively. Low resolution or heavy scaling produces bars that blur together and fail to scan. Always test the printed barcode on the actual label material before printing a full run.
Do I need to register with GS1 to use a barcode I generate?
Only if the barcode will appear on retail products sold through stores or distributors. GS1 registration is required for EAN-13 and UPC-A codes used at retail point-of-sale systems. For internal use — inventory, event tickets, asset tracking, library books — no registration is needed. You define the numbering scheme yourself.
Can I generate a barcode for free and use it commercially?
Yes, for internal use. Barcodes generated with Code 128 for internal tracking have no licensing requirements. For retail products requiring EAN-13 or UPC-A, the barcode itself is free to generate, but you need a GS1 company prefix to ensure the number is globally unique and will scan correctly at retail checkouts.
Quick Checklist
- [ ] Identified the correct format for your use case (Code 128 for internal, EAN/UPC for retail)
- [ ] Entered a valid value for the format (correct digit count for EAN/UPC)
- [ ] Downloaded the PNG and verified it scans correctly before printing in bulk
- [ ] Left adequate quiet zones when placing the barcode in a design
- [ ] Registered with GS1 if the barcode will be used in retail distribution