Barcode Generator

Make a scannable 1D barcode — Code 128, UPC-A, EAN-13 or Code 39 — with correct check digits and GS1 quiet zones. The barcode image has no watermark; download the PNG or SVG with a free account, built in your browser.

Code 128 is the best default for internal, shipping and asset labels — highest density, full ASCII.

The exact value the scanner will read.

Prints the value as text so a person can key it in if a scan fails. Standard on retail labels.

Code 39 is self-checking — the check digit is optional. Turn this on only if your host system requires mod-43.

Width of the narrowest bar. 0.33 mm is GS1 nominal for retail.

Taller bars tolerate skewed scans. Retail floor ≈ 5 mm.

Mandatory blank margin each side. GS1 minimum ≈ 10× (7× floor enforced).

300 is the floor for crisp thermal/laser labels.

Your barcode

Symbology
Encoded value
Dimensions & technical details
Check digit
Total width
Bar height
X-dimension
Quiet zone (each side)
Modules in symbol
Exact value the scanner reads:

Barcode Generator — guide & how to use

What it does

This free barcode generator builds a scannable 1D (linear) barcode right in your browser and renders it live as you type. Choose a symbology — Code 128, UPC-A, EAN-13 or Code 39 — enter your data, and the tool validates it, computes the correct check digit, adds the mandatory quiet zones, and lets you download a PNG or SVG whose barcode image carries no watermark. Viewing is free with no sign-in; a free account unlocks download & save.

How to use it

  1. Pick your symbology. Use Code 128 for internal/asset/shipping labels, UPC-A or EAN-13 for retail point-of-sale, Code 39 for legacy/industrial systems.
  2. Type the data to encode. The validity badge tells you instantly if the length/characters are allowed.
  3. Set the X-dimension (narrow bar width), bar height, and quiet zone. Defaults already meet GS1 minimums.
  4. Download the SVG for sharp print at any size, or the PNG at 300 DPI+ for label printers.
  5. Test-scan a printed sample with your real scanner before printing a full batch.

Worked example — a UPC-A check digit

Say you have the 11-digit base 03600024145 and need the 12th (check) digit. UPC-A weights the odd positions by 3:

So 03600024145 becomes 036000241457. Type the 11 digits here and the tool appends the 7 automatically — type all 12 and it verifies the 7 for you. Note: EAN-13 uses the opposite parity (it weights the even positions by 3) — swapping these two is the single most common barcode bug, and both are implemented here exactly to GS1 spec.

Choosing a symbology

Sizing & quiet zones (read before printing)

The X-dimension is the width of the narrowest bar; it drives the whole symbol's size and scannability. GS1 nominal for retail UPC/EAN is 0.33 mm, with a POS range of 0.264–0.66 mm. The quiet zone is the mandatory blank margin on each side — GS1 wants roughly 10× the X-dimension for Code 128 and Code 39. Below ~0.264 mm, or when a bar rounds to under 1 pixel, bars blur together and scans fail. For anything large, export the SVG so it scales with zero blur — never blow up a small PNG.

Accuracy & honesty notes

How to embed this tool on your website

No account, no coding. Copy the embed code and paste it where you want it to appear:

<iframe src="https://snaptoolsuite.com/barcode-generator/?embed=1"
  style="width:100%;max-width:560px;height:1100px;border:0;"
  title="Barcode Generator" loading="lazy"></iframe>
<p>Free <a href="https://snaptoolsuite.com/barcode-generator/">Barcode Generator</a> by Snap Tool Suite</p>

Full copy-paste steps are in the box below.

Frequently asked questions

Can I sell products on Amazon with a barcode made here?

For internal use — asset tags, shelf labels, picking — yes, use Code 128 or Code 39 freely. For retail UPC-A/EAN-13 numbers used to sell through stores or marketplaces, you generally need a GS1-issued company prefix. This tool encodes whatever number you type into a correct, scannable symbol, but does not register that number to you. Made-up retail numbers risk listing rejection or collisions.

Which barcode type should I choose?

Code 128 for internal/shipping/asset labels (highest density, full ASCII). UPC-A for North American retail POS (12 digits). EAN-13 for worldwide retail POS (13 digits). Code 39 for legacy/industrial/automotive systems.

Why does my UPC number get a 12th digit added?

UPC-A is 11 data digits + 1 check digit. Enter 11 and the tool computes and appends the check digit. Enter all 12 and it validates the one you supplied — flagging a mismatch instead of silently overwriting it, because a mismatch usually signals a typo upstream.

Will these barcodes actually scan when printed?

Yes, when printed correctly. Print from the SVG or a ≥300 DPI PNG, keep the quiet zone, and test-scan a printed sample with your real scanner before a full run. Print contrast and thermal head wear matter beyond the on-screen preview.

What is a quiet zone and why does it matter?

It's the mandatory blank margin left and right of the bars. Scanners use it to find the start/stop pattern. GS1 wants ≥~10× the narrow-bar width each side. Cropping it away is the #1 cause of barcodes that won't scan.

Is my data sent anywhere?

No. Every barcode is built entirely in your browser. Nothing is uploaded, logged, or stored.

Related tools

Put this barcode generator on your site

Free, one line, no account. Great for a print shop, inventory app, or product-listing help page.

<iframe src="https://snaptoolsuite.com/barcode-generator/?embed=1"
  style="width:100%;max-width:560px;height:1100px;border:0;"
  title="Barcode Generator" loading="lazy"></iframe>
2 Paste it on your page
3 It just works

Built locally in your browser. Nothing you type is ever sent, logged, or stored.