Barcode Generators

Code 39 Scanner

Read Code 39 — the self-checking alphanumeric barcode used in defence, automotive and asset tagging.

Rate this tool

Scan a code with your camera, drop in an image, or paste one with Ctrl + V.

How to use the Code 39 Scanner

  1. Point your camera at the barcode, drop in an image, or paste one with Ctrl + V.
  2. Code 39 is wide for the data it holds, so make sure both ends are in frame.
  3. The decoded value appears with the symbology named.

About the Code 39 Scanner

Code 39, also written Code 3 of 9, is one of the oldest alphanumeric barcodes still in daily use. It encodes 43 characters — the digits, capital A to Z, a space and a handful of symbols — and every character uses nine elements of which three are wide, which is where the name comes from.

Its defining property is that it is self-checking: the structure of each character makes a single printing or scanning error detectable without needing a check digit at all. That, plus the fact that it needs no fixed length and is trivial to print, is why it took hold in places where reliability mattered more than density — defence logistics, automotive parts, laboratory samples and asset tags on equipment.

The cost is space. Code 39 is not dense; the same data takes noticeably more width than in Code 128, and it cannot carry lower-case letters or arbitrary punctuation at all. New systems generally choose Code 128 instead, and Code 39 persists mainly where an existing scanner fleet or standard requires it.

Scan it with your camera, from an image, or by pasting one. Decoding happens on your device and nothing is uploaded.

Frequently asked questions

What characters can Code 39 hold?

Digits, capital letters A to Z, a space, and the symbols - . $ / + and %. There are no lower-case letters, which is the usual reason a value will not encode.

What does self-checking mean?

The structure of each character is such that a single misprint or misread produces an invalid character rather than a different valid one, so errors are caught without a separate check digit.

Why is Code 39 wider than other barcodes?

Each character uses nine elements regardless of what it is, so the symbology is not dense. Code 128 encodes the same data in noticeably less width.

Should I use Code 39 for something new?

Usually not. Code 128 is denser and covers the full ASCII set. Code 39 makes sense when existing equipment or an industry standard requires it.