Barcode Generator

Make barcodes for products, shipping and inventory. Type the number or text, and the check digit is worked out and verified for you. Download a PNG or a print-ready SVG.

Letters, numbers and symbols. Used for shipping labels, inventory and tickets.

Type some text to make a Code 128 barcode.

Download as PNG or SVG.

Bar width

Wider bars scan more easily from further away, and print better on cheap printers.

Height

How to make a barcode

  1. 1Choose the barcode type: Code 128 for most labels, EAN-13 or UPC-A for products sold in shops.
  2. 2Type the number or text. For EAN, UPC and ITF-14 you can leave off the last digit: the check digit is worked out and added.
  3. 3Choose the bar width and height, and whether to show the text under the bars.
  4. 4Download a PNG, or an SVG to print at any size. Test it with a scanner or a scanning app before printing labels in bulk.

Which barcode type should I use?

Code 128 is the best general choice for your own labels, such as inventory, asset tags, shipping labels or membership cards: it holds letters, numbers and symbols and stays compact. Code 39 is older and wider, but some older systems, ID badges and industrial scanners still require it.

EAN-13 (worldwide) and UPC-A (US and Canada) are the barcodes on products in shops, and every checkout scanner reads both. To sell products, you need numbers registered to your company by GS1, the organization that runs the system; made-up numbers may clash with real products. Books use EAN-13 with their ISBN, which starts with 978 or 979. EAN-8 is a short version for small packages, and ITF-14 is printed on the outer cartons that hold several products.

EAN, UPC and ITF-14 numbers end in a check digit worked out from the other digits, so a scanner can tell when it has misread a bar. If you type the full number, the check digit is verified, which catches most typos. If you leave it off, it’s added for you.

For print, use the SVG at full size or larger. The white margin at each end is part of the image; keep it, because scanners need it to find where the barcode starts. Bars that are too thin or blurry are the most common reason a barcode won’t scan. On retail packaging, an EAN-13 is normally about 37 mm (1.5 in) wide.

Why use Lilypad

100% private

Files are processed right in your browser. Nothing is ever uploaded to a server.

Ready to print

Download a PNG for screens and documents, or an SVG that stays sharp at any print size.

Fast & free

Uses every core of your CPU. No sign-up, no watermarks, no file limits.

Frequently asked questions

What is a barcode?

A barcode stores a number or a short text as a row of black bars and white gaps of different widths, read by a laser scanner or a camera. Unlike a QR code, a regular barcode holds only a short value, usually a product number or an ID that points to a record in a database.

Do I need to buy barcode numbers?

Only for products sold in shops or on marketplaces like Amazon. EAN-13 and UPC-A numbers must come from GS1 (or the GS1 office in your country) so they are unique worldwide. For your own labels, like inventory, asset tags or tickets, use Code 128 with any numbers or text you like.

What is a check digit?

The last digit of an EAN, UPC or ITF-14 number, worked out from the other digits so scanners can catch misreads. Type the number without it and it’s added for you; type it with the check digit and it’s verified.

Why won’t my barcode scan?

The bars may be too thin for your printer or printed too small: choose wide bars or print it larger. Keep the white margin at both ends, print black on white, and check that the scanner reads that type of barcode; checkout scanners are often set to read only EAN and UPC.

Is what I type sent anywhere?

No. Codes are made inside your web browser, so what you type never leaves your device, and it isn’t saved either. Only settings like the size and colors are remembered.

Can I use it on my phone?

Yes. It works in any modern browser on Android, iPhone, Windows, Mac, Linux and ChromeOS.