Type text or a number and get a scannable barcode instantly. Download as crisp SVG for print or high-resolution PNG.
| Format | Encodes | Typical use |
|---|---|---|
| Code 128 | any ASCII text | logistics, tickets, inventory, general use |
| EAN-13 / EAN-8 | 12–13 / 7–8 digits | retail products worldwide (GS1-assigned) |
| UPC-A | 11–12 digits | retail products in North America |
| Code 39 | A–Z, 0–9, few symbols | older industrial & government systems |
| ITF-14 | 13–14 digits | shipping cartons & outer packaging |
| MSI / Codabar | digits (Codabar also - $ : / . +) | legacy inventory, libraries, blood banks |
For a product you plan to sell in shops, the EAN/UPC number must be assigned through GS1 — generating a random number produces a scannable barcode that belongs to someone else's product.
EAN-13, EAN-8, UPC-A and ITF-14 end in a check digit calculated from the other digits. Enter the number without it and the tool appends the correct one automatically. If you enter the full number including a check digit, it is verified — a mismatch means the code would be rejected at the till, so nothing is drawn until it's fixed.
Keep the bars black on white — scanners read contrast, and inverted or tinted barcodes often fail. Leave a quiet zone (blank margin) either side of the bars; this tool includes one in the export. When resizing, scale the whole image proportionally — stretching only one axis changes bar-width ratios and can make the code unreadable. Prefer the SVG export for print at any size.
No. Barcodes are drawn entirely in this page by a self-hosted copy of the JsBarcode library. What you encode never leaves your machine — you can even use the tool offline once loaded.