Code 128 Barcode Generator

Create linear Code 128 barcodes for inventory IDs and reference numbers

COMPANIES OF ALL SIZES TRUST US

What is a Code 128 barcode?

A Code 128 barcode is a linear symbol that stores text and numbers in bars and spaces. A compatible scanner returns the encoded value to your inventory or business software. QR Code AI accepts up to 80 printable ASCII characters for this format, including uppercase and lowercase letters. The barcode identifies a record; your connected software supplies its product name, price or stock level. See the ISO Code 128 specification for the underlying format.

For an internal stock label, encode SKU-2048-BLUE and keep that exact identifier in your inventory system. Scan the downloaded label into a test field before printing the batch. Choose GS1-128 when a trading partner asks for GS1 Application Identifiers such as a GTIN, lot number or expiry date.

How to create a Code 128 barcode

Enter the data, check the symbol and test the downloaded label in the workflow where it will be scanned.

  1. Step 1

    Enter the correct data

    Enter your internal identifier, such as SKU-2048-BLUE. Keep capitalisation and punctuation consistent with the record your scanner should retrieve.

  2. Step 2

    Review the symbol and contrast

    Choose a dark foreground on a lighter background. Keep the built-in quiet zones and add padding if needed. Review the preview and resolve validation or scannability errors.

  3. Step 3

    Download and test a label

    Choose PNG, JPG, WebP, SVG, PDF or EPS. Preserve proportions and clear margins in your layout, then scan a printed sample with the intended reader and compare the returned data.

Prepare your Code 128 label for its destination

Check your data, preserve clear margins and choose the right file for your label.

Keep mixed-case identifiers intact

Code 128 supports printable ASCII text, including lowercase letters. Use the identifier already held in your system and compare the decoded output character by character. Do not add GS1 field labels to an ordinary Code 128 value.

Keep clear margins

The generator preserves required quiet zones around the symbol. Keep these areas clear in your layout, and test a printed sample at its intended size with the scanner you will use.

Choose your export format

Download SVG, PDF or EPS vectors, or PNG, JPG or WebP images. Every export is checked against the saved data; test the final print on its intended material too. Compare the six barcode download formats in our guide.

Code 128 for stock and work references

A blue item labelled SKU-2048-BLUE and a storage bin labelled BIN-A-03, each with its own Code 128 barcode.

Give stock and storage locations separate references

In an internal warehouse workflow, SKU-2048-BLUE can identify stock while BIN-A-03 identifies its storage location. Separate references let the receiving application distinguish what an item is from where it is stored. Code 128 carries each reference; your inventory system maintains the relationship.

Two workshop documents carrying Code 128 barcodes for the same job reference, JOB-1042.

Use a job reference across workshop documents

A work order can carry JOB-1042 on its traveller sheet and related paperwork. Each barcode refers to the same job record in your workshop system. The document's printed instructions remain separate from that reference; scanning it only supplies the value to the application in use.

Code 128 vs Code 39 vs GS1-128

QR Code AI preserves mixed-case Code 128 references and offers native SVG, PDF and EPS artwork for inventory labels. Compare it with uppercase Code 39 and structured GS1-128 before choosing the format your receiving system expects. Green checks mark a better fit for the stated need. Select an icon or underlined label for details.

Format and input guidance · sources checked October 30, 2026
What to compare
Code 128
Code 39GS1-128

Input data

A–Z, digits, symbols

A–Z, digits, symbols

Uppercase letters, digits and selected punctuation

Selected GS1 AIs

Selected GS1 AIs

Supported GS1 Application Identifier fields

Letter case

Uppercase conversion

Uppercase conversion

Lowercase normalised to uppercase

AI-specific rules

AI-specific rules

Character rules depend on each AI

Data meaning

Asset-system reference

Asset-system reference

Your asset system defines the reference

GS1 field meanings

GS1 field meanings

GS1 AIs identify each field

Example task

ASSET-2048

ASSET-2048

ASSET-2048 equipment tag

GTIN + lot + date

GTIN + lot + date

GTIN with a lot and expiration date

Best fit

Code 39 required

Code 39 required

Your existing workflow requires Code 39

GS1 data required

GS1 data required

Your partner requires structured GS1 data

Before releasing a QR Code AI download, the exported image or vector artwork must decode to the saved value in the expected format. For a mixed-case stock reference, that checks the actual file you hand over, including letter case.

QR Code AI accepts up to 80 printable ASCII characters for Code 128 and 60 for Code 39; these are editor limits. Code 39 here is the uppercase variant. GS1-128 uses a specific start structure and AIs, not parentheses added to ordinary text. See the GS1 explanation of FNC1 and Code 39 specification overview.

Code 128 barcode questions

Input, printing and saved barcode behaviour

This Code 128 generator accepts 1 to 80 printable ASCII characters: letters, digits, spaces and supported punctuation. It does not accept arbitrary Unicode or control characters. These are the editor's input limits, rather than a statement about every Code 128 implementation.

Code 128 supports mixed-case printable ASCII text in this editor. Code 39 uses uppercase letters, digits and a smaller punctuation set. Choose the format expected by your scanner and inventory software; switching formats alone does not create an inventory record.

No. GS1-128 uses Code 128 encoding with GS1-specific structure and Application Identifiers. Use the GS1-128 generator for structured GTIN, lot, date or SSCC data. Typing parentheses around numbers in an ordinary Code 128 barcode does not make it a GS1-128 symbol.

Yes. QR Code AI offers SVG, PDF and EPS vector exports, plus PNG, JPG and WebP raster files. Keep the complete symbol and its blank margins in the layout. Verify a printed sample at its intended size with a compatible scanner.

A downloaded barcode contains fixed data and has no built-in expiry date. Changing a saved value requires downloading and printing a new symbol; existing copies keep their original data. These Barcodes do not provide scan analytics or editable redirects. A connected inventory or checkout system may update its own record for the same identifier. For customer-facing web links with scan analytics, consider a URL QR code and QR code tracking.

Yes. A personal account and each non-Premium Workspace can create three Barcodes. Archiving a Barcode does not free a creation slot; Premium allows additional creations. Creating, editing or downloading a Barcode does not start the seven-day trial. The trial begins with the first dynamic QR code or Smart Link in that scope. The barcode itself retains its directly encoded value when a trial ends; it has no managed redirect to keep active.