I've googled for over 30 mins now, I can't find a free barcode font for EAN-13. Anyone know of any? fontsquirrel have none, Dafont have a few, But none of them are EAN-13 (as far as I know).

10 Answers 10


If you need a small number of barcodes, and have some time but no budget, it's simple to produce vector-based barcodes using an online barcode generator and Illustrator (or whatever your tool of choice is).

For example, http://www.barcoding.com/upc/ will produce an EAN-13 barcode for you for free. The cool thing about their images is that they are snapped to-pixel, so you can get a black-and-white PNG with no anti-aliasing.

Copy the PNG into your vector program and, if snap-to-pixel is available, it's a very quick process to draw a bunch of rectangles over the barcodes. You can then put the numbers at the bottom using whatever machine-looking font you want.

Booya, barcodes!

Addendum: I have used this process to create barcodes for products that have been sold at retail level. It does work, but it is still best practice to verify the printed code before you go into production.


The free Inkscape vector graphics editor contains a vector barcode generator: Extensions → Render → Barcode. It will also generate / verify the checksum for you. You can then save it to SVG, PDF or some other suitable format and open it in your tool of choice.

Here's a sample of the output (exported as PNG):

Barcode Barcode


I don't know much about barcodes, but I don't think this code is conducive to a typeface solution, because there seems to be an algorithmic process for creating the barcode.

from wikipedia:

To encode an EAN-13 barcode, the digits are first split into 3 groups, the first digit, the first group of 6 and the last group of 6. The first group of six is encoded using a scheme whereby each digit has two possible encodings, one of which has even parity and one of which has odd parity. The first digit is encoded by selecting a pattern of choices between these two encodings for the next six digits, according to the table below. (Unlike the other digits, the first digit is not represented directly by a pattern of bars.) All digits in the last group of six digits are encoded using a single set of patterns which are the same patterns used for UPC.

Some barcode schemes (like 3 of 9) are essentially straight-ascii replacements which work by merely changing the typeface of the "data." Many are not.

The wikipedia article does reference an open source project for barcode generation: http://sourceforge.net/projects/openbarcodes/

Note that there is a homepage listed for the developer and, if you can ignore his lack of aesthetic sensibilties, there is a pretty good explanation of ean-13 and his home-brew free typeface. (which obviously contradicts my assertion about font replacement)

  • 2
    I've done a bit of packaging for retail shelves - yes, UPCs are algorithmic and parts of the patterns are inverted/reversed copies of other parts of the pattern for verification purposes. No way to do this with a simple font, as far as I am aware.
    – Farray
    May 3, 2011 at 16:26
  • I didn't look too deeply into the linked program(s), but it seems like the code is developed for use with the typeface, so if you paste the text code his program generates into a word processor or layout program, and then set the typeface to his font file, you get a barcode. I think. Maybe. At the very least, you can screecap whatever his program creates and then place it as a gif or png
    – horatio
    May 3, 2011 at 17:47
  • I'll be honest, I saw "barcode generation" and didn't even look into his method - I (ignorantly) assumed he was just creating images like most of the other ones I've seen. Using the generator with a custom typeface sounds interesting.
    – Farray
    May 3, 2011 at 17:50
  • I only noticed a text-based output result in his screencaps, with an image below all.
    – horatio
    May 3, 2011 at 17:55

The top answer is still not specifically answering what was asked for. I made a free font which is on FontStruct now: Download

  • You should get the accepted answer check-mark since you actually offered a font with the instructions. Apr 20, 2020 at 15:11

Late answer but still :)

Very interesting question :). Such font would be perfectly possible and could be used to create valid EAN-13 codes. In fact it would have to have only 31 characters to cover all EAN-13 combinations. Other thing is that such font wouldn't be much practical, since every time one'd have to make an effort to keep proper encoding seqence for digits 2-7 (used to determine 1st digit), and calculate checksum. But that's just for interest sake :).

If you need good barcode generator for creating any number of barcodes and are not afraid of command line, take a look at http://xpt.sourceforge.net/techdocs/nix/print/barcode/bp02-GnuBarcode/ (windows version if needed: http://gnuwin32.sourceforge.net/packages/barcode.htm). Nice thing is: it can create vector files as output (important: it uses stroke width to produce thin and thick lines). I know there's a bunch of different tools out there but this one is small, simple and just works… for free :).

And finaly: http://www.darkroastedblend.com/2008/04/japanese-creative-barcodes.html. Get inspired! :)

  • 1
    This will require conversion functions in order to work. I think the point in OP is that you just type what you need to have as barcode value and they select a font to represent the bars and print (except for the checksum of course if that is used). You can do this with UPC/Code-128/39 etc., but not with EAN-8/13 as these are constructed differently.
    – user7179
    Nov 13, 2012 at 0:02
  • Right, but I think I made that clear in my answer…
    – thebodzio
    Nov 16, 2012 at 10:30
  • Yes the checksum and varying code is a bit hard for humans to type. However if anybody is interested i have a simplified eps file that does any ean
    – joojaa
    Apr 4, 2014 at 5:12

I found a pretty complete write up here: http://grandzebu.net/informatique/codbar-en/ean13.htm explains: how to generate checksum digit (and supplies a VB program to do it), and includes an Excel macro & EAN-13 TTF font w/ installer

  • 1
    Hi Rick! Thank you for your link. If you could add some of that information in the answer itself, I think it would get A LOT of positive votes. Links can go down, so we tend to try and add as much as possible here in case that happens. Welcome to GD.SE!
    – Yisela
    Apr 4, 2014 at 3:31

IDAutomation has a font which I used to use in the past. It works even without buying anything, but it puts some funny little watermark into the barcode that rats your out as using the non-commercial trial only. Still, it is good to play around with. https://www.idautomation.com/barcode-fonts/upc-ean/user-manual/

However, there are other ways, such as these guys, who have a free service: https://barcode.tec-it.com/en/EAN13

For example, if my number is 03 54321 001 01 I just put that in here


and there you go:

they even add the check digit.


https://github.com/graphicore/librebarcode https://graphicore.github.io/librebarcode/

Set of fonts (and font generators) for Code 39, Code 128 and EAN-13. Licensed under Open Font License (fonts) and GPL3+ (generators).

It will even calculate checksum digit in EAN-13 for you.


Not that this really answers your question specifically, but I've never had to looking for a bar code font, because we always just use barcode software to generate our barcodes. They generally cost a fair amount of money, but we've also have never been faced with this problem.


I also don't have much experience in this kind of thing, but I happen to see a site which tells something about ean 13 barcode maker voor word, I believe that this would be some of help to you.

  • 1
    Hi user27616, could you please tell us a bit more about what we are supposed to find at this link? In that case, your answer is still valuable in case the link breaks. Actually, the link you give is dead. Thanks for the fix!
    – Vincent
    Jul 23, 2014 at 8:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.