We spend the entire day using code editors, terminal emulators, and other developer tools. Using a font that feels comfortable to your eyes can make a huge difference and improve your productivity.
Here's a compilation of the best free monospace fonts for coding, along with additional comments and download links.
I've used Monaco for 10+ years until I finally met Fira Code. This font has more than 53,600 stars on GitHub, and it's popular for a reason. Nikita Prokopov puts a lot of effort into the ligatures, which transforms characters into single logical tokens. It's my favorite font nowadays.
The Plex family was created to replace Helvetica as the IBM corporate typeface after more than 50 years. The italics look great, and it features very crisp and easy-to-read glyphs. Unfortunately, it doesn't include ligatures.
This was one of the first open source fonts made by Adobe. After its release in 2012, the font got extremely popular and was adopted by many developers. It preserves the design features and vertical proportions of Source Sans, but alters the glyph widths so that they are uniform across all weights.
If you're one of those people who hate horizontal scrolling, this is the right font for you. It's optimized for coding with bitmap-like sharpness at 12px/9pt even on low res displays. There's also a Font Awesome integration called Monoisome.
This is one of the most customizable fonts of all. It has 1,573 glyphs, and you can change the details of each one yourself. Powerline glyphs are also included in the regular set.
This font provides a slender outfit by default: glyphs are exactly 1/2em wide. Compared to the competitors, you could fit more columns within the same screen width. It also has two widths, Normal and Extended, so if you prefer more breeze between the character, go with the Extended version.
JetBrains, the company behind IntelliJ, WebStorm, and so many other IDEs, surprised us all in 2020 when it came with its own font. Their approach is to keep code lines to the length that developers expect, making each letter occupy more pixels. They do that by having characters remain standard in width, but the height of the lowercase is maximized.
Designed with functionality in mind, this is the kind of font that adds an extra touch to your code. Its handwriting-like fuzziness makes it a really cool option.
Especifically created to complement the Ubuntu tone of voice. It has a contemporary style and contains characteristics unique to the Ubuntu brand that convey a precise, reliable, and free attitude. If you enjoy Linux but have to work in Windows or MacOS, this font gives you a little happiness.
The cool thing about this font is that characters that could be mistaken for each other like 0 (zero) vs O (capital O) are intentionally differentiated. It's a family of four fixed-width fonts designed especially with coding in mind.
An open source alternative to the proprietary Consolas font from Microsoft. It's a monospace font designed for printed code listings, terminal emulators, and similar uses. Comes with ligatures for a great coding experience.
This typeface is clean, crisp and narrow, with a large x-height and clear punctuation, making it legible and ideal for code. It comes in seven weights and Roman, Italic and Oblique styles. It also has optional semi-connected cursive italics and programming symbol ligatures.
Developed explicitly for use in headline and display typography, the letterforms infuse a geometric slab core with novel over-rationalized forms. It supports a Latin Extended glyph set, enabling typesetting for English and other Western European languages.
Based on Source Code Pro, this font solves the problem the way typographers have always solved ill-fitting characters, which co-occur often: ligatures. The underlying code stays the same — only the representation changes.
Fonts, just like themes, are a very personal subject. Different developers like different fonts. Some love ligatures, others hate. Some love italics, others hate.
Hopefully, this compilation was useful to identify what works best for you. Give it a shot, try them for a couple of days, and you'll notice the difference.
I'd love to hear which one you like the most. Hit me up on Twitter!