EAN-13 at scale 3 (height 60)
- Input
- 5901234123457
- Expected output
- 339 x 219 px, 28,7 mm a 300 dpi, 77% do nominal
Below 80%, which is why the tool shows the size warning.
barcode PNG generator
Sales platforms, spreadsheets and word processors rarely accept SVG, which is why PNG is the file most often requested. The risk with PNG is resolution: a small image stretched afterward blurs the bars, and a scanner cannot measure a blurred bar.
Below 80%, which is why the tool shows the size warning.
Inside the 80% to 200% range, and the starting size for a product label.
Above 200%: readable, but outside what the standard provides for retail.
220 modules wide with margins times 4 pixels, and no nominal size band, because it is not a GS1 retail format.
EAN-13 in most of the world, UPC-A in the United States and Canada, and EAN-8 on very small packages. Books use ISBN-13. The number has to come from your country's GS1 office; this tool only draws the bars.
For 300 dpi, scale 4 gives a module close to 0.34 mm, good for EAN and UPC. The PNG carries no embedded dpi: when placing it in a document, set the width in millimeters (pixels x 25.4 divided by 300) instead of trusting the size the program proposes, and print at 100%.
Because a code over a dark or colored background loses the contrast a scanner needs. The white background is part of the quiet zone, and avoiding transparency prevents the image from becoming unreadable when pasted over another color.
Shrinking by a whole factor (half, for example) keeps the bars sharp. Stretching or shrinking by a fractional factor creates gray edges and can ruin scanning. When you need another size, generate again at the right scale.
For print shops, stickers, labels and any artwork at a variable size, because vector does not lose sharpness. PNG fits when the system receiving the file only accepts pixel images.
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 154 68" width="308" height="136" role="img" aria-label="Barcode TOOLS-2026"><rect width="154" height="68" fill="#fff"/><path d="M10 2h2v50h-2zM13 2h1v50h-1zM16 2h1v50h-1zM21 2h2v50h-2zM24 2h3v50h-3zM30 2h1v50h-1zM32 2h1v50h-1zM36 2h3v50h-3zM40 2h2v50h-2zM43 2h1v50h-1zM47 2h3v50h-3zM51 2h2v50h-2zM54 2h1v50h-1zM58 2h2v50h-2zM61 2h3v50h-3zM65 2h2v50h-2zM68 2h3v50h-3zM72 2h1v50h-1zM76 2h1v50h-1zM79 2h2v50h-2zM82 2h3v50h-3zM87 2h1v50h-1zM89 2h3v50h-3zM93 2h4v50h-4zM98 2h2v50h-2zM102 2h1v50h-1zM105 2h3v50h-3zM109 2h3v50h-3zM114 2h1v50h-1zM117 2h2v50h-2zM120 2h2v50h-2zM123 2h2v50h-2zM126 2h2v50h-2zM131 2h2v50h-2zM136 2h3v50h-3zM140 2h1v50h-1zM142 2h2v50h-2z" fill="#000" shape-rendering="crispEdges"/><g font-family="Arial, Helvetica, sans-serif" fill="#000"><text x="77" y="61.4" font-size="10" text-anchor="middle">TOOLS-2026</text></g></svg>Everything is generated in your browser; the code value is never sent to a server.