Loading Techie Utils…

Code 39 Barcode Generator

Create Code 39 barcodes as SVG, ready to print or put on a label. Free, and runs entirely in your browser — nothing you enter is uploaded or stored.

About Barcode Generator

Draws a barcode in whichever symbology the thing reading it expects: QR and Micro QR, Data Matrix, Aztec and PDF417 for two-dimensional codes, and Code 128, Code 39, Code 93, Codabar, ITF, EAN-13, EAN-8, UPC-A, UPC-E and GS1 DataBar for the striped ones. The drawing is done by ZXing — the library behind a great many scanners — compiled to WebAssembly and running in this tab.

Each symbology has its own rules about what it can hold, and they are enforced rather than papered over: EAN-13 wants twelve digits and computes the thirteenth, ITF wants an even number of digits, Codabar wants a start and a stop letter. A symbology that cannot encode what you typed says so instead of drawing something a scanner would refuse or, worse, misread.

Output is SVG, so the same file is a screen graphic and a print-ready label. Module size sets how thick the bars are, the quiet zone is the margin a scanner needs to find the symbol at all, and the human-readable line prints the value under the bars the way a retail label does.

Where it helps

  • Fifteen symbologies, including the retail and logistics formats a QR generator cannot produce.
  • Content is validated against the symbology's rules, so an unscannable label is refused rather than drawn.
  • SVG output stays sharp from a screen preview to a 600 dpi label printer.
  • Runs entirely in your browser: a serial number or an order reference never leaves the machine.

Limits

  • Each symbology limits what it can hold — the numeric ones take digits only, and the linear ones hold far less than a QR code.
  • Colour and logo styling are not offered; a barcode that a scanner has to read is safest in black on white.
  • The first draw loads the encoder as WebAssembly, which takes a moment.
  • It draws the symbol; whether your scanner is configured to read that symbology is a separate question.

Frequently asked questions

Which symbology should I use?

QR for anything a phone will scan, Data Matrix where space is tight, Code 128 for internal labels with letters and digits, and EAN or UPC for retail products with a registered number.

Why was my EAN-13 rejected?

It takes twelve digits and works out the thirteenth itself. Thirteen digits are accepted only when the last one is the correct check digit.

Can I put a logo in the middle like a QR code?

Not here. Download the SVG and place the logo yourself, keeping the error correction in mind — that trick only works because QR codes are error-corrected.

How big should the module size be?

For print, work back from the scanner: most handhelds want bars at least 0.33 mm wide. On screen, anything from 4 upwards scans from a phone held at a normal distance.

Related tools

  • QR Code Generator — Create scannable QR codes as SVG
  • QR & Barcode Reader — Read a code out of an image, and say what it does before you follow it
  • UUID Generator — UUID v1 to v7 — generate any version, or read what one encodes
  • File Checksum — Verify a download, and work out which algorithm made the checksum
  • ULID / CUID Generator — Sortable, collision-resistant identifiers — and the timestamp inside one
  • Nano ID Generator — Short, URL-safe random identifiers — and what the length actually buys

More Generators tools

  • UUID Generator — UUID v1 to v7 — generate any version, or read what one encodes
  • ULID / CUID Generator — Sortable, collision-resistant identifiers — and the timestamp inside one
  • Nano ID Generator — Short, URL-safe random identifiers — and what the length actually buys
  • KSUID Generator — Sortable 27-character identifiers with a second of time and 128 bits of randomness
  • TypeID Generator — Type-prefixed identifiers over UUID v7, readable and still a UUID underneath
  • ObjectID Generator — MongoDB's twelve bytes — a timestamp, a process value and a counter
  • Barcode Generator — Draw QR, Data Matrix, Code 128, EAN and more as SVG
  • QR Code Generator — Create scannable QR codes as SVG
  • UPI QR Code Generator — Make a UPI payment QR code that any UPI app can scan to pay you
  • Diagram Studio — Draw architecture, sequence, ER, C4, network and nine other diagrams by dragging shapes and connecting them
  • Random String — Random identifiers from a chosen alphabet
  • Lorem Ipsum — Placeholder paragraphs, sentences or words
  • Fake Data — Synthetic people and companies as JSON, CSV or SQL
  • Random Number Generator — Draw uniformly random integers or decimals in a range, with or without repeats