Skip to main content
PRODUCTS, LABELS & BIG IDEAS

Free Code 93 Barcode Generator

Code 93 accepts 0–9, a–z, space and - . $ / + %. Check digit: two mandatory checksums (c and k), added automatically. Keep a quiet zone of 10 modules clear on each side of the printed symbol.

  • No signup
  • Free commercial use
  • No watermarks

Choose a symbology

Retail & logistics

General purpose

2D symbols

Accepts: 0–9, A–Z, space and - . $ / + % · Check digit: Two mandatory checksums (C and K), added automatically · Quiet zone: 10 modules each side

Design

Bar colour
Keep a strong contrast, then test a scan.
Background
Keep a strong contrast, then test a scan.

Printed below the symbol. Long text wraps onto up to four lines.

Bars, the human-readable digits and the quiet zone are never covered — the caption and call-to-action sit below the symbol. Scanners need that clear margin to find the code.

Upload your logo

A logo can sit above or below a barcode only — anything placed over the bars stops it scanning.

Optional

PNG, JPG or WebP · Up to 2 MB · Stays on your device

Product numbers. Ready for the real world.

When to use Code 93

Code 93 was designed as a tighter replacement for Code 39: the same character set in a noticeably narrower symbol, with two mandatory checksum characters (C and K) instead of an optional one. Use it where label width is short and the scanning equipment is known to support it — support is less universal than Code 39 or Code 128.

Read back by our scanner — Our exports were decoded back by our own scanner.

Try a Code 93 example before making your labels

The generator’s example value is CODE93TEST. It is demonstration data for testing the tool, not a number assigned to your business. Replace it with the exact reference your stock system, supplier or retailer expects. This format accepts 0–9, a–z, space and - . $ / + %; punctuation, missing digits and accidental spaces can matter.

First generate one label and read the human-readable value under it. Then scan the exported image using a reader that supports Code 93. Compare the decoded value with your original record, including any leading zeroes. If the format adds or verifies a check character, use the generator’s validation result rather than adding an arbitrary digit yourself.

From a valid image to a usable printed barcode

A barcode only identifies the value encoded in its bars. Your till or inventory software must already know what that value means. A scan will not automatically create a product record, set a price or register a new retail identifier. Test with the scanner and software that will be used in your actual workflow.

Export SVG for a designer or PDF for a fixed print layout. Keep the blank space around the symbol and avoid squeezing the width to fit a label. Print at actual size, inspect the narrow bars for smudges or missing ink, and test on the final material. A good scan from a monitor does not prove that a glossy, curved or very small printed label will work.

For a batch, keep identifiers as text in your spreadsheet so leading zeroes are not lost. The bulk generator creates files from rows, and the label maker arranges them for sheets or rolls. Try a small batch first and compare several labels against the source file before producing the full run.

Frequently asked questions

How is Code 93 different from Code 39?

It encodes the same characters in less width and always carries two checksum characters, so a misread is far less likely. The trade-off is narrower scanner support.

Do I add the checksums myself?

No. The C and K checksums are mandatory in the symbology and are added automatically when the image is drawn.

Which characters are allowed?

Digits 0–9, capital letters A–Z, space and - . $ / + %, the same set as Code 39 in this tool.

Has this output actually been read back?

Our exported Code 93 images were decoded again by our own scanner during testing.