A year ago, we set a very ambitious goal – create a font to make working with code more comfortable for everyone. And we did it!
What’s the problem with other monospaced fonts, you might ask?
For the most part of our day we, as developers, look at the code. And it is no wonder that we are always on the lookout for the best font to make looking at the text on the screen easier on our eyes. However, the logic in many popular fonts does not always take into account the difference between reading through code and reading a book. Our eyes move along code in a very different way, often having to move vertically as often as they do horizontally, which is opposed to reading a book where they slide along the text always in the same direction.
Therefore, while working on JetBrains Mono we focused, among other things, on the issues that can cause eye fatigue during long sessions of working with code. We have considered things like the size and shape of letters; the amount of space between them, a balance naturally engineered in monospace fonts; unnecessary details and unclear distinctions between symbols, such as I’s and l’s for example; and programming ligatures when developing our font.
Today, we proudly present JetBrains Mono – a new open-source typeface specifically made for developers. Check out what makes JetBrains Mono unique in the big family of monospaced fonts and try it in your favorite code editor. Have a look at JetBrains Mono, your eyes will thank you for it.
Happy coding!

It’s indeed an excellent font, using it now. Congratulations on a job well done!
Thank you Roger!
Some of these claims could use some evidence.
Regarding crispness, viewing the font in Chrome, it’s just a bunch of blurry lines; way less crisp than courier new in IDEA (running on mac, native resolution no scaling).
The ligatures seem like a huge reduction in readability and edibility, ESPECIALLY for a developer. I’d love to see some evidence to the contrary.
Claims surrounding font weight, shape, and italic angles could use substantiation too.
There’s a comparison with consolas that claims consolas has wider glypths, then provides a preview. The preview demonstrates JB Mono has wider glyphs. What’s going on there?
I definitely appreciate the 1, l, I differentiation along with O and 0.
Actually, ligatures increase readability, that is why they exist in first place. There is a full episode on font design on Netflix Abstract documentary series and some part is devoted to ligatures and how they improve font perception.
I’m a veteran developer with 20+ years of experience, and I find the ligatures hard to read. May be a “getting used to” thing, but I don’t see the benefit. Otherwise, the Jetbrains Mono font is good, and I’m using it now, mostly out of curiosity. But I turned off the ligatures, which is something you can do in IntelliJ, fortunately.
Could you please point to the segments (minutes) in that documentary that is “devoted” to ligatures?… As i recall it’s like mentioned briefly, twice… and that’s about it…
Besides, I think your putting way to much weight into that documentary as begin any sort of proff, it really is just a share of experience from a single typeface designer. (granted, one with a interesting experience in his backpack)…
At the end of the day though, it doesn’t touch the programmers use case at all (Well why should it), yes we read allot of code, but we also create or change allot of code… Where ligatures could potentially be a really big annoyance, so I am with Charlie here…
Also, remember that what we are extremely good at as humans is to read patterns, that is why you often don’t read entire words but just the start and end. These ligatures will disrupt patterns we are already extremely familiar with.
Changing two characters with their own glyph (each with their own meaning) into a third glyph (while hiding the fact that there are multiple charaters there) is very disorienting. Is that a less than followed by equal or the actual unicode character for less-than-or-equal-to? Where do I put my cursor to change it to a greater than?
The documentary you refer to was certainly not referring to the use case of programming a computer.
When I’m reading content on my phone, which uses ligatures, the f+i ligature drives me nuts every time I see it. I don’t think sucking me out of why I am reading and enraging me is ‘improving my perception’ or ‘increasing the readability”. In nearly all cases, it’s a gimmick, now with more trendiness.
On Ubuntu, fc-cache detect JetBrains Mono as a dual-width font, not monospace font.
RStudio, an IDE based on Qt, does not allow choosing non-monospaced fonts, and as such I cannot set JetBrains Mono to be my font in RStudio.
What is not clear to me is who would be able to fix it? I am not a font expert. There are four parties here that could all fix this issue:
– JetBrains makes sure the font is detected as monospaced font by fontconfig (fc-cache)
– RStudio allows people to choose non-monospaced fonts for their IDE
– Qt fixes a bug https://bugreports.qt.io/browse/QTBUG-67612
– fontconfig fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/176
Would it be possible for JetBrains to “fix” the font to be detected as true monospaced font on Ubuntu?
The same thing happens in the Delphi IDE on Windows
Yes, on my Delphi IDE not work too
Yeah, same here. I heard of this font and looked pretty nice, but I can’t use it :'(
To fix the detection put this in the following file:
~/.config/fontconfig/conf.d/00-jetbrains-mono.confand run
fc-cache -r(-fcould be enough, just starting to understand fontconfig)Make JetBrains Mono detect as mono instead of dual
JetBrains Mono
dual
mono
Don’t know if this will actually fix the problem.
To fix the detection put this in the following file:
~/.config/fontconfig/conf.d/00-jetbrains-mono.confand run
fc-cache -r(-fcould be enough, just starting to understand fontconfig)xmlMake JetBrains Mono detect as mono instead of dual
JetBrains Mono
dual
mono
Don’t know if this will actually fix the problem.
First time around forgot to fence the xml ^^
To fix the detection put this in the following file:
~/.config/fontconfig/conf.d/00-jetbrains-mono.confand run
fc-cache -r(-fcould be enough, just starting to understand fontconfig)Make JetBrains Mono detect as mono instead of dual
JetBrains Mono
dual
mono
Don’t know if this will actually fix the problem.
Argh. It’s not trivial to add xml into these comments:
To fix the detection put this in the following file:
~/.config/fontconfig/conf.d/00-jetbrains-mono.confand run
fc-cache -r(-fcould be enough, just starting to understand fontconfig)Make JetBrains Mono detect as mono instead of dualJetBrains MonodualmonoDon’t know if this will actually fix the problem.
Entering
xmlhere is horribleOk. I don’t mind anymore. If you are interested just answer to this thread whatever and I will create a gist or so.
Yes, please make a gist, the XML is stripped off
I like it. The thicker lines means it’s less “pixely” on my low DPI monitor.
Thanks JetBrains!
It’s rare that I ever change my coding font, but I have to admit, this got me to do it. Congrulations; this one checks all the boxes for me, and looks great!
My favorite font since its release. Well done!
Definitely not sold on the crazy ligature behavior, I don’t want to re-learn how i intuit normal operators in programming.
Just want to share if it would be helpful for someone:
– If you don’t see a new font in Settings → Editor → Font neither after manual install (old IDEA, but available e.g. in MS Word), nor after updating to IDEA 2019.3, this could be solved by:
– download fonts https://www.jetbrains.com/lp/mono/#how-to-install
– right-click any of them, then pick “Install for all users” (not just ‘Install’!) from the menu.
It would be amazing if you provided links to studies to (dis)prove any of the statements regarding reading speed, legibility and whatever other claims you make — that would help not only look at this font in a positive way, but potentially help any further font designs.
FWIW, I’ve also looked at the Cyrillic glyphs, and the Serbian-specific glyphs (like ћ, ђ) are bad — even though the Serbian population is by now used to such appearance (a cross-bar on a Latin lowercase “h”), the original comes from a sound matching “тј”, so the cross bar should be at the character height in the lowercase letter. Any older Serbian books use such a form, whereas newer books utilising Western-designed typefaces, and especially most computer fonts, use the ill-advised h-based design. Again, it will be perfectly legible to all the Serbian people, but if one can do better, why not? 😉
FWIW, I’ve did the complete Cyrillic range originally in DejaVu Sans, so there’s an example of ђ and ћ done “well”.
Btw, where’s the source code for these fonts since they are “open source”? I see that they are released under a permissive license, but there are only TTF files in there, and I am pretty sure those are not the sources. I can easily import them into FontForge to make my changes though, but it’d be good if we can contribute fixes “upstream” as well.
Try the source folder in https://github.com/JetBrains/JetBrainsMono
Hi, Danilo. Thanks for the feedback. We corrected the ћ, ђ. They are included in v 1.0.2. It will be nice if you can review them when it is out.
On the subject of research. We studied the legacy of Verdana, Menlo & other monospaced & screen adapted fonts. So all the conclusions we came up with were tested on ourselves, rejected & then tested again until it became the JetBrains Mono. Yes, dogfooding is not a very scientific approach but we found it more practical.
Guys, you need to have another look at your letter O (Oh). It looks exactly how a number zero is supposed to look. I know you have a dot in the actual zero, but the O, without further context or immediate comparison, will inevitably be read as zero. Precisely what you don’t want for a programmers’ font.
Congratulation on a new font – I personally like it.
It’s very similar to Fira Code font I use in all editors for quite some time.
So far I don’t have any issues on Windows or Linux (Mint).
The recommended size (13) is not suitable in all editors – can be to small (VS code, DataGrip, GoLand) or to big (Visual Studio).
Thanks JetBrains!
On windows this “Mono” font is not detected as Mono-Space. Therefore IDEs limiting to MonoSPace-Fonts do not pick it up.
Thanks. Already fixed in version 1.0.1
https://github.com/JetBrains/JetBrainsMono/releases/tag/1.0.1
I’ve tried it, but for one or another reason, the “Consolas” font of VS seems more readable …
Nice thing though when installed into VS it looks much thinner than Consolas. Checking “Bold”, using Medium and ExtraBold variants doesn’t change anything. I like everything about your font except it’s harder to read just because it’s too thin.
I’m experiencing the exact same thing within VS.
@Vlad, @TJ: after changing the font in Visual Studio restart the IDE.
The font will look the way it should – at least this is what I observed. Not only with JetBrains Mono font but also with Fira Code, Iosevka, Pragmata Pro.
Maybe for young people, it’s good. But for 56 years old it’s terrible, the spacing between letters is too big and makes everything really busy and hard to find anything in the text.
Back to Consolas, I go.
After trying it out, I still prefer Consolas for better readability.
Good Job!
Very weird. Just updated to 2019.3.1 from 2019.2.4. On the first start it showed JetBrains Mono and I could enable it. It also didn’t show a real window title bar, instead the title was integrated into the top tool bar. After restarting both of those weren’t true anymore. I now have a title bar and am stuck with consolas
Gotta put some more input on this. Only occurs in IntelliJ PyCharm is fine. Also is reproducable already deleted the config and tried importing again. Works on first start, fails after that.
It might be a problem with PyCharm runtime. We did some fixes for better rendering in the product. Could you please ask PyCharm or IntelliJ support team about it? Also, check that you didn’t change JDK to execute PyCharm. It should be bundled JetBrains Runtime 11.
I was using Fira Code for years and I like it, but I think this one is even better. Good job. Thank you!
Excellent font – good job
Sadly it doesn’t seem to render properly on my Manjaro Gnome setup, for example at size 13 in DataGrip the “+” symbol is compacted and the top line is much shorter than the other 3 directions.
Hey!
Outstanding. Code is much more readable. By adjusting the line spacing I made it perfect for me.
Thanks for the good work.
I’m enjoying JetBrains Mono. I have terrible vision, and I find I prefer this a bit over Fira in IntelliJ.
For my command-line console, I prefer Fira for the greater spacing between lines. I found Mono more crowded. But for editing code, the tighter spacing works and definitely the better readability of the characters work really well for me.
Tried on Visual Studio. Back to Hasklig font
Nice font. I like it. Can you add Powerline Glyphs to it ?
Somebody already patched it
https://github.com/seanghay/JetBrainsMono-Powerline
you may also want to watch this issuse of the powerline fonts repo:
https://github.com/powerline/fonts/issues/336
You can also always patch the font yourself:
https://apw-bash-settings.readthedocs.io/en/latest/fontpatching.html
This is not bad. Good job! I will try it for a while to see if it can replace my current DejaVu Sans Mono standard font for IDEs and CLI.
There is a problem with this font tho, and that is that it does not register as a monospace font, so the regular cmd.exe or apps like SecureCRT and maybe PuTTY will be be able to use this font.
Right, Morten,
I just tried to use this font in PuTTY because I was annoyed mixing up the letter l (L) with capital letter I (i). However, PuTTY didn’t offer the font.
Death to all ligatures!
Visual Studio has no option to disable them
At least let me choose D:
Please make a version without the ligatures.
100% agree on this!
Do you mean Visual Studio Code or the normal one?
For Visual Studio Code you can use:
editor.fontLigatures”: false
In your settings.json to disable ligatures.
Looks nice, especially on Retina displays. For regular displays – its size need to be adjusted in a way, to reduce blurred vertical elements (e.g. on Visual Studio I selected 112% scale for the font size 10, in the text editor, for the display 1920×1080).
Could you tell – un-even vertical position for open/closed curled brackets done with a reason? Different font size shifts brackets different (12,13,14..), but 17 is even (it’s seen also in settings font preview also). Windows 10, IDEA 2019.3.1
This is a hinting bug, they are specific for loDpi Win & LInux OS. We are working on it.
I love it! Is there a way to disable italics?
It’s more of a Color Theme feature. You can find different Themes here → https://plugins.jetbrains.com/search?headline=164-theme&tags=
JetBrains Mono is the best fonts for the dev editors, i share it with my colleagues at work.
I really like the font, but I found it too bold. I went to Appearance and changed Antialiasing to Greyscale, that made the font more readable to me.
I’ve been using it for several days now. Love it! Thank you for your work
I like it! Any plans to add more symbols? I tried setting MacOS terminal to this font
My prompt used to look like this
https://i.imgur.com/AnAGbJG.png
But now with all the symbols missing it looks like this
https://i.imgur.com/noUtzKc.png
Yes, we are planning to expand the character map. For example In 1.0.2 will be added 24 new symbols. Sorry, the attached images are not opening.
I just tried this font on Debian, it looks quite nice but when I try to type the “pipe” symbol (Alt Gr – key combo on a German keyboard), the symbol blank or won’t show up. Any idea what could be causing this?
Thanks!
Uwe
JetBrains Mono currently not supporting the Box-drawing symbols. Seems like that the core of your problem. But we will add it in future updates. https://en.wikipedia.org/wiki/Box-drawing_character We will add it in future updates.
Ligatures are confusing, the small letters are too big.
I haven’t found a better programming font than Ubuntu Mono.
It is a beautiful font, thank you for making it!
At the risk of sounding ungrateful, I too would really appreciate a separate download with no, or only partial ligatures. The whitespace balancing ones are nice, but some of the longer ones are a little much for me.
Thanks again, it really is quite lovely. Warm greetings from New Zealand!
Nice font, I really like it!
I use various JetBrains IDEs on Windows Server but unfortunately I can’t install the font system-wide. Is there any way to have IntelliJ or Rider access the new font from a local user directory?
I have problems with number six: https://imgur.com/a/twI6yWK, it is rendered too low.
The font size is set to 15. If I set it to 14 or 13, the problem disappears. Notice also that only the “JetBrains Mono” font has this problem, Medium and ExtraBold variants are rendered ok.
I use:
IntelliJ IDEA 2019.3.2 (Ultimate Edition)
Build #IU-193.6015.39, built on January 21, 2020
I love the font, but quickly I noticed that 6 is out of line. Also using size 15, as 14 is too small on my monitor for me. Not sure what the problem is, as it looks good again on bigger sizes… it jumps down and back as I go through various sizes. Is it the font? Is it Windows renderer? I have no idea… I switched to Medium, it really is OK there, but the font is a bit heavy for my taste. I’ll try it for a while but I’d welcome the “fix for six”.
Excellent font. Appreciate your work Jetbrains team!
I’d like to also see a comparison to the new Windows Terminal font too: https://github.com/microsoft/cascadia-code
That went in a very different direction with many horizontal cuts, low x-height and being very curvy. I’d have to spend some time with both to pick, but I do think Cascadia is at least *prettier*
The taller characters help me a *lot*. I am pretty impaired visually, but I don’t have the funds to justify getting newer glasses. I’ve found that relative to my previous fonts of choice, that Jetbrains Mono is a lot easier to read at the same font size. I think it’s because of the letter heights. It makes such a big difference for me that I’m frankly astonished (but very thankful!) that it took Jetbrains getting involved for programming fonts to discover this technique.
I really appreciate it being an open font. I look forward to using it everywhere!
Font looks great!
Would a partial ligatures one that only keeps ligatures with char spaces,
So I could easily see the amount of characters making a ligature.
eg: || becomes || yes, => becomes ⇒ no
Anyway great job thank you!