What is a barcode generator?
A barcode generator turns text or numbers into a scannable 1D barcode image. You enter a value like ABC-1234, choose the barcode type, and download the result as PNG or SVG. The Barcode Generator supports everyday formats: Code 128, Code 39, EAN-13, EAN-8, UPC-A, and ITF-14.
That range covers a lot of normal work. A shop owner can make a shelf label. A warehouse team can print carton IDs. A developer can create test inventory data without touching a retail system. A student can finish a packaging mockup without being dragged into the free-trial industrial complex. Most barcode tools try to turn “make one code” into an account, an API key, a saved library, or a paid export. This one does the job and gets out of the way.
Example outputs: ABC-1234 as Code 128, 4006381333931 as EAN-13, and 036000291452 as UPC-A. The last digit in the numeric examples is a check digit, not decoration. Tiny little bouncer at the scanner door.
Why use a barcode maker instead of drawing one yourself?
Barcodes look like a bunch of black lines. That is the trap. The bars follow strict patterns, include quiet zones on the left and right, and often carry check digits. If any of those pieces are wrong, the code may look fine on screen and fail under a scanner. That is a bad way to discover a typo.
A barcode maker handles the rules for you. Code 128 has start codes, data codes, and a checksum. EAN-13, EAN-8, UPC-A, and ITF-14 use GS1-style mod-10 check digits. Code 39 has a smaller character set and uses uppercase. The tool applies those rules as you type.
Here is a real example. Enter 400638133393 as EAN-13. The Barcode Generator calculates the check digit and produces 4006381333931. Enter 4006381333930 instead, and the tool rejects it because the supplied check digit is wrong. That is the kind of boring correctness you want from barcode software. Boring is beautiful when a scanner is involved.
It also saves time. You can make a single product label, download SVG for a print layout, and leave. No account. No “start trial” button. No per-seat pricing for a tool one person needs for 22 seconds.
How the Barcode Generator works
The Barcode Generator encodes your value in the browser. Nothing gets uploaded. The tool turns your input into the selected barcode symbology, draws the bar pattern as an SVG, and lets the browser rasterize that SVG into PNG when you download or copy it.
Code 128 is the default because it is the safest everyday choice for mixed text. It accepts standard ASCII characters, including letters, numbers, spaces, and common keyboard symbols. Code 39 is older and stricter. It accepts uppercase letters, digits, spaces, and a short set of punctuation characters: - . $ / + %. If you enter lowercase Code 39 text, the tool converts it to uppercase and tells you.
The retail and shipping formats are digit-only. EAN-13 accepts 12 digits, or 13 if you already have the check digit. EAN-8 accepts 7 or 8. UPC-A accepts 11 or 12. ITF-14 accepts 13 or 14. When you omit the final digit, the tool computes it. When you supply it, the tool checks it.
| Type | Input it accepts | Typical use | Example encoded value |
|---|---|---|---|
| Code 128 | 1–200 standard ASCII characters | Asset tags, internal IDs, warehouse labels | ABC-1234 |
| Code 39 | Uppercase letters, digits, space, and - . $ / + % | Simple inventory labels and legacy scanners | ABC 123 |
| EAN-13 | 12 digits, or 13 with check digit | Retail product numbering outside North America | 4006381333931 |
| EAN-8 | 7 digits, or 8 with check digit | Small packages with short retail codes | 96385074 |
| UPC-A | 11 digits, or 12 with check digit | Retail product codes in North America | 036000291452 |
| ITF-14 | 13 digits, or 14 with check digit | Shipping cartons and cases | 10012345000017 |
Customizing the barcode output
The controls are practical on purpose. You choose the barcode type, enter data, set the bar and background colors, pick a scale, adjust the bar height, and decide whether to show the human-readable text below the bars. Then you copy or download the result.
| Control | Default | Range or choices | What it changes |
|---|---|---|---|
| Barcode type | Code 128 | Code 128, Code 39, EAN-13, EAN-8, UPC-A, ITF-14 | The encoding rules and scanner format |
| Data | ABC-1234 | 1–200 characters, with type-specific limits | The value stored in the bars |
| Show text | On | On or off | Prints the readable value under the barcode |
| Bar color | #000000 | Any hex color | The dark bars |
| Background | #FFFFFF | Any hex color | The canvas and quiet zone behind the bars |
| Scale | 2× | 1×, 2×, 3×, 4× | The width of each barcode module in pixels |
| Bar height | 90 px | 40–180 px | The vertical height of the bars |
For print work, black bars on a white background are still the boring champion. Colored barcodes can work, but scanners need contrast. Dark navy on white is usually fine. Pale gray on cream is asking for trouble. The tool warns you when the contrast is too low or when the bars are lighter than the background.
Use SVG when you are placing the barcode into a design file, package mockup, or print layout. SVG stays sharp at any size. Use PNG when you need a normal image file for a document, label printer, or quick paste into a message.
Best practices for scannable barcodes
A scannable barcode needs more than a valid pattern. Give it space. The blank margin around the bars is called the quiet zone, and scanners use it to find where the code starts and ends. Cropping the bars tight may look neat in a mockup. It also makes scanners grumpy. Scanners are not known for emotional range.
Pick the barcode type based on the number you already have. Use Code 128 for internal IDs like SKU-BLUE-XL-0042. Use Code 39 when you need broad support with older systems and your data fits its smaller character set. Use UPC-A, EAN-13, or EAN-8 only when you have the right retail number. Use ITF-14 for carton-level codes.
Do not invent official retail product numbers for real goods. A barcode image is not the same thing as a registered product identifier. If you are selling through major retail channels, get the proper company prefix and item numbers from the right standards body for your market. This tool draws the barcode. It does not grant ownership of a number.
If a barcode will go on packaging, test it before printing 5,000 labels. Print one, scan it with the actual scanner, and check that the scanned value matches the encoded value shown under the preview.
Also watch the data itself. If your inventory system expects SKU-0042, do not print sku-0042 as Code 39 and forget that it becomes SKU-0042. For Code 39 that conversion is intentional. For a database, case can still matter.
Where this fits against Big Software
Big Software has a strange talent for making small jobs feel like procurement. You need one barcode. It offers a dashboard, user roles, saved projects, AI label copy, usage quotas, API plans, and a cheerful “talk to sales” button hiding behind the curtain. The barcode was the point. Somehow you are now evaluating a platform.
This barcode generator rejects that pattern. It does not ask for a seat count. It does not put SVG export behind a subscription-only button. It does not bundle barcode creation into a retail suite you have to learn for an afternoon. It is one tool for one job: create barcode online, copy it, download it, leave.
That matters because barcode work belongs to everyone. The person making a price label for a tiny shop should get the same clean output as the operations manager at a large company. A student making a packaging prototype should not need a credit card. A developer filling a test database should not need an API contract. Premium quality, same page, same buttons.
Microapp also keeps the promise off the page, not just on it. 10% of every dollar Microapp earns goes to charity, off the top, audited quarterly. That does not make the bars scan better. It does make the business less extractive. We like that kind of math.
Related generators and tools
If you are building labels or test data, the Barcode Generator usually sits next to a few other small tools. Use the QR Code Reader when you need to scan and inspect a QR image. Use the Wi-Fi QR Code Generator when the job is network access instead of 1D product labels. Use the UUID Generator for unique database IDs, then encode one as Code 128 if you need it on a physical tag.
Working with product spreadsheets? The CSV to JSON tool can reshape exported rows for development work, and the JSON Formatter keeps fixture data readable. Small tools play nicely together when each one knows its lane.
Frequently asked questions
What barcode type should I choose?
Choose Code 128 for most internal labels because it handles letters, numbers, and symbols well. Choose Code 39 for older systems that expect it. Choose UPC-A, EAN-13, EAN-8, or ITF-14 only when your data is already in that numeric format.
Can I make a UPC barcode with this tool?
Yes. Select UPC-A and enter 11 digits. The tool will add the 12th check digit. If you enter 12 digits, it will check that the final digit is correct before rendering the barcode.
Does generating a barcode give me an official retail number?
No. The tool creates the barcode image for a value you provide. It does not register a UPC, EAN, or GTIN for your product. For real retail products, use numbers issued through the proper standards process.
Is my barcode data uploaded or stored?
No. The barcode is made in your browser. The preview, SVG, PNG download, and copy action all happen on your device. Nothing gets uploaded just because you typed a product code.
Why did the tool add a digit to my EAN or UPC?
EAN-13, EAN-8, UPC-A, and ITF-14 use check digits. If you enter the payload without the final digit, the tool calculates it. For example, 400638133393 becomes 4006381333931.
Why will my Code 39 barcode not accept a character?
Code 39 has a small allowed set: uppercase letters, digits, spaces, and - . $ / + %. It does not accept characters like @. If you need a wider character set, use Code 128 instead.