Standard 2 of 5 Barcode Generator
Create EAN, UPC, Code 128 and other 1D barcodes.
Create Standard (Industrial) 2 of 5 barcodes — a simple numeric code for older industrial systems.
- 100% FreeNo sign-up required
- PrivateWorks in your browser
- High QualityPNG, SVG, PDF and print
- 17 FormatsEAN, UPC, Code 128, GS1…
How to use this tool
Steps for using the Barcode Generator.
- Pick a barcode type — retail (EAN-13, UPC-A…), linear (Code 128, Code 39, ITF-14…), postal or GS1 — or open its own page.
- Type the data. The format's rules are checked as you type and check digits are calculated or verified; nothing is changed without telling you.
- Adjust colours, bar width, height, quiet zone, text and rotation under Customize Appearance.
- Press Generate Barcode, then Download PNG, SVG or PDF, Print, or Copy the data. For many codes, upload a CSV under Batch Barcode Generation.
Example
EAN-13 with the check digit added
5901234123455901234123457
Check digit 7 (GS1 mod-10)Common use cases
- Printing EAN-13 or UPC-A barcodes for products you've registered with GS1
- Labelling stock, bins and assets with Code 128 or Code 39
- Marking shipping cartons with ITF-14
- Encoding batch and expiry dates in GS1-128 for the supply chain
- Creating hundreds of barcodes from a spreadsheet in one ZIP
1D barcodes, check digits and choosing a format
A 1D (linear) barcode stores data in the widths of parallel bars and spaces. EAN-13 and UPC-A carry retail product numbers (GTINs); EAN-8 and UPC-E are short versions for small packs; ITF-14 marks cartons; Code 128 and Code 39 carry free text such as serial and shipping numbers; GS1-128 and GS1 DataBar add structured data like batch, expiry and weight using GS1 Application Identifiers.
Retail and carton codes end in a check digit that lets scanners catch misreads. It is calculated with the GS1 mod-10 rule: from the right, digits are weighted 3, 1, 3, 1…, summed, and the check digit brings the total up to a multiple of 10. Enter the data digits and it's added for you; enter the full number and it's verified — a wrong check digit is reported, never silently fixed. UPC-E's check digit comes from the UPC-A number it expands to.
Barcodes are drawn with bwip-js, a port of the reference Barcode Writer in Pure PostScript, which validates each symbol again before drawing. Keep the quiet zone (blank margin) on both sides, use dark bars on a light background, and print at a bar width your printer can reproduce cleanly.
A barcode that is valid in format isn't the same as a registered product number: retail EAN/UPC numbers come from your GS1 member organisation, and postal codes need customer numbers from the postal operator.
Limitations
- Only 1D (linear) barcodes — use the QR Code Generator for QR codes.
- A correctly formed EAN/UPC isn't an authorised product number; get those from GS1.
- Postal barcodes are drawn to specification, but the mailer IDs and routing data must come from the postal operator.
Frequently asked questions
How is the EAN-13 check digit calculated?
Take the first 12 digits, multiply them alternately by 1 and 3 from the left (3 for the even positions), add them up, and the check digit is the amount needed to reach the next multiple of 10. For 590123412345 that's 7, giving 5901234123457.
What's the difference between EAN-13 and UPC-A?
UPC-A has 12 digits and is used mainly in the US and Canada; EAN-13 has 13 digits and is used worldwide. A UPC-A number is an EAN-13 with a leading 0, and modern scanners read both.
Which barcode should I use for my own stock labels?
Code 128 for most internal labels — it's compact and encodes letters, digits and symbols. Code 39 if an older scanner or system requires it. Use EAN/UPC only with numbers issued to you by GS1.
Can I make a QR code here?
No — this tool makes 1D (linear) barcodes only. Use the QR Code Generator for QR codes.
Is my data uploaded?
No. Barcodes and batch CSV files are processed in your browser, and recent barcodes are saved only in this browser.