No barcode yet
Type a value above and hit Generate — or try a real-world example to get started instantly.
How to use the barcode generator
- Type the text or number you want encoded — a SKU, serial number, ISBN, or product code.
- Choose a barcode format that matches your use case — CODE128, EAN13, UPC, or CODE39.
- Select Generate barcode to render it instantly in your browser.
- Download the PNG for printing, or copy the raw value to paste elsewhere.
Tip: if you're not sure which format to pick, start with CODE128 — it accepts letters, numbers, and symbols, and is readable by virtually every modern scanner.
Quick format comparison
| Format | Best for | Example input |
|---|---|---|
| CODE128 | General text, mixed alphanumeric data, internal tracking codes | SKU-8841-A |
| EAN13 | Retail products sold in Europe/international markets | 5901234123457 |
| UPC | Retail products sold in the US/Canada | 036000291452 |
| CODE39 | Logistics, inventory, industrial & automotive labeling | ABC-12345 |
Common mistakes to avoid
- Adding spaces, hyphens, or letters inside an EAN13/UPC value — those two formats only accept plain digits.
- Typing a full 13-digit EAN13 or 12-digit UPC where you guessed the last digit — leave it off and let the tool calculate the correct check digit for you.
- Printing a barcode smaller than roughly 1 inch (2.5cm) wide and expecting it to scan reliably every time.
- Using CODE128 or CODE39 for an item that needs to scan at a real retail checkout — most point-of-sale systems expect EAN13 or UPC specifically.
Code-128 Barcode Generator
General-purpose · letters, numbers & symbols · no fixed length
CODE128 is a high-density linear barcode symbology that can encode all 128 ASCII characters — uppercase and lowercase letters, digits, and punctuation. It automatically switches between three internal character sets to keep the barcode as compact as possible, which is why it's the default choice for general-purpose tracking.
When to use CODE128
Reach for CODE128 whenever you need to encode alphanumeric data that doesn't fit a fixed-length retail standard — internal SKUs, shipping and logistics labels, asset tags, ID badges, and warehouse tracking codes.
Real-world CODE128 examples
✓ Pros
- Encodes letters, numbers, and symbols
- Very compact — no fixed digit count
- Widely supported by modern scanners
✕ Limitations
- Not a retail point-of-sale standard
- Won't scan at most store checkouts
- Slightly more complex structure than numeric codes
EAN-13 Barcode Generator
International retail standard · 12–13 digits · checksum validated
EAN-13 (European Article Number, now managed globally by GS1) is a 13-digit numeric barcode standard used at retail checkouts worldwide. It's structured as a country/prefix code, manufacturer code, product code, and a final checksum digit that lets scanners verify the number was read correctly.
When to use EAN13
Use EAN13 for retail products sold in Europe, Asia, and most international markets outside the US and Canada. Many online marketplaces also require a valid EAN when listing physical products, and book ISBN-13 numbers use the same 13-digit format.
Real-world EAN13 examples
✓ Pros
- Recognized at retail POS scanners worldwide
- Compact, fully numeric encoding
- Official GS1 international standard
✕ Limitations
- Numeric only, fixed 12–13 digit length
- Requires a valid checksum digit
- Real retail sale needs an official GS1 prefix
UPC Barcode Generator
US & Canada retail standard · 11–12 digits · checksum validated
The Universal Product Code (UPC-A) is an 11–12 digit numeric barcode standard used primarily in the United States and Canada. It's structurally compatible with EAN13 — a UPC can be read by any EAN13-capable scanner — which makes it the de facto standard for North American retail.
When to use UPC
Use UPC for retail products sold in US and Canadian stores, grocery items, and marketplace listings on platforms like Amazon or Walmart that require a valid GTIN/UPC for physical product listings.
Real-world UPC examples
✓ Pros
- Standard for North American retail scanners
- Compact, fully numeric
- Interoperable with EAN13 systems
✕ Limitations
- Numeric only, fixed digit count
- Official codes require licensing through GS1 US
- Not used outside North American retail
How the check digit is calculated
EAN13 and UPC barcodes end with a single check digit that lets a scanner confirm the rest of the code was read correctly. This tool calculates it automatically using the official GS1 formula, so you only ever need to type the digits that actually identify your product — 12 for EAN13, or 11 for UPC.
EAN13 (13th digit)
- Starting from the left, multiply each of the first 12 digits by 1 or 3, alternating position by position (1st digit ×1, 2nd ×3, 3rd ×1, and so on).
- Add all 12 results together.
- Take that total modulo 10. If the result isn't already 0, subtract it from 10 — that's the check digit.
UPC (12th digit)
UPC uses the same idea with the multipliers reversed — 1st digit ×3, 2nd ×1, 3rd ×3, and so on across the first 11 digits — then the same "round up to the next multiple of 10" step to get the final digit.
You don't need to do this math yourself. Enter just 12 digits for EAN13 (or 11 for UPC) and the generator appends the correct check digit for you automatically. If you already have a full 13-digit EAN13 or 12-digit UPC, the tool verifies the existing check digit and tells you exactly what it should be if it doesn't match — rather than silently generating an unscannable barcode.
Worked example: for the first 12 digits 890103082619, the EAN13 formula produces a check digit of 1 — giving the complete, valid code 8901030826191.
Code-39 Barcode Generator
Logistics & industrial standard · uppercase letters, digits & symbols
CODE39 is one of the oldest and simplest widely-supported barcode symbologies. It encodes uppercase letters, digits, and a handful of symbols using variable-width bars, and is readable by nearly every barcode scanner ever made — including older industrial hardware.
When to use CODE39
CODE39 is a strong fit for logistics, industrial and automotive parts labeling, warehouse asset tags, and healthcare or medicine batch labels — anywhere robustness and backward compatibility with older scanners matter more than data density.
Real-world CODE39 examples
✓ Pros
- Simple and extremely robust
- Readable by nearly all scanners, old and new
- No checksum required (self-checking design)
✕ Limitations
- Less data-dense than CODE128
- Uppercase letters only, limited symbol set
- Not used at retail checkout
Note: these generators produce barcodes for labeling, testing, and internal use. If you're listing products with a retailer or marketplace, confirm you're using an officially assigned EAN/UPC number from GS1 — reusing an arbitrary number can cause listing conflicts.
QR Code vs Barcode
Barcodes and QR codes both encode data for a scanner to read, but they're built differently and suit different jobs. Here's how they compare at a glance.
| Attribute | Barcode (1D) | QR Code (2D) |
|---|---|---|
| Structure | Parallel lines, read in one direction | Grid of squares, read in two directions |
| Data capacity | Low — typically a short ID or number | High — can store URLs, contact cards, Wi-Fi credentials |
| Damage tolerance | Low — a torn line can break the scan | Higher — built-in error correction |
| Typical use case | Retail checkout, inventory, shipping | Links, payments, menus, marketing |
| Scanning hardware | Laser or camera-based scanners | Camera-based scanners (most smartphones) |
Need a QR code instead of a linear barcode? Try our QR Code Generator.
Features
4 barcode formats
Instant generation
No data stored
Mobile friendly
How TickmarkTools compares
An honest, feature-by-feature look at browser-based barcode generation.
| Feature | TickmarkTools | Typical free sites | Design suites (Canva/Adobe) |
|---|---|---|---|
| Price | Free | Free / freemium | Free tier + paid plans |
| Sign-up required | No | Often yes | Yes |
| Data leaves your device | Never | Usually | Usually |
| Watermark on export | None | Sometimes | On free tier |
| Formats supported | 4 (128/EAN13/UPC/39) | Varies, often 1–2 | Varies |
| Mobile friendly | ✓ | Varies | ✓ |
| Works without account | ✓ | Varies | ✗ |
Comparisons reflect typical behavior of general-purpose competitors as of August 2026 and may vary by provider.
Why you can trust this tool
No data stored
Your input is never saved or logged.
Secure processing
All generation happens client-side in your browser.
Fast processing
Barcodes render in milliseconds, no waiting.
Mobile friendly
Generate and download barcodes from any device.
No sign-up
No account, no email, no watermark.
Works offline*
Once loaded, generation needs no internet connection.
Accuracy & limitations
This tool generates mathematically valid barcodes and checks EAN13/UPC values against the official GS1 checksum formula, so any barcode you download will accurately encode the value shown. A few things are worth knowing before you rely on one:
- Valid isn't the same as officially registered. A correct checksum only means the number is well-formed — it doesn't mean it's licensed to you. For real retail sale, EAN13/UPC prefixes must be assigned by GS1.
- Print size affects scannability. A barcode that looks perfectly clear on screen can fail to scan if printed too small or too low-resolution — keep it at least 1 inch (2.5cm) wide when printing.
- Format support varies by scanner. CODE128 and CODE39 are excellent for internal and industrial use, but most retail point-of-sale systems only accept EAN13 or UPC.
- Contrast and background matter. Print on a plain white or very light background — busy patterns, low contrast, or colored backgrounds reduce scan reliability.
Barcode FAQ
Yes, completely free with no sign-up, no watermark, and no usage limit.
CODE128 works for general text and mixed alphanumeric data. EAN13 and UPC are for retail products and require a specific digit count with a valid checksum. CODE39 is common in logistics and inventory.
Yes. Download the PNG and print at a size large enough for reliable scanning — at least 1 inch (2.5cm) wide is a safe starting point.
No, the barcode is generated entirely in your browser using JavaScript — nothing you type is sent to a server.
EAN13 requires exactly 12–13 digits and UPC requires 11–12 digits, each with a valid checksum. Letters or an incorrect digit count will cause an error — try CODE128 if you just need a general-purpose barcode.
A barcode is a 1D symbol made of parallel lines that stores a short ID or number. A QR code is a 2D symbol that can store far more data, including full URLs, and tolerates more damage or obstruction.
For real retail sale through a store or marketplace, yes — you need an officially assigned GS1 prefix. For internal labeling, testing, or personal projects, any validly formatted number will scan correctly.
Automatically, using the official GS1 formula — alternating digits are multiplied by 1 and 3 (or 3 and 1 for UPC), the results are summed, and the total is rounded up to the next multiple of 10. See "How the check digit is calculated" above for the full walkthrough, or just enter your first 11–12 digits and let the tool add it for you.
🤖 Ask AI about this tool
Select a question for an instant answer. Full conversational AI is coming soon.
Can't find the tool you need?
Tell us what to build next — we ship new tools regularly.