How do I create a UPC barcode?
To create a UPC barcode, type the 11 digits of your number in the box, check the preview, and download the barcode as PNG or SVG. If you already have all 12 digits, type them instead: the page checks the last digit and refuses it if it is wrong. The files have no watermark, and you need no account. What you type is encoded in your browser and is not sent to our servers.
The number in the box when the page opens is an example, not a product number. It begins with 4, and GS1 describes U.P.C. Prefix 4 as used to issue Restricted Circulation Numbers within a company (GS1 General Specifications, Release 26.0, 2026). Replace it with yours before you download.
How do I generate a 12-digit UPC barcode?
To generate a 12-digit UPC barcode, type the 11 digits of your number or all 12: the twelfth digit is the check digit, and the page adds it or checks it.
| You type | The page |
|---|---|
| 40012345678 (11 digits) | Draws 400123456782: the check digit 2 is added. |
| 400123456782 (12 digits, right check digit) | Draws it as typed. |
| 400123456785 (12 digits, wrong check digit) | Refuses it and says: The check digit should be 2, not 5. |
| 40012345676 (11 digits that look like a number that lost its leading zero) | Draws 400123456768 with the check digit added, and warns: If this number lost a leading zero, the barcode is 040012345676. Type all 12 digits to use that one. |
| 4001234567 (10 digits) | Refuses it and says: UPC-A needs 11 digits (the check digit is added) or 12 digits; this has 10. |
The page never changes the digits you type: the leading-zero warning only tells you which 12-digit number you may have meant.
Can a UPC barcode contain letters?
No: a UPC-A takes digits only, so a number with letters needs Code 128, which the barcode generator makes.
How is the check digit of a UPC calculated?
A UPC-A's twelfth digit is its check digit, worked out from the first eleven so that a typing mistake shows up. GS1 US describes it as a single number added to detect errors (GS1 US). GS1's manual method gives the eleven digits the weights 3, 1, 3, 1 and so on, with 3 on the first digit and on the eleventh, then adds the results and subtracts the total from the next multiple of ten (GS1).
| Digits | Added up, times the weight | Result |
|---|---|---|
| 1st, 3rd, 5th, 7th, 9th and 11th digits: 4, 0, 2, 4, 6, 8 | 24 × 3 | 72 |
| 2nd, 4th, 6th, 8th and 10th digits: 0, 1, 3, 5, 7 | 16 × 1 | 16 |
| Total | 72 + 16 | 88 |
| Check digit: the next multiple of ten, 90, minus the total | 90 minus 88 | 2 |
Put the check digit at the end and the UPC-A is 400123456782, the number the page draws for 40012345678. In a UPC-A, when the weighted total is already a multiple of ten, the check digit is 0. GS1's own description of the check digit is that it makes sure the barcode is correctly composed (GS1).
Can this page check the check digit of a UPC?
Yes, for the digit itself: type all 12 digits and the page refuses a wrong last digit and shows the right one, or type the first 11 and it adds the digit. It tests the digit against the other eleven and nothing more, so it cannot tell you who the number was issued to. GS1 offers its own check digit calculator too.
What does UPC stand for?
UPC stands for Universal Product Code, which GS1 US describes as a 1D barcode, a series of vertical lines and spaces, representing a Global Trade Item Number, or GTIN (GS1 US). GS1 says GTIN-12 is also called UPC, a 12-digit number mostly used in North America (GS1 Support). This page makes UPC-A, the 12-digit kind, and it does not make UPC-E.
Should I use UPC or EAN?
Use the kind that matches the number you were issued: GS1 says GTIN-12 is also called UPC and GTIN-13 is also called EAN or JAN (GS1 Support), and GS1 US says both can be used internationally (GS1 US). This page draws UPC-A; for an EAN-13 or the other formats, use the barcode generator.
| What differs | UPC-A | EAN-13 |
|---|---|---|
| Digits you type | 11, or all 12 | 12, or all 13 |
| GS1 name | GTIN-12 | GTIN-13 |
| Where GS1 says it is mostly used | North America | Europe and the rest of the world |
| Quiet zones, left and right | 9 and 9 modules | 11 and 7 modules |
| File size at 100% | 38.3 × 27.1 mm | 38.3 × 27.1 mm |
The quiet zones differ, but the two zones together are 18 modules wide in both, so the two files come out the same size at 100%.
Can I get a UPC for free, and how much does one cost?
This page gives you no UPC, free or paid, and quotes no price: it draws the barcode for a number you already have. GS1 says it is the only official provider of GS1 GTINs and EAN/UPC barcodes in the world (GS1), so ask GS1 what a number costs. In GS1's words, the number starts with a Company Prefix, and a company obtains that prefix from a GS1 member organization (GS1). Drawing the barcode here is free, but the image does not register a number.
Can a UPC barcode show its number under the bars?
Yes: the digits appear under the bars, and you can leave them off by unticking Show the text under the bars in the Size, color and file menu. In an SVG the digits are drawn as outlines, not as a font. The Print dialog has the same option.
What size should a UPC barcode be?
At 100%, the UPC-A file from this page measures 38.3 × 27.1 mm, quiet zones included, and its bars are 0.339 mm wide. GS1 Canada's reference puts 100% at a bar width of 0.33 mm and allows 80% to 200% (GS1 Canada, EAN/UPC Symbol Reference, 2018); the Size menu offers those three steps and rounds each bar to whole pixels, which is why 100% gives 0.339 mm.
| Size | Bar width | Printed size |
|---|---|---|
| 80% | 0.296 mm | 33.5 × 23.7 mm |
| 100% | 0.339 mm | 38.3 × 27.1 mm |
| 200% | 0.635 mm | 71.8 × 50.8 mm |
At 300 dpi, 80% gives the same file as 100%. For automated scanning, such as logistics, GS1 Canada recommends 150% to 200% (GS1 Canada, EAN/UPC Symbol Reference, 2018), and of our three sizes only 200% falls in that range. Choosing Short for the bar height on a UPC-A shows the warning Shorter than the GS1 height.
To print a UPC-A at the size shown, choose Print at true size, then choose Scale 100% (Actual size) in the print window and check that the ruler on the page measures 50 mm.
How do I make UPC barcodes in bulk?
To make UPC barcodes in bulk, open Bulk, put one UPC number on each line, and download one ZIP: up to 1,000 SVG files or 100 PNG files in each. Each line follows the UPC-A rules, so a line of 11 digits gets its check digit added and a line of 12 digits is checked. A wrong check digit stops the download and the page names the line, as in Line 3: The check digit should be 2, not 5. Bulk gives the same leading-zero warning as the single box. There is no CSV or Excel import: paste the list. Print in Bulk lays the list out on A4 or US Letter pages, each with a ruler to check the printed size.
Why won't my UPC barcode scan?
A UPC-A can fail to scan when its check digit is wrong, when its blank margins are cut off, when it is printed too small, or when its bars are too light. Here the page refuses a wrong check digit, keeps the blank margins in every file (9 modules on each side for a UPC-A), and warns when a bar color is too light or has much red in it. GS1 Canada advises black bars on a white background and says to avoid red, orange and yellow bars, because the scanner's laser is red (GS1 Canada, Barcoding for Designers, Printers and Packagers, 2024). At every build, our tests draw UPC-A in every size and resolution as PNG and SVG and read each file back with a software decoder. Printed labels and handheld scanners are not part of those tests, so scan one printed label before you print many.