Skip to content
FlipMyFile

Utility

Generate a barcode

Pick a format, type the number, and download a barcode as a PNG. Free and without an account. Note the honest part up front: this draws a barcode from a number you already have — it does not assign you a real retail number.

  • 100% free
  • No signup
  • Never uploaded

0 / 120 characters

Nothing you type is sent anywhereThis runs entirely inside your browser tab. There is no upload and no file to delete afterwards — disconnect from the internet after the page loads and it still works.

Options

Retail formats require an exact number of digits. Code 128 accepts almost anything.

2

Output quality

The barcode is drawn as sharp vector-style bars onto a canvas at the thickness you choose, then saved as a lossless PNG — no JPEG artefacts, which matters because scanners read the edges between bars and compression noise is exactly what blurs them. The human-readable number underneath follows the placement conventions of each format. The most important quality factor is not in this tool though, it is in your printer: a barcode is only as scannable as its thinnest bar, so if a code fails on paper the first fix is a thicker bar setting or a larger print size, not a different generator.

See what this tool actually did to real files — median size change, speed and sample size, published whichever way the numbers fall.

Privacy: nothing you type leaves your browser

  • Nothing you type is sent anywhere

    This tool is JavaScript running in your tab. There is no upload, no file and no job record — what you type stays in your own browser memory and goes away when you close the tab.

  • You can check this yourself

    Load this page, turn off your internet connection, and use the tool. It still works. That is not a promise about our conduct — it is something you can verify in ten seconds.

  • Nothing is stored, logged or counted

    We keep no copy of your input and no record that you used this tool with it. There is no account to attach it to, and no analytics event carrying its contents.

  • No third parties involved

    The code that builds your result is served from this domain rather than a public CDN, so no outside company sees that you used this page, or when.

Input, output and limits

Every figure below is read from the same configuration the server enforces, so this page cannot promise a limit the system will refuse.

Input
The number or code to encode
Output
A PNG image
Maximum length
120 characters
Where it runs
Entirely in your browser — nothing is uploaded

Common use cases

  • Internal stock and asset labels

    Code 128 handles your own reference codes, letters included.

  • Printing a barcode you were issued

    You have the GS1 number on file and need the image to put on artwork.

  • Shipping cartons

    ITF-14 is the format logistics scanners expect on outer boxes.

  • Library, equipment or event tracking

    Any closed system where you control the numbering.

Settings you can change

  • Barcode type

    Code 128 — letters and digits, any length · EAN-13 — retail, exactly 13 digits · EAN-8 — small retail, 8 digits · UPC-A — North American retail, 12 digits · Code 39 — older industrial systems · ITF-14 — shipping cartons, 14 digits

    Retail formats require an exact number of digits. Code 128 accepts almost anything.

  • Bar height (px)

    From 40 to 300, default 100.

  • Bar thickness

    From 1 to 5, default 2.

  • Print the number underneath

    Default: on.

Troubleshooting

It refuses my 13-digit number for EAN-13
The last digit is a check digit calculated from the first twelve. If it does not match, the number is not a valid EAN-13 — check it against the one GS1 issued you.
The printed barcode will not scan
Raise the bar thickness and print larger. Also print it on white, not a coloured or glossy background — reflections defeat scanners more often than size does.
I need letters but the format will not take them
Switch to Code 128 or Code 39. The retail formats are digits only by design.

Something else went wrong? Tell us what happened — a person reads every report, and that is how this list gets longer.

Frequently asked questions

Browse all tools
  • Can I use this for products I sell in shops?

    You can use the image, but the number has to be yours. Retail EAN and UPC numbers are issued by GS1, the organisation that keeps the global register, and a number you invent may already belong to someone else. Once you have your number from GS1, this will draw it correctly. For internal use — stock control, asset tags, your own warehouse — you can use any number you like.

  • Which format should I pick?

    Code 128 if it is for your own systems: it takes letters and digits and any length. EAN-13 for retail products outside North America, UPC-A inside it, and ITF-14 for shipping cartons. The retail formats need an exact digit count, which is why they refuse input that looks nearly right.

  • Why does it say my number does not fit?

    The retail formats have fixed lengths and a check digit computed from the other digits. EAN-13 wants exactly 13, UPC-A exactly 12, EAN-8 exactly 8. If the length is right and it still refuses, the final check digit does not match the rest — that number would not scan in a shop either.

  • Is my data sent to your server?

    No. The barcode is drawn by JavaScript in your browser tab. Nothing is uploaded and nothing is stored.

  • Does what I type get sent to your server?

    No. This tool is JavaScript that runs inside your browser tab, so what you type stays in your own device's memory and is never transmitted. There is no upload, no stored copy and no record that you used it — close the tab and it is gone. You can confirm this yourself: load the page, disconnect from the internet, and it still works. It accepts up to 120 characters, a limit that comes from what one browser tab can comfortably handle rather than from anything on our side.