Barcode Generator
CODE128, EAN-13 and UPC-A barcodes rendered locally as SVG, with PNG download.
Rendered locally as SVG. The PNG download is drawn from the same SVG in your browser.
How to use it
- Type or paste the value to encode.
- Pick the format: CODE128 for arbitrary text, EAN-13 for 12-13 digit retail codes, UPC-A for 11-12 digits.
- Click Generate. The barcode appears as an SVG with the value printed underneath.
- Click Download PNG to save a white-background raster copy for documents and stickers.
Common use cases
- Asset and inventory labels - encode serial numbers or SKU codes for internal tracking sheets.
- Event and ticket codes - print a unique code per ticket from your own numbering scheme.
- Library and archive work - label boxes and folders so a handheld scanner can find them.
- Product mockups - place a plausible barcode on packaging designs before real codes are assigned.
Why it stays private
The barcode is drawn by a local rendering library inside your browser. Scanning and rasterizing happen on your device; the value you type is never transmitted, so internal codes and unreleased SKUs stay off the network.
FAQ
Q: Why was my value rejected? A: Each format has strict input rules. CODE128 accepts printable ASCII, EAN-13 wants exactly 12 or 13 digits, and UPC-A wants 11 or 12 digits. The tool checks the shape before drawing so you get a scannable result.
Q: Do I need to calculate the check digit? A: No. When you pass 12 digits to EAN-13 or 11 digits to UPC-A, the renderer computes and appends the check digit automatically. If you pass the full length, your last digit is kept as the check digit.
Q: Will real shops and scanners accept these codes? A: The encoding itself is standard, so any compatible scanner can read it. However, retail products sold through stores need officially registered GTIN numbers; use this tool for internal labels, mockups and non-retail purposes.
Your data stays on this device
Barcode Generator runs 100% locally. Everything you paste or drop is processed by your own browser and never transmitted. Nothing is stored on our servers — close the tab and it is gone.
Nothing you type is sent to a server, logged, or used for analytics. The page works even with your network disconnected after first load.