Barcode Generator
Put a little order into your stock. Make a barcode, check a whole list and turn it into labels that fit.
A stock code becomes a barcode, then a sheet of labels.
Barcode generator is in your dock. Everything you started is still there.
A little order. A lot less typing.
Turn a stock code into something you can scan. Make one, bring a list or build a numbered run.
Preview fits the screen. Saved dimensions are in millimetres.
Code 128 includes its own symbol checksum.
Every row accounted for.
| Row | Encoded value | Check |
|---|
Duplicates are marked and kept. Copies apply to PDF sheets; image batches contain one file per row.
Barcodes are drawn in your browser.Typed values and settings save privately. Imported lists stay on this device.Saving details
How to generate a barcode
Enter a code or bring a list
Choose a format. Type one value, paste spreadsheet rows, open a CSV or make a numbered sequence.
Check the proof
Review the encoded value, check digits and any invalid or repeated rows. Set the size for your printer.
Save files or label sheets
Save SVG, PNG or PDF. Choose Label sheet to set the stock, copies and first unused position before saving.
Using the barcode studio
The proof changes as you type. Start with your own code, or choose Try a stock list to explore titles, quantities and batch checks.
Choose a format and enter a value
One makes a single barcode. Barcode format sets the encoding rules. Value to encode keeps your characters exactly, including spaces and leading zeros. The example button fills a suitable sample for the selected format.
| Format | What to enter | Usual purpose |
|---|---|---|
| Code 128 | Up to 80 printable ASCII characters. Case is preserved. | Internal SKUs, assets and serial numbers. |
| EAN-13 / UPC-A / EAN-8 | 13 / 12 / 8 digits, or one fewer to calculate the check digit. | Assigned retail product numbers. |
| Code 39 | Capital letters, digits, spaces and - . $ / + %. | Industrial and established asset systems. No optional modulo-43 check digit is added. |
| ITF-14 | A 14-digit GTIN, or 13 digits to calculate the last digit. | Outer cartons. Includes a boxed bearer frame. |
| ISBN | A valid ISBN-10 or 978/979 ISBN-13. Hyphens and spaces are accepted. | Books. ISBN-10 converts to its 978 ISBN-13 equivalent. |
| Interleaved 2 of 5 | An even number of digits. No extra check digit. | Internal systems that explicitly require this format. |
| Codabar | Start and stop letters A to D, with digits or - $ : / . + between them. | Libraries and other existing Codabar systems. |
Label title adds one line above the bars. It changes the label, not the encoded value. A title from your CSV takes precedence over this shared title.
Open a CSV or paste a spreadsheet
List / CSV accepts one value per line and rows copied from a spreadsheet. Open list, the shared file zone and ⌘ + O or Ctrl + O open UTF-8 CSV, TSV or text files. Opening a file replaces the list.
| Control | Effect |
|---|---|
| Separator / Header row | Detect comma, tab or semicolon separators and common header names. Override either if the preview is wrong. |
| Barcode column | The source identifier. Cells are never converted to numbers. |
| Title column / Copies column | Optional text above the bars and 1 to 200 copies of that row in a PDF sheet. |
| Save CSV template | Save a small example with barcode, title and copies columns. |
| Clear | Remove the current values and return to an empty single-code input. Print settings remain available. |
Quoted cells may contain separators. Empty lines are ignored. The batch limit is 500 data rows, 50 columns and 1 MB of text. Export a spreadsheet as text before opening it here. If Excel has already removed leading zeros, this tool cannot recover them.
Build a numbered sequence
Sequence joins a Prefix, a padded number and a Suffix. Set Start number, How many, Increment and Number padding. For example, SKU-, 1, three codes and four digits produce SKU-0001, SKU-0002 and SKU-0003.
Retail formats still require numeric identifiers. To calculate new check digits, generate the shorter body of each assigned number. Do not increment a complete GTIN as if its check digit were part of the product number.
Review every row before saving
Choose a value in Every row accounted for to inspect that barcode. Previous rows and Next rows move through the list. Invalid rows explain the problem. Duplicates are marked and kept, since repeated labels may be intentional.
Batch and sheet export stop when a row is invalid. Fix the source or tick Exclude invalid rows from batch and sheet exports. Saving a selected valid row remains available. A wrong complete check digit is never silently replaced.
Set a physical print size
Open Print size & readable text to adjust the dimensions. Printer resolution sets 203, 300 or 600 dpi. Narrow bar (mm) snaps to the nearest whole printer dot. The readout shows the actual result.
Bar height (mm) sets the bars, while the saved size includes text, margins and any bearer frame. Show the encoded value under the bars controls readable text. Quiet zones stay in place. Bars remain black on white.
The preview fits your screen, so measure the saved print instead of measuring the screen.
Make a label sheet
Label sheet opens A4, US Letter, thermal and custom A4 layouts. Set Label stock, Copies of each and Start at label. Choose a position directly on the preview, or use its arrow keys and press Enter. The start position applies to the first sheet. Positions count across each row before moving down.
Custom stock exposes Label width, Label height, Side margin, Top margin, Column gap and Row gap, all in millimetres. The tool calculates how many labels fit. It refuses a PDF if any barcode is larger than its label.
Print label outlines for a test sheet adds borders to the PDF. Save one page on plain paper first. Compare it against your label stock and print at 100% or Actual size. Turn off fit-to-page scaling. Up to 2000 labels can go into one PDF.
Save an image, a vector or a PDF
Barcode returns to individual files. File format offers SVG, PNG and a PDF page sized to the barcode. SVG and PDF keep the bars as vectors. PNG uses whole-dot bars at your chosen resolution and stores that resolution in the file. Its outer canvas rounds up to whole pixels. Saved size updates to match the selected format.
Save selected saves the row you are inspecting. The batch button saves one file per valid included row, with unique filenames. Its arrow switches between one ZIP and separate files. Batches over 50 files use one ZIP. Quantities affect label sheets, not the number of image files.
Copy value copies the encoded identifier. Open in and Share use the selected output through floi’s shared file bar. Choose Narrow, Wide or Full at the top right for more room. ⌘ + S or Ctrl + S saves the main output.
What it will not do
This generator does not assign product numbers, query a product database or verify GS1 ownership. It does not offer GS1-128 application identifiers, 2D barcodes, ZPL, XLSX imports or a scanner. Use the QR code generator for links, Wi-Fi and contacts.
A correct number and a clean digital image do not guarantee a readable printed label. Your printer, material, packaging and scanner matter. These controls do not certify GS1 compliance. PDF titles use a bundled font; unsupported characters produce an error instead of a substituted title.
Frequently asked questions
Is this barcode generator free for commercial use?
Yes. You can create and save barcodes for your business without an account, payment or a floi watermark. A batch accepts up to 500 rows. A label PDF accepts up to 2000 labels including copies. These are browser workload limits, not a daily allowance.
Does generating a barcode give me an official UPC or EAN?
No. A barcode is a drawing of a number. For retail products, use a product number assigned to you through GS1 or accepted by your retailer. The tool checks the number’s shape and check digit. It cannot verify ownership, registration or retailer acceptance.
Which barcode format should I use for my own stock codes?
Code 128 is a useful starting point for internal stock codes, serial numbers and assets. It accepts printable English letters, digits and keyboard symbols, preserving case. Choose the format your scanner and stock system expect. A shop checkout usually needs an assigned EAN or UPC instead.
Can I generate barcodes from Excel or Google Sheets?
Yes. Copy rows and paste them into List / CSV, or export your spreadsheet as UTF-8 CSV or TSV and open it here. Choose the barcode, title and copies columns. Identifiers stay as text, so the tool preserves leading zeros that are still present in your source. It does not open XLSX files.
What happens when the check digit is wrong?
The row is marked invalid and batch export stops. For a single value, Use corrected value lets you apply the calculated digit explicitly. Check the original number first. When you enter one fewer digit, the tool adds the final check digit and tells you which digit it added.
Why can a barcode fail to scan after printing?
Small or shortened bars, poor contrast, damaged print and missing quiet zones can all cause failures. This tool protects the side margins and uses black bars on white. Print the PDF at 100% or Actual size, then test a real label with the scanner you will use. A successful preview is not a print-quality certificate.
Are my product codes or CSV files uploaded?
The tool draws and exports barcodes in your browser. It does not send your list to a barcode service. If you sign in, typed values and general settings save automatically to your private account. Text opened from a file and its later edits stay in this browser’s local storage. Files, previews and generated images never enter account state.
Something missing? Request a feature