Code 39 barcode generator

Type uppercase letters, digits or the symbols - . space $ / + % and get a Code 39 barcode, the classic format of ID badges and industrial labels.

  • Free
  • No sign-up
  • Runs in your browser
barcode-code39

100% private — the barcode is drawn in your browser and nothing is sent to any server.

Next step

Keep going with your result in another tool. Nothing is uploaded.

How it works

Type the value

The barcode is drawn as you type.

Adjust the size

Set the bar width and height, and show or hide the text.

Download it

Save it as PNG or SVG and test it with a scanner.

How to generate a Code 39 barcode

To generate a Code 39 barcode, type your text in the value box above using uppercase letters, digits and the symbols - . space $ / + %. Lowercase letters are converted to uppercase for you. The barcode appears at once with its start and stop characters, and you can download it as PNG or SVG. It runs in your browser and nothing is uploaded.

What is Code 39?

Code 39, also called Code 3 of 9, was introduced in 1974 and is one of the oldest alphanumeric barcodes. Each character is drawn with 9 elements, 3 of which are wide, which is where its name comes from. It is simple, easy to print on basic printers and read by almost every scanner, which explains why it is still common in the automotive industry, the military and on ID badges.

Code 39 in practice

  • Character set: uppercase A to Z, digits 0 to 9, and - . space $ / + %.
  • Start and stop: an asterisk at each end, added automatically and not shown as part of the data.
  • Length: low density, so long values make wide barcodes; use Code 128 if the space is limited.
  • Check digit: optional in Code 39, and this tool does not add one.

Where it is used

  • Employee and visitor ID badges.
  • Automotive and defence part labels (LOGMARS).
  • Library and lab equipment tags.
  • Any system that already expects Code 39 from its scanners.

Generating a barcode is not the same as owning the number

This tool draws a correctly formatted barcode from any number you give it. That is enough for internal use, such as inventory, shelves or test labels. To sell a product in shops and on marketplaces, however, the number must be a GTIN issued by GS1 through a licensed company prefix; otherwise it may collide with another company's product. Buy your numbers from GS1 in your country, then use this tool to draw the codes.

Private by design

The code is drawn by your browser on your own device. What you type, including passwords and contact details, is never sent to a server, and the finished image is yours with no watermark and no expiry.

Frequently asked questions

Can Code 39 encode lowercase letters?
Not in its standard form. Lowercase letters are converted to uppercase. Use Code 128 if you need to keep the case.
Why does Code 39 have asterisks at the ends?
The asterisk is the start and stop character. It is added automatically, and scanners normally do not output it.
When should I use Code 39 instead of Code 128?
Only when the system that reads it expects Code 39. For new projects Code 128 is denser and includes a check character.
Is this converter free?
Yes. There is no sign-up and no limit, and it runs in your browser, so nothing you type is sent to a server.
Does it work on a phone?
Yes. It works in any modern mobile browser, and the result updates as you type.