Free Barcode Generator

Use Free Barcode Generator ↓

Create Code 128, EAN-13, UPC-A, EAN-8, Code 39 and ITF-14 barcodes online. Generate PNG or SVG output directly in your browser.

🔒 Private browser processingYour barcode value is encoded in your browser. ToolVero does not upload it to a ToolVero file-processing server. This page loads the public JsBarcode library from a CDN to perform the operation.

Code 128 accepts common letters, numbers and symbols.

Live preview
Always scan-test the final barcode at its intended size before production use.

Bulk barcode generation

Generate multiple barcodes from one value per line. This runs in your browser. Download the results as a ZIP containing SVG files.

Last updated: October 15, 2026 · Reviewed by ToolVero

Free to use6 common 1D formatsPNG + SVGBrowser processingNo account requiredMaintained by Fahad Farid

Which barcode format should you use?

The right format depends on where the barcode will be scanned. Code 128 is a flexible choice for internal labels, inventory references, serial numbers and logistics. EAN-13 and UPC-A are commonly associated with retail trade-item identification. EAN-8 is useful where a smaller retail symbol is needed, while Code 39 and ITF-14 are useful in specific industrial, asset and logistics workflows.

FormatTypical useInput
Code 128Inventory, SKUs, shipping, internal IDsAlphanumeric text
EAN-13Retail products and trade items12 digits plus check digit, or a complete 13-digit code
UPC-ANorth American retail11 digits plus check digit, or a complete 12-digit code
EAN-8Smaller retail packaging7 digits plus check digit, or a complete 8-digit code
Code 39Industrial, inventory and asset labelsSupported Code 39 characters
ITF-14Cartons, cases and logistics14 digits
Important for retail productsGenerating an EAN-13 or UPC-A image does not assign or register a product number. If you need a globally unique retail identifier, obtain the appropriate GTIN through the relevant GS1 process. ToolVero creates the symbol from the value you provide; it does not issue GTINs.

How to create a barcode online

  1. Choose the barcode format that matches your scanner or workflow.
  2. Enter your text, number or product identifier.
  3. Review the validation message and generate the live preview.
  4. Scan-test the result before relying on it for an important label or workflow.
  5. Download PNG for general digital use or SVG when you need a scalable vector file.

Code 128 vs EAN-13 vs UPC-A

Code 128 is the most flexible of the three for internal data because it can encode common alphanumeric values. It is a practical choice for SKUs, asset labels, serial numbers and shipping workflows.

EAN-13 and UPC-A are primarily associated with retail product identification. If a retailer or marketplace requires a GTIN, the number itself must come from the appropriate numbering system; a barcode generator only creates the visual symbol.

PNG or SVG: which should you download?

PNG is convenient for websites, documents and quick digital use. SVG is a vector format, so it can be resized for labels and packaging without the same raster scaling limitations. For print and design workflows, SVG is usually the better starting point when your software supports it.

How to make a barcode that scans reliably

  • Choose the correct symbology for the value and scanner.
  • Keep strong contrast between bars and the background.
  • Do not stretch, squeeze or crop the barcode after generation.
  • Preserve the required blank space around the symbol.
  • Use an appropriate physical size for the scanner and printing process.
  • Test the final printed or displayed barcode with the scanner you will actually use.
  • Prefer SVG when you need to place the barcode into a print design at different sizes.

Barcode generator for inventory, SKUs and labels

Code 128 is a practical choice when you need a barcode for an internal SKU, serial number, asset tag, inventory reference or shipping label. Because it can encode letters as well as numbers, it is more flexible than retail-only formats for many internal workflows. Keep the encoded value consistent with the identifier already used by your inventory or business system.

Privacy and browser processing

This barcode generator creates the symbol in your browser using the public JsBarcode JavaScript library. ToolVero does not need a server-side barcode-processing endpoint for the value you enter. The page does, however, request the JavaScript library from a public CDN. As with any browser tool that loads a third-party library, review the library/network behavior if you have unusually sensitive requirements.

Common tasks this tool can help with

Choose Code 128 for internal shelf IDs that contain letters, such as TV-SHELF-A01. If you already have a retail GTIN, choose the matching EAN or UPC format and verify the encoded digits. The generator draws a barcode from your value; it does not allocate a retail identifier.

Frequently asked questions

Is this barcode generator free?

Yes. ToolVero provides the barcode generator free of charge with no account required.

Which barcode formats can I create?

This version supports Code 128, EAN-13, UPC-A, EAN-8, Code 39 and ITF-14.

Can I download a barcode as SVG?

Yes. SVG is useful for print and design because it is vector-based. PNG is also available for general digital use.

What is the difference between Code 128 and EAN-13?

Code 128 is a flexible alphanumeric format commonly used for internal labels, inventory and logistics. EAN-13 is primarily used for retail trade-item identification.

Can ToolVero issue a product barcode number?

No. ToolVero creates the visual barcode from your value. It does not assign or register a globally unique retail identifier. For retail GTINs, use the appropriate GS1 process.

Does ToolVero upload my barcode value?

The barcode is generated in your browser and does not need to be uploaded to a ToolVero processing server. The page loads JsBarcode from a public CDN.

Why might my barcode fail to scan?

Check the format, value, size, contrast and surrounding quiet space. Do not distort the bars, and always test the final printed or displayed version with the scanner you plan to use.

Can I create a barcode from a website URL?

Yes. Code 128 can encode a URL as text, but QR codes are usually better for customer-facing links because phone cameras commonly recognize them as web links.

About this page

Written and maintained by Fahad Farid. See our editorial policy or report an error.

Continue your task

Need to encode a URL or longer text? Use a QR code instead. Open QR Code Generator.

Browse all generators

Choose the identifier before drawing the barcode

For internal inventory, your own SKU may be appropriate with Code 128. Creating an EAN or UPC image does not allocate an official product identifier. Confirm retailer and identifier requirements before printing production packaging.

Test one label before making a batch

Use an existing sample SKU, export SVG for scalable printing or PNG for a raster workflow, and scan the printed label with the intended reader. Compare the decoded value character by character. Preserve quiet zones and avoid stretching the bars.

When a QR code is the better output

If the content is a website address or longer text, use QR Code Generator. A barcode scanner configured for one symbology may not read another; switching formats requires testing the actual equipment.

Try bulk inventory labels

Choose Code 128 and paste TV-SHELF-A01, TV-SHELF-A02 and TV-SHELF-A03 on separate lines. Use bar width 2, height 90 and Show value, then Generate Bulk ZIP. A batch accepts up to 200 non-empty lines.

Download the three example SVGs or the A4 print practice sheet. Print the sheet at 100% and check its 50 mm ruler. The examples encode fictional internal IDs, not assigned retail numbers.

Follow the inventory label printing walkthrough for label setup, scan testing and bulk-file handling.

Try a batch of inventory labels

Paste TV-SHELF-A01, TV-SHELF-A02 and TV-SHELF-A03 on separate lines in the bulk field. Generate the SVG ZIP, open each file, and scan a printed sample. Compare the decoded value with the inventory record, including zeros and hyphens. Download the sample values to repeat the check.

If a printed label will not scan

First confirm the scanner accepts Code 128. Print at actual size without stretching the image, leave blank space around the bars, and check for clipping, low contrast or print bleed. A preview on screen cannot prove a label will scan after printing.

Related guides