Free barcode generator

Code 128 · EAN-13 · EAN-8 · UPC-A · Code 39 · SVG / PNG

Encodes any ASCII text — the most versatile barcode format.

Bar width
Height
px
Bars
Background
Quiet zone
px
Font size
px

Need a QR code instead? Try the QR code generator →

Live previewLive

Supported barcode formats

All formats free, no account required.

  • Code 128

    The most versatile 1D barcode. Encodes any ASCII text or numbers — ideal for shipping labels, inventory, and internal tracking.

  • EAN-13 & EAN-8

    The global retail standard. Used on product packaging sold in supermarkets and stores worldwide.

  • UPC-A

    The North American retail standard. Required by most major US and Canadian retailers for product labelling.

  • Code 39

    Widely used in industrial, logistics, and healthcare contexts. Supports letters, digits, and a small set of symbols.

  • SVG & PNG download

    Export as a scalable SVG for print or a high-res PNG for digital use — both at no cost.

  • Browser-side generation

    Every barcode is generated locally in your browser. No data is sent to our servers.

  • Bulk generation

    Paste a list of values — SKUs, lot numbers, asset tags — and generate a barcode for each, then download them all in a single zip. Sign in to also save the batch.

Frequently asked questions

Is the barcode generator free?

Yes. All barcode types and download formats are free with no account required.

What barcode format should I use for retail products?

Use EAN-13 for products sold internationally, EAN-8 for small packaging, and UPC-A for North American retail. All three are supported by every modern point-of-sale system.

What is Code 128 used for?

Code 128 is the most versatile 1D barcode. It encodes any ASCII text or numbers and is used for shipping labels, warehouse inventory, asset tracking, and anywhere a custom alphanumeric code is needed.

Why does EAN-13 / UPC-A say "invalid check digit"?

The last digit of EAN-13, EAN-8, and UPC-A is a mathematically computed check digit. If you enter a number and get this error, the last digit does not match the expected checksum. Use the first 12 digits (EAN-13) or first 11 digits (UPC-A) and let a checksum tool compute the final digit.

What is the difference between a barcode and a QR code?

Traditional barcodes (1D) store data in a series of parallel lines and can typically hold up to ~80 characters. QR codes (2D) store data in a grid pattern and can hold thousands of characters, including URLs, contact details, and WiFi credentials. For URLs and rich content, use a QR code. For product labelling and retail, use a standard barcode.

Can I generate many barcodes at once?

Yes. Sign in and open the bulk barcode tool, choose a format, then paste your values one per line — ShareText validates each (including EAN/UPC check digits) and generates a barcode for every value. Download them all in a single zip with a manifest mapping each file to its value, and optionally save the batch to your account.

Can I use these barcodes commercially?

Yes. Barcodes generated on ShareText are yours to use for any purpose. Note that EAN and UPC barcodes require a GS1-registered company prefix to be accepted by major retailers — the number itself must be legitimately assigned to your organisation.