UPC-A Barcode Generator
Generate UPC-A product barcodes for retail packaging and point-of-sale identification.
Barcode & Matrix Generator
Live Studio Preview
Code 128 Batch Serial Number Generator
Generate sequential Code 128 barcodes for warehouse SKUs, asset tags, inventory labels, and other internal identifiers.
UPC-A Barcode Generator
Quick answer: UPC-A encodes 12 digits including one check digit, governed by ISO/IEC 15420 and administered by GS1 US. It is the North American retail point-of-sale standard and encodes a GTIN-12. Structurally, UPC-A is EAN-13 with a leading zero prepended. This generator produces a correctly structured symbol; the GTIN-12 encoded must be licensed from GS1 US for retail use.
What a UPC-A barcode is
UPC-A stands for Universal Product Code Version A. The governing standard is ISO/IEC 15420, which covers the EAN/UPC barcode symbology family. GS1 US administers the assignment of U.P.C. Company Prefixes to US and Canadian brand owners; GS1 Canada and other national Member Organisations handle their respective territories.
UPC-A encodes a GTIN-12 — a 12-digit Global Trade Item Number. GTIN-12 is UPC-A expressed as a data structure. All US retail point-of-sale scanners read UPC-A natively. Internationally, UPC-A is understood because it is structurally identical to EAN-13 with a leading zero: any EAN-13 that begins with 0 decodes as a UPC-A when the scanner is set to return 12-digit output.
UPC-A technical specification
| Field | Value | Source |
|---|---|---|
| Full name | Universal Product Code Version A (UPC-A) / GTIN-12 | GS1 General Specifications v10 §2.1.2.1.3 |
| Standard | ISO/IEC 15420 (EAN/UPC symbology) | GS1 General Specifications |
| Digit count | 12 (11 data + 1 check) | GS1 General Specifications |
| Character set | Numeric only (0–9) | GS1 General Specifications |
| Check digit | GS1 modulo-10 applied to 11 digits | GS1 General Specifications §7.10.1 |
| Relationship to EAN-13 | UPC-A = EAN-13 with leading zero prepended; bit-identical at symbol level | GS1 General Specifications; barcodepress.com |
| Magnification range | 80%–200% of nominal size | GS1 General Specifications |
| GS1 licensing | U.P.C. Company Prefix from GS1 US; starting $250/year for 10 GTINs, $30 for a single GTIN-12 | GS1 US: gs1us.org |
UPC-A digit structure
A UPC-A number has four logical fields:
Number system digit. The first digit (leftmost) indicates the product category. Zero is the most common for general retail products. Some values are reserved: 2 for random-weight items, 3 for pharmaceuticals, 4 for retailer-controlled codes, 5 for coupons, and others by GS1 assignment.
Manufacturer code. Digits 2–6 (in a 5-digit company prefix) or more, depending on prefix length. This identifies the brand owner and is assigned as part of the U.P.C. Company Prefix.
Product code. The item reference digits that the brand owner assigns to identify each distinct product within their prefix.
Check digit. The twelfth and final digit, calculated from the first eleven using the GS1 modulo-10 algorithm.
How the UPC-A check digit is calculated
The GS1 modulo-10 algorithm applies to the first 11 digits. From the right (position 1 = rightmost data digit, position 11 = leftmost), multiply digits at odd positions by 3 and digits at even positions by 1. Sum all eleven products. Subtract the units digit of the sum from 10. If the result is 10, use 0.
Worked example: calculate the check digit for 01234567890_ (underscored digit unknown).
Digits 1–11: 0 1 2 3 4 5 6 7 8 9 0
From the right (position 1 = rightmost = 0): 0 at position 1 (odd): ×3 = 0 9 at position 2 (even): ×1 = 9 8 at position 3 (odd): ×3 = 24 7 at position 4 (even): ×1 = 7 6 at position 5 (odd): ×3 = 18 5 at position 6 (even): ×1 = 5 4 at position 7 (odd): ×3 = 12 3 at position 8 (even): ×1 = 3 2 at position 9 (odd): ×3 = 6 1 at position 10 (even): ×1 = 1 0 at position 11 (odd): ×3 = 0
Sum = 0 + 9 + 24 + 7 + 18 + 5 + 12 + 3 + 6 + 1 + 0 = 85
Units digit of 85 = 5. Check digit = 10 − 5 = 5.
Complete UPC-A: 012345678905.
When to use UPC-A
Retail products sold in the United States and Canada. UPC-A is the POS standard at every North American retailer: Walmart, Target, Kroger, CVS and all other major chains. If your product will be stocked in these stores, UPC-A is the format those systems expect.
Amazon FBA listings. Amazon requires a GS1-licensed GTIN for most product listings in its US marketplace. The barcode on the product must match the GTIN in the Amazon catalogue. Amazon's own FNSKU label is a separate identifier used for fulfilment — the product itself still needs a UPC-A or EAN-13 for catalogue lookup.
Reprinting a damaged label. If your product already has a GS1-licensed GTIN-12 and the label is unreadable, generate the barcode from that number. The generator creates the symbol; the GS1 licence already exists.
Packaging artwork and pre-press. Generate a correctly structured UPC-A at 4096 px SVG for artwork files. Verify the check digit before sending to a printer or a packaging agency.
Scanner setup and testing. Use any valid 12-digit UPC-A to verify that a reader, a POS system or a warehouse scanner is decoding correctly without touching live product records.
Internal SKU labelling. UPC-A format barcodes are usable for internal inventory tracking without any GS1 registration, as long as those codes never enter a GS1-connected supply chain. Label internal codes clearly as non-GS1 identifiers.
UPC-A versus EAN-13 — which do you need?
| UPC-A | EAN-13 | |
|---|---|---|
| Data structure | GTIN-12 (12 digits) | GTIN-13 (13 digits) |
| Standard | ISO/IEC 15420 | ISO/IEC 15420 |
| Primary markets | United States, Canada | Global |
| Encoding relationship | Leading-zero EAN-13 is bit-identical to UPC-A | — |
| Post-2005 scanner reading | Both read by all North American POS scanners | Both read by all international POS scanners |
| GS1 licensing body | GS1 US (for US products) | GS1 Member Organisation in relevant country |
If you are selling exclusively in the US or Canada and have no international expansion plans, UPC-A is sufficient. If you are selling in Europe, Asia, Australia or through international e-commerce channels, use EAN-13 — it is accepted everywhere and avoids a format conversion later. A GTIN-12 UPC-A can be expressed as a GTIN-13 by prepending a zero, so the two are compatible at the data level.
Design and print requirements
Print UPC-A at 80%–200% of nominal size. Below 80%, consumer-grade scanners become unreliable. The standard quiet zone must be maintained on both the left and right sides of the symbol — clipping these zones is the most common production cause of checkout scan failures.
Use dark bars on a light background. Avoid printing over imagery or coloured substrates without a pre-press verification scan against the GS1 reflectance contrast specification.
Export at 2048 px minimum for print-ready files; 4096 px is preferred for packaging artwork. SVG format is lossless and scales to any output resolution.
Troubleshooting: why your UPC-A is not scanning
Check digit is wrong. Re-enter all 11 data digits and recalculate the twelfth. Smart Barcode Intelligence flags a mismatch before export.
Number is 12 digits but scanner returns 13. Scanners set to return EAN-13 output prepend a zero to UPC-A data. This is correct behaviour — the result is the same product GTIN in GTIN-13 format. It is not an error.
Symbol is too small. Below 80% magnification, narrow bars can fall below the minimum printable width. Increase magnification or use a higher-resolution label printer.
Quiet zones are removed by die-cutting. Ensure the label artwork reserves the full quiet zone outside the barcode boundary before the label is cut.
Number system digit is wrong. The first digit must be valid for the product category. A pharmaceutical product expects digit 3; a coupon expects digit 5. Mismatched number system digits do not cause scan failure but can cause lookup failures in retailer databases.
The GS1 licensing requirement — what a barcode generator cannot do
This section carries the information most important to sellers and brand owners.
A barcode generator produces a correctly structured, scannable symbol. It does not issue GTINs and does not give you the right to use any 12-digit number on retail products.
For products sold through US retail stores, online marketplaces (Amazon, Walmart, eBay) or any GS1-connected supply chain, the GTIN-12 encoded in the barcode must be licensed from GS1 US. Using a number you invented creates a barcode that scans correctly but may collide with another brand's product, fail registry checks, and lead to marketplace listing suspension.
GS1 US pricing (source: https://www.gs1us.org/upcs-barcodes-prefixes/what-is-a-prefix, verified 2026-06-02): a single GTIN-12 costs $30; 10 GTINs cost $250 initial plus $50/year; 100 GTINs cost $750 initial plus $150/year.
Legitimate uses of this generator:
- Reprinting a label for a GTIN-12 you already own.
- Creating packaging artwork before your GS1 prefix is finalised — use a clearly marked placeholder.
- Testing scanner and POS system setup.
- Internal inventory labelling that never enters the GS1 supply chain.
Using this barcode in Bahrain and international supply chains
Bahrain retailers, importers, manufacturers and logistics teams should match identifiers to the rules of their trading partners. Retail GTINs must come from the proper issuing organisation; a generator creates artwork but does not assign ownership. Internal stock and asset references may use organisation-defined values when the receiving system supports them.
Use British English in operational guidance where it matches your organisation’s style, and add Arabic instructions for teams that need them. Print under the actual conditions of use. Bahrain’s heat, bright light, dust, curved packaging and reflective laminate can expose contrast or surface problems that are invisible on a monitor.
Keep quiet zones clear, avoid stretching the image, and prefer dark bars on a plain light background. Scan samples from the beginning, middle and end of a print run. For regulated retail, healthcare, publishing or logistics use, confirm the current GS1, ISBN-agency, customer or industry specification before approving production.
Before you print
- Correct symbology selected
- Identifier ownership confirmed
- Check digit verified
- Quiet zones kept clear
- Strong bar contrast
- Aspect ratio unchanged
- SVG or high-resolution PNG
- Production scanner test
Frequently asked questions
Open a question to read a concise technical answer.
01What is a UPC barcode?+
UPC-A (Universal Product Code Version A) is a 12-digit barcode defined by ISO/IEC 15420 and administered by GS1 US. It encodes a GTIN-12 — a Global Trade Item Number used to identify retail products at point of sale. UPC-A is the North American retail standard and is read by all modern POS scanners in the United States and Canada.
02How do I get a UPC barcode for my product?+
Obtain a GTIN-12 from GS1 US (gs1us.org). A single GTIN costs $30; a block of 10 GTINs costs $250 initial plus $50/year. Once you have a licensed GTIN, use this generator to produce the barcode symbol. The generator creates the image; GS1 creates the licence. Do not use an invented number for retail products.
03Can I make my own UPC barcode for free?+
You can generate a UPC-A symbol for free in this tool. A generated symbol from an invented 12-digit number is scannable. However, for retail or marketplace use, the number encoded must be a GS1-licensed GTIN-12. An unlicensed number can collide with another brand's product and will fail retailer and marketplace registry checks. For internal inventory use only, a self-assigned number carries no GS1 requirement.
04Do I need to buy a barcode to sell on Amazon?+
Amazon requires GS1-licensed GTINs for most product catalogue listings in the US marketplace. A generated barcode from an unlicensed number does not satisfy this requirement — Amazon verifies GTINs against the GS1 registry. You need a GS1-issued GTIN-12 (UPC-A) or GTIN-13 (EAN-13) before listing most products. Amazon's FNSKU is a separate label used for fulfilment, not a substitute for a GS1 GTIN.
05How is the UPC-A check digit calculated?+
Apply the GS1 modulo-10 algorithm to the first 11 digits. From the right, multiply digits at odd positions by 3 and at even positions by 1. Sum the products, subtract the units digit from 10, and use 0 if the result is 10. For example, 01234567890 gives a sum of 85 and a check digit of 5, producing 012345678905. Source: GS1 General Specifications §7.10.1.
06What is the difference between UPC-A and EAN-13?+
UPC-A encodes 12 digits (GTIN-12); EAN-13 encodes 13 digits (GTIN-13). Structurally, a UPC-A is identical to an EAN-13 with a leading zero. Since GS1 Sunrise 2005, all North American scanners read both formats. If you sell globally, use EAN-13. If you sell only in North America, UPC-A is the historical standard, though EAN-13 is also accepted everywhere.
07What barcode do I need to sell in Walmart?+
Walmart requires GS1-licensed GTINs for all products on its shelves and in its supplier portal. UPC-A (GTIN-12) is the standard Walmart POS format. The GTIN must be registered in the GS1 Global Data Synchronisation Network (GDSN) or equivalent supplier onboarding system. A generated barcode with an unlicensed number will not pass Walmart's item setup process.
08Why does my UPC start with 0 and scan as EAN-13?+
A UPC-A number beginning with 0 is bit-identical to an EAN-13 with a leading zero. Scanners configured to output 13-digit EAN-13 data will prepend a zero and return a 13-digit string. Scanners configured for 12-digit UPC-A output will strip the leading zero and return 12 digits. Both readings represent the same GTIN. This is expected behaviour, not a barcode error.
09What barcode format should I use for Amazon FBA?+
Use a GS1-licensed UPC-A (GTIN-12) or EAN-13 (GTIN-13) for the product itself. Amazon also requires an FNSKU label for fulfilment centre tracking — this is a Code 128 barcode generated by Amazon, separate from the product GTIN. The product barcode and the FNSKU barcode serve different purposes and both must be present on products entering Amazon's fulfilment network.
10Is the UPC-A barcode generated in my browser?+
Yes. The barcode is generated entirely in your browser. The digits you enter are not sent to any server. The only data that leaves your device is the image file you choose to download. This is Premium Barcode Studio's standard architecture for all barcode generation tools.