Live preview: JetBrains Mono
Live preview of JetBrains Mono, a free font under the SIL Open Font License.
JetBrains Mono: The quick brown fox jumps over the lazy dog
ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789
const hello = () => 'Namaste'; // 0O 1lI
The best coding fonts make code easy to scan for hours: every character is clear, zero never looks like O, and lines stay neat. The preview above shows JetBrains Mono, one of the most popular free picks.
Below you will learn what a monospace font is, what to look for in a programming font, our top free choices, the fonts already built into Windows and Mac, and how to change the font in VS Code and your terminal.
Quick List: Free Coding Fonts
All of these are free to download. Try a few with your own code before you settle on one.
- JetBrains Mono๐๐ฎ๐ฝ๐๐ป๐ช๐ฒ๐ท๐ผ ๐๐ธ๐ท๐ธ
- Fira Code๐ฝ๐๐ฃ๐ โ๐ ๐๐
- Cascadia Code๐ฒ๐๐๐๐๐๐๐ ๐ฒ๐๐๐
- Source Code Proหขแตแตสณแถแต แถแตแตแต แดพสณแต
- IBM Plex Mono๐๐๐ ๐๐ฅ๐๐ฑ ๐๐จ๐ง๐จ
- Ubuntu Mono๐ด๐ป๐๐๐๐ ๐ฌ๐๐๐
- Hack๐ ท๐ ฐ๐ ฒ๐ บ
- Roboto Monoโโด๐ทโด๐โด โณโด๐โด
- Inconsolata๐ผ๐๐๐๐๐ ๐๐๐๐ก๐
- Victor Monoโโโโฃโโก โโโโ
- Space MonoouoW วษษdS
- Courier Prime๐๐ผ๐๐ฟ๐ถ๐ฒ๐ฟ ๐ฃ๐ฟ๐ถ๐บ๐ฒ
What Is a Monospace Font?
A monospace font (also called a monospaced font) gives every character the same width. A thin i takes as much space as a wide m. That keeps code columns lined up, makes indentation easy to see and helps you spot a missing bracket.
Monospace fonts started on typewriters (see our typewriter font page). Modern coding fonts keep the fixed width but are drawn for screens, with clearer shapes and better spacing.
What Makes a Good Coding Font
- Clear look-alike characters: 0 vs O, 1 vs l vs I, and quotes vs backticks must be easy to tell apart. Many coding fonts use a slashed or dotted zero.
- Readable at small sizes: a tall x-height and open shapes help at 12 to 14 px.
- Good punctuation: brackets, semicolons and commas should be large enough to see.
- Ligatures (optional): some fonts join symbols like
=>,!=or>=into one neat glyph. Some coders love this, others find it confusing. You can switch it off. - Bold and italic styles: useful for syntax highlighting themes.
Best Coding Fonts (Free)
| Font | Made by | Highlights |
|---|---|---|
| JetBrains Mono | JetBrains | Tall letters, ligatures, free (OFL) |
| Fira Code | Open source, based on Fira Mono | Famous for ligatures, free (OFL) |
| Cascadia Code | Microsoft | Default in Windows Terminal, ligatures, free (OFL) |
| Source Code Pro | Adobe | Clean and calm, free (OFL) |
| IBM Plex Mono | IBM | Friendly corporate look, free (OFL) |
| Ubuntu Mono | Ubuntu project | Rounded, compact |
| Hack | Open source | Built for source code, very clear |
The JetBrains Mono font (many people just call it the JetBrains font) is a top pick for most people. It comes with JetBrains IDEs, and you can download it free from its official page or Google Fonts. The Fira Code font is the classic choice if you want ligatures. The Cascadia Code font (Cascadia Mono is the version without ligatures) is a great default on Windows.
Every font in this table is a code font free download from its official page, GitHub or Google Fonts, and each one is a solid developer font for daily work.
Built-In Fonts: Consolas, Menlo and SF Mono
You may already have a good coding font installed:
- Consolas font: comes with Windows and Microsoft Office. Clear and compact, a long-time favourite in Visual Studio.
- Menlo font: comes with macOS. It was the default in Xcode and Terminal for years.
- SF Mono: Apple's monospaced font, used in Terminal and Xcode on newer Macs. See our SF Pro font page for Apple's system fonts.
These are licensed system fonts, so use them on your own machine but do not redistribute the files.
Terminal Font and JetBrains Mono Nerd Font
For a terminal font, readability at small sizes matters most. JetBrains Mono, Cascadia Code, Hack and Menlo all work well.
If you use a fancy shell prompt (like Starship or Oh My Posh), you may need a Nerd Font. Nerd Fonts are patched versions of coding fonts that add hundreds of icons for git branches, folders and languages. The JetBrains Mono Nerd Font and Fira Code Nerd Font are popular choices. Download them from the official Nerd Fonts project on GitHub (never from a random free font mirror), then select the Nerd Font name in your terminal settings.
How to Change the Font in VS Code
- Install the font on your computer (Windows: right-click the .ttf and choose Install; Mac: open in Font Book).
- In VS Code, open Settings and go to Text Editor > Font, then edit Font Family.
- Put your font first, for example
'JetBrains Mono', Consolas, monospace. - To turn on ligatures, open settings.json and add
"editor.fontLigatures": true. - Set the terminal font with
terminal.integrated.fontFamilyif you want it different.
More detail is in the official VS Code settings docs.
How to Design a Monospace Font
Wondering how to make a monospace font of your own? Start in a font editor like the free, open-source FontForge. Pick one fixed width for every glyph first. Then draw narrow letters (i, l, j) with longer serifs or tails so they fill the space, and squeeze wide ones (m, w) so they fit. Test the font in real code early, and check the look-alike pairs again and again. It is a big project, so most coders simply pick an existing font. If you only want monospace-looking text for a social bio, our font generator has a copy-paste monospace style, and you can learn about font types in our popular fonts guide.
Not Coding Fonts: VCR OSD Mono, Morse Code and Code 39 Fonts
Some searches with "code" or "mono" in them are about something else:
- VCR OSD Mono font: a retro display font that copies the on-screen text of old video players. It suits gaming thumbnails and retro edits, not real coding. It is shared on free font sites, so check its licence before commercial use. See our retro fonts page for more.
- Morse code font: a fun symbol font that turns letters into dots and dashes. Good for puzzles and posters, not for programming.
- Code 39 font (39 code font): a barcode font that turns text into Code 39 barcode stripes for labels and stock lists. Read our barcode font guide before using it.
Common questions
What is the best font for coding?
There is no single winner, but JetBrains Mono, Fira Code and Cascadia Code are the most popular free picks. Consolas on Windows and Menlo or SF Mono on Mac are good built-in options. Try two or three and keep the one that feels easiest on your eyes.
Is JetBrains Mono free?
Yes. JetBrains Mono is free and open source under the SIL Open Font License. You can use it in any editor, not just JetBrains IDEs.
What are font ligatures in coding?
Ligatures join symbol pairs like => or != into one combined shape. They change only how code looks, not the actual characters in your file. In VS Code you turn them on with editor.fontLigatures.
Is Consolas free?
Consolas comes with Windows and Microsoft Office, so you can use it on those systems. It is a licensed font, not open source, so do not share the file. Cascadia Code is a free alternative from Microsoft.
What is a Nerd Font?
A Nerd Font is a coding font patched with extra icons for terminals and editors. Versions exist for JetBrains Mono, Fira Code, Hack and many others.
Is Audiowide a coding font?
No. The Audiowide font is a wide, techy display font on Google Fonts, good for gaming logos and posters. It is not monospaced, so use a real coding font for code.