Convertful
ImagePDFVideoUtilityBlog

Image Tools

  • Compress Image
  • Resize Image
  • Remove Background
  • HEIC to JPG
  • All Image Tools →

PDF Tools

  • Compress PDF
  • Merge PDFs
  • Split PDF
  • PDF to Images
  • All PDF Tools →

Video & Audio

  • Video to GIF
  • Compress Video
  • Trim Video
  • Extract Audio
  • All Video Tools →

Utility

  • QR Code Generator
  • JSON Formatter
  • Color Converter
  • All Utility Tools →
All processing happens in your browser. Your files never leave your device.
AboutBlogTermsPrivacyContact
© 2026 Convertful. All rights reserved.
HomeUtilityBarcode Generator

Barcode Generator

Generate EAN-13, UPC-A, Code 128, Code 39 barcodes. Free, private, runs in your browser.

100% private — your files never leave your browser. All processing happens locally on your device.

Settings

Any text / URL / Wi-Fi / vCard payload. Scannable by every modern phone camera.

Appearance

10px
Enter a value above to generate a barcode.

You might also need

QR Code GeneratorGenerate QR codes from text or URLs
QR Code DecoderRead a QR code from any image
Wi-Fi QR Code GeneratorMake a QR code guests scan to join your Wi-Fi
Favicon GeneratorGenerate favicons from any image

Retail And Logistics Formats, Not QR Codes

Barcodes are the 1D stripes you see on every retail package. EAN-13 is the global standard — 13 digits, used on every consumer product outside North America and increasingly inside it too. UPC-A is the US/Canada variant — 12 digits, still dominant on American retail shelves. Code 128 is a general-purpose format that accepts any ASCII — used for internal tracking, shipping labels, and ID cards. Code 39 is older and simpler — uppercase letters, digits, and a few symbols — still common in warehouse workflows and military/government applications. ITF (Interleaved 2 of 5) is a compact digit-only format for shipping cartons. MSI Plessey is a legacy warehouse format.

Check Digits And Format Rules

EAN-13 and UPC-A include a mandatory check digit — the last digit is a mod-10 weighted sum of the preceding digits. If you enter 12 digits for EAN-13 (or 11 for UPC-A), the tool (via jsbarcode) auto-computes the check digit for you. If you enter the full 13 (or 12), we verify your check digit is correct and reject obvious typos before rendering a barcode a scanner would fail to read. Code 128 has no user-facing check digit — the format handles it internally. Code 39 has an optional check digit (off by default).

SVG + PNG Output

The preview renders as an SVG in the page — right-click it in your browser to copy or save as vector, which scales to any size without pixelation. The 'Download PNG' button rasterises at 2× resolution for document embedding or sticker printing. For professional barcode printing, always favour the SVG — the rasterised version can drift slightly from spec at unusual sizes, while the vector preserves the bar widths exactly.

100% Local, Unlike Most Online Generators

Most online barcode generators upload your input to a server, render the barcode there, and send back a PNG. That's a privacy tax for no technical reason — jsbarcode runs in the browser and produces the same output. Your barcode data (which is often a sensitive product SKU, internal ID, or serial number) never leaves your device here. The tool works offline too once loaded.

FAQ

Which formats are supported?

EAN-13 (retail), UPC-A (US retail), Code 128 (general-purpose ASCII), Code 39 (warehouse/military), ITF (shipping), and MSI Plessey (warehousing). Pick from the format selector.

What's the difference between EAN-13 and Code 128?

EAN-13 is digits-only and fixed-length — used on consumer packaging. Code 128 accepts any ASCII including letters and symbols — used for internal tracking, serial numbers, and IDs.

Does it compute the check digit for me?

Yes. For EAN-13 and UPC-A, enter 12 or 11 digits and jsbarcode auto-computes the last check digit. If you enter a full 13 or 12, we verify your check is correct.

Can I download the barcode?

Yes — the SVG is rendered live; click 'Download PNG' to save a 2× resolution raster version. Right-click the SVG in the browser to copy it directly as an SVG if you need vector output.