Skip to main content
Online Tool

Online Barcode Generator

Create UPC-A, EAN-13, EAN-8, Code 128, Code 39, ITF-14 and Codabar barcodes. Download as PNG or SVG. Everything runs in your browser. Leave off the check digit for UPC-A, EAN-13, EAN-8 or ITF-14 and the generator calculates it, or enter the full number and it checks the digit.

12 or 13 digits. Check digit auto-computed if 12 are entered.

3x
15 mm

Files are generated on your device — nothing is uploaded.

Supported Barcode Formats

Seven of the most common 1D symbologies used in retail, logistics, libraries and healthcare.

UPC-A
EAN-13
EAN-8
Code 128
Code 39
ITF-14
Codabar

About the online barcode generator

The ReadBarcode online barcode generator turns a value into a print-ready barcode in your browser. It renders UPC-A and EAN-13 for retail, Code 128 and Code 39 for labels, ITF-14 for shipping cartons, EAN-8 for small packaging, and Codabar for libraries and blood banks. Output is a scannable PNG or a vector SVG ready for packaging artwork.

Encoding runs entirely on your device with the bwip-js library — no server, no account, no upload. The check digit is computed for you when the format requires one, so you can paste a 12-digit base GTIN and get a valid EAN-13 back instantly.

When to Use It

  • Mocking up product packaging or labels before a print run.
  • Generating Code 128 labels for internal inventory or asset tags.
  • Producing an ITF-14 carton barcode from a known GTIN-14.
  • Quickly creating a test barcode to verify a scanner setup.
  • Printing Codabar tickets, library cards or medical wristbands.
  • Embedding an SVG barcode in a design file at any scale without blur.

How It Works

  1. Pick a format Choose the symbology that matches your use case — UPC-A and EAN-13 for retail, Code 128 for most everything else.
  2. Enter the value Type or paste the data. For UPC/EAN/ITF the check digit is optional — it's calculated automatically.
  3. Tune size and text Adjust the scale, bar height, and toggle the human-readable value under the bars.
  4. Preview live The preview re-renders on every change so you see exactly what will print.
  5. Download PNG or SVG Save the PNG for screens and slides, or the SVG for print and packaging.

What to Avoid

  • Using a UPC or EAN code you don't own for resale — you need a GS1-issued company prefix.
  • Printing at less than 80% of the GS1 nominal size — small symbols often fail at retail scanners.
  • Cropping out the quiet zone (white space) around the bars — scanners rely on it.
  • Stretching the PNG non-proportionally in a design tool — use the SVG instead.
  • Encoding lowercase or special characters in Code 39 — it only allows uppercase A–Z, 0–9 and a few symbols.

Tips & Tricks

  • For packaging artwork always export SVG so the bars stay crisp at any size.
  • If your scanner struggles, increase the scale by 1 and re-test before changing the format.
  • Use Code 128 for any internal label — it's denser and more reliable than Code 39.
  • Check the rendered value with the Barcode Reader on this site as a sanity test.
  • Validate retail GTINs with the GTIN Validator before printing thousands of labels.

Private by Default

Barcodes are rendered locally in your browser with the bwip-js library. The value you enter and the PNG or SVG you download never touch our servers.

How to Generate a Barcode for Your Product

To generate a barcode for a product sold in stores, get a GTIN from GS1, enter it here as a UPC-A or EAN-13 and download the SVG for your packaging artwork.

  1. License a GS1 Company Prefix, or a single GTIN where your local GS1 office sells them.
  2. Choose UPC-A for a 12-digit GTIN or EAN-13 for a 13-digit one, and type the number.
  3. Place the SVG on the artwork at full size and scan a printed proof before the production run.

The guide to GTINs explains how the numbers are built.

Which Barcode to Use

  • UPC-A (GTIN-12) for retail products, mainly in the US and Canada.
  • EAN-13 (GTIN-13) for retail products in most other countries.
  • ITF-14 (GTIN-14) for cartons that do not pass through a checkout.
  • Code 128 for shipping labels, asset tags and stock locations.

Used as a UPC barcode generator, this page adds the check digit when you type 11 digits. For values with letters, see the Code 128 guide.

Can I Create My Own Barcodes?

Yes. Any value you make up can be printed as a Code 128 or Code 39 barcode for use inside your own business, with no registration.

Retail barcodes need a GTIN licensed to your company. Any free barcode generator online can draw the symbol, but only GS1 issues the number.

How to Print a Barcode That Scans

A barcode scans reliably when printed at a supported size, as dark bars on a light background, with its quiet zones intact.

  1. Click Print and choose a single label, a grid or an Avery label sheet.
  2. Set the barcode width in millimeters.
  3. Print at 100% scale, not fit to page.

For EAN-13 and UPC-A on retail goods, GS1 allows 80% to 200% of the nominal size, a narrow-bar width (X-dimension) of 0.264 mm to 0.660 mm. At 100% an EAN-13 is 37.29 mm wide, including its quiet zones.

Online Barcode Generator Settings for Printing

  • Scale (1x to 8x) gives the PNG more pixels; the SVG stays sharp at any scale.
  • Bar height (5 to 40 mm) sets how tall the bars are drawn.
  • Show value under barcode adds the human-readable digits that GS1 requires on EAN and UPC symbols.

Bars are always black on white. For a long list of values, use the bulk barcode generator.

Frequently Asked Questions

Which barcode formats can I generate?

The generator supports the major retail and logistics 1D symbologies: UPC-A, EAN-13, EAN-8, Code 128, Code 39, ITF-14 and Codabar. For QR codes use the QR Code reader/generator pages.

Do I Need to Provide the Check Digit?

No. For UPC-A, EAN-13, EAN-8 and ITF-14 the generator will compute and append the correct GS1 mod-10 check digit automatically if you leave it off. You can also enter the full value with the check digit and it will be used as-is.

Is My Data Uploaded Anywhere?

No. Rendering happens entirely in your browser using bwip-js. The value you type and the PNG/SVG file you download never leave your device.

What's the Difference Between PNG and SVG?

PNG is a raster image — good for emails, slides and screenshots. SVG is a crisp vector — best for printing labels and packaging because it stays sharp at any size.

Can I Use These Barcodes Commercially?

Yes. You own the data you encode. To sell products through retailers you still need a GS1-issued company prefix so your UPC/EAN codes are globally unique — this tool only renders the symbol.

Are Free Barcode Generators Safe?

This one is safe for your data: the barcode is drawn in your browser by the bwip-js library and nothing you type is sent to a server. The bigger risk with any free generator is a barcode that does not scan or a retail number you do not own, so check the number and scan a test print before ordering labels.

How Do I Generate a Barcode From a Number?

Pick the format that matches the length of the number: 12 digits for UPC-A, 13 for EAN-13, 8 for EAN-8 or 14 for ITF-14, then type it in. Enter it one digit short and the check digit is added; enter it in full and a wrong check digit is flagged. Numbers of any other length can be encoded as Code 128.

Are Barcodes Free?

Drawing a barcode is free, and Code 128 or Code 39 values for internal use cost nothing. Retail barcodes need a GTIN licensed from GS1, and the fee depends on the country and on how many numbers you need.

Related Tools