Fira Code

The Mozilla Foundation, Telefonica S.A., Nikita Prokopov · 2014 · OFL-1.1 · Variable

Fira Code is Nikita Prokopov's extension of Mozilla's Fira Mono, and the addition is a set of programming ligatures: character pairs a compiler reads separately but the font draws as one shape, so an arrow typed as two keystrokes looks like an arrow. Nothing about the file you save changes — the code stays plain ASCII and the joined shape is only what you see. It inherits Fira Mono's humanist proportions, which is why it stays readable in a dense editor at 13px where a stricter geometric mono would not.

Fira Code at a glance

Commercial use
Yes · OFL 1.1
On a website
Yes · WOFF2 here
Variable
Yes · 5 weights
In a logo
Yes
Türkçe (ı İ ğ ş)
Yes
Italic
No

Click the text above to set it in your own words.

Size ladder

96

Sphinx of black quartz, judge my vow

64

Sphinx of black quartz, judge my vow

40

Sphinx of black quartz, judge my vow

24

Sphinx of black quartz, judge my vow

16

Sphinx of black quartz, judge my vow

12

Sphinx of black quartz, judge my vow

Specification

Designer
The Mozilla Foundation, Telefonica S.A., Nikita Prokopov
Released
2014
Category
Monospace
License
OFL-1.1
Commercial use
Allowed
Good for
Code editors, Terminals, Technical documentation, Code snippets
Weights
300, 400, 500, 600, 700
Styles
Normal
Variable
Yes
Glyphs
1,857
Languages
Latin, Latin Extended, Türkçe, Cyrillic, Cyrillic Extended, Greek, Greek Extended
Download size
138 KB

Fira Code character map

1,551 characters in the complete font. Grouped by the alphabets it covers — every cell is a character the file really contains.

Latin110

Uppercase

  • A
  • B
  • C
  • D
  • E
  • F
  • G
  • H
  • I
  • J
  • K
  • L
  • M
  • N
  • O
  • P
  • Q
  • R
  • S
  • T
  • U
  • V
  • W
  • X
  • Y
  • Z

Lowercase

  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • j
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
  • z

Numerals

  • 0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

Punctuation & symbols

  • .
  • ,
  • :
  • ;
  • !
  • ?
  • '
  • "
  • ‘
  • ’
  • “
  • ”
  • (
  • )
  • [
  • ]
  • {
  • }
  • /
  • \
  • |
  • -
  • –
  • —
  • _
  • @
  • #
  • $
  • %
  • &
  • *
  • +
  • =
  • <
  • >
  • ~
  • ^
  • `
  • €
  • £
  • ¥
  • ©
  • ®
  • °
  • §
  • †
  • •
  • …

Latin Extended194

Western European

  • À
  • Á
  • Â
  • Ã
  • Ä
  • Å
  • Æ
  • Ç
  • È
  • É
  • Ê
  • Ë
  • Ì
  • Í
  • Î
  • Ï
  • Ð
  • Ñ
  • Ò
  • Ó
  • Ô
  • Õ
  • Ö
  • Ø
  • Ù
  • Ú
  • Û
  • Ü
  • Ý
  • Þ
  • ß
  • à
  • á
  • â
  • ã
  • ä
  • å
  • æ
  • ç
  • è
  • é
  • ê
  • ë
  • ì
  • í
  • î
  • ï
  • ð
  • ñ
  • ò
  • ó
  • ô
  • õ
  • ö
  • ø
  • ù
  • ú
  • û
  • ü
  • ý
  • þ
  • ÿ

Central and Eastern European

  • Ā
  • ā
  • Ă
  • ă
  • Ą
  • ą
  • Ć
  • ć
  • Ĉ
  • ĉ
  • Ċ
  • ċ
  • Č
  • č
  • Ď
  • ď
  • Đ
  • đ
  • Ē
  • ē
  • Ĕ
  • ĕ
  • Ė
  • ė
  • Ę
  • ę
  • Ě
  • ě
  • Ĝ
  • ĝ
  • Ğ
  • ğ
  • Ġ
  • ġ
  • Ģ
  • ģ
  • Ĥ
  • ĥ
  • Ħ
  • ħ
  • Ĩ
  • ĩ
  • Ī
  • ī
  • Ĭ
  • ĭ
  • Į
  • į
  • İ
  • ı
  • IJ
  • ij
  • Ĵ
  • ĵ
  • Ķ
  • ķ
  • ĸ
  • Ĺ
  • ĺ
  • Ļ
  • ļ
  • Ľ
  • ľ
  • Ŀ
  • ŀ
  • Ł
  • ł
  • Ń
  • ń
  • Ņ
  • ņ
  • Ň
  • ň
  • ʼn
  • Ŋ
  • ŋ
  • Ō
  • ō
  • Ŏ
  • ŏ
  • Ő
  • ő
  • Œ
  • œ
  • Ŕ
  • ŕ
  • Ŗ
  • ŗ
  • Ř
  • ř
  • Ś
  • ś
  • Ŝ
  • ŝ
  • Ş
  • ş
  • Š
  • š
  • Ţ
  • ţ
  • Ť
  • ť
  • Ŧ
  • ŧ
  • Ũ
  • ũ
  • Ū
  • ū
  • Ŭ
  • ŭ
  • Ů
  • ů
  • Ű
  • ű
  • Ų
  • ų
  • Ŵ
  • ŵ
  • Ŷ
  • ŷ
  • Ÿ
  • Ź
  • ź
  • Ż
  • ż
  • Ž
  • ž

Romanian and other

  • Ș
  • ș
  • Ț
  • ț
  • ƒ

Türkçe15

Türkçe letters

  • Ç
  • ç
  • Ğ
  • ğ
  • I
  • ı
  • İ
  • i
  • Ö
  • ö
  • Ş
  • ş
  • Ü
  • ü

Currency

  • ₺

Cyrillic66

Uppercase

  • А
  • Б
  • В
  • Г
  • Д
  • Е
  • Ё
  • Ж
  • З
  • И
  • Й
  • К
  • Л
  • М
  • Н
  • О
  • П
  • Р
  • С
  • Т
  • У
  • Ф
  • Х
  • Ц
  • Ч
  • Ш
  • Щ
  • Ъ
  • Ы
  • Ь
  • Э
  • Ю
  • Я

Lowercase

  • а
  • б
  • в
  • г
  • д
  • е
  • ё
  • ж
  • з
  • и
  • й
  • к
  • л
  • м
  • н
  • о
  • п
  • р
  • с
  • т
  • у
  • ф
  • х
  • ц
  • ч
  • ш
  • щ
  • ъ
  • ы
  • ь
  • э
  • ю
  • я

Cyrillic Extended222

Ukrainian, Belarusian, Serbian, Macedonian

  • Ѐ
  • Ђ
  • Ѓ
  • Є
  • Ѕ
  • І
  • Ї
  • Ј
  • Љ
  • Њ
  • Ћ
  • Ќ
  • Ѝ
  • Ў
  • Џ
  • ѐ
  • ђ
  • ѓ
  • є
  • ѕ
  • і
  • ї
  • ј
  • љ
  • њ
  • ћ
  • ќ
  • ѝ
  • ў
  • џ
  • Ґ
  • ґ

Other languages written in Cyrillic

  • Ѡ
  • ѡ
  • Ѣ
  • ѣ
  • Ѥ
  • ѥ
  • Ѧ
  • ѧ
  • Ѩ
  • ѩ
  • Ѫ
  • ѫ
  • Ѭ
  • ѭ
  • Ѯ
  • ѯ
  • Ѱ
  • ѱ
  • Ѳ
  • ѳ
  • Ѵ
  • ѵ
  • Ѷ
  • ѷ
  • Ѹ
  • ѹ
  • Ҋ
  • ҋ
  • Ҍ
  • ҍ
  • Ҏ
  • ҏ
  • Ғ
  • ғ
  • Ҕ
  • ҕ
  • Җ
  • җ
  • Ҙ
  • ҙ
  • Қ
  • қ
  • Ҝ
  • ҝ
  • Ҟ
  • ҟ
  • Ҡ
  • ҡ
  • Ң
  • ң
  • Ҥ
  • ҥ
  • Ҧ
  • ҧ
  • Ҩ
  • ҩ
  • Ҫ
  • ҫ
  • Ҭ
  • ҭ
  • Ү
  • ү
  • Ұ
  • ұ
  • Ҳ
  • ҳ
  • Ҵ
  • ҵ
  • Ҷ
  • ҷ
  • Ҹ
  • ҹ
  • Һ
  • һ
  • Ҽ
  • ҽ
  • Ҿ
  • ҿ
  • Ӏ
  • Ӂ
  • ӂ
  • Ӄ
  • ӄ
  • Ӆ
  • ӆ
  • Ӈ
  • ӈ
  • Ӊ
  • ӊ
  • Ӌ
  • ӌ
  • Ӎ
  • ӎ
  • ӏ
  • Ӑ
  • ӑ
  • Ӓ
  • ӓ
  • Ӕ
  • ӕ
  • Ӗ
  • ӗ
  • Ә
  • ә
  • Ӛ
  • ӛ
  • Ӝ
  • ӝ
  • Ӟ
  • ӟ
  • Ӡ
  • ӡ
  • Ӣ
  • ӣ
  • Ӥ
  • ӥ
  • Ӧ
  • ӧ
  • Ө
  • ө
  • Ӫ
  • ӫ
  • Ӭ
  • ӭ
  • Ӯ
  • ӯ
  • Ӱ
  • ӱ
  • Ӳ
  • ӳ
  • Ӵ
  • ӵ
  • Ӷ
  • ӷ
  • Ӹ
  • ӹ
  • Ӻ
  • ӻ
  • Ӽ
  • ӽ
  • Ӿ
  • ӿ
  • Ԁ
  • ԁ
  • Ԃ
  • ԃ
  • Ԅ
  • ԅ
  • Ԇ
  • ԇ
  • Ԉ
  • ԉ
  • Ԋ
  • ԋ
  • Ԍ
  • ԍ
  • Ԏ
  • ԏ
  • Ԑ
  • ԑ
  • Ԓ
  • ԓ
  • Ԕ
  • ԕ
  • Ԗ
  • ԗ
  • Ԙ
  • ԙ
  • Ԛ
  • ԛ
  • Ԝ
  • ԝ
  • Ԟ
  • ԟ
  • Ԡ
  • ԡ
  • Ԣ
  • ԣ
  • Ԥ
  • ԥ
  • Ԧ
  • ԧ
  • Ԩ
  • ԩ
  • Ԫ
  • ԫ
  • Ԭ
  • ԭ
  • Ԯ
  • ԯ

Greek69

Uppercase

  • Α
  • Β
  • Γ
  • Δ
  • Ε
  • Ζ
  • Η
  • Θ
  • Ι
  • Κ
  • Λ
  • Μ
  • Ν
  • Ξ
  • Ο
  • Π
  • Ρ
  • Σ
  • Τ
  • Υ
  • Φ
  • Χ
  • Ψ
  • Ω

Lowercase

  • α
  • β
  • γ
  • δ
  • ε
  • ζ
  • η
  • θ
  • ι
  • κ
  • λ
  • μ
  • ν
  • ξ
  • ο
  • π
  • ρ
  • ς
  • σ
  • τ
  • υ
  • φ
  • χ
  • ψ
  • ω

Accented

  • Ά
  • Έ
  • Ή
  • Ί
  • Ό
  • Ύ
  • Ώ
  • ΐ
  • Ϊ
  • Ϋ
  • ά
  • έ
  • ή
  • ί
  • ΰ
  • ϊ
  • ϋ
  • ό
  • ύ
  • ώ

Greek Extended233

  • ἀ
  • ἁ
  • ἂ
  • ἃ
  • ἄ
  • ἅ
  • ἆ
  • ἇ
  • Ἀ
  • Ἁ
  • Ἂ
  • Ἃ
  • Ἄ
  • Ἅ
  • Ἆ
  • Ἇ
  • ἐ
  • ἑ
  • ἒ
  • ἓ
  • ἔ
  • ἕ
  • Ἐ
  • Ἑ
  • Ἒ
  • Ἓ
  • Ἔ
  • Ἕ
  • ἠ
  • ἡ
  • ἢ
  • ἣ
  • ἤ
  • ἥ
  • ἦ
  • ἧ
  • Ἠ
  • Ἡ
  • Ἢ
  • Ἣ
  • Ἤ
  • Ἥ
  • Ἦ
  • Ἧ
  • ἰ
  • ἱ
  • ἲ
  • ἳ
  • ἴ
  • ἵ
  • ἶ
  • ἷ
  • Ἰ
  • Ἱ
  • Ἲ
  • Ἳ
  • Ἴ
  • Ἵ
  • Ἶ
  • Ἷ
  • ὀ
  • ὁ
  • ὂ
  • ὃ
  • ὄ
  • ὅ
  • Ὀ
  • Ὁ
  • Ὂ
  • Ὃ
  • Ὄ
  • Ὅ
  • ὐ
  • ὑ
  • ὒ
  • ὓ
  • ὔ
  • ὕ
  • ὖ
  • ὗ
  • Ὑ
  • Ὓ
  • Ὕ
  • Ὗ
  • ὠ
  • ὡ
  • ὢ
  • ὣ
  • ὤ
  • ὥ
  • ὦ
  • ὧ
  • Ὠ
  • Ὡ
  • Ὢ
  • Ὣ
  • Ὤ
  • Ὥ
  • Ὦ
  • Ὧ
  • ὰ
  • ά
  • ὲ
  • έ
  • ὴ
  • ή
  • ὶ
  • ί
  • ὸ
  • ό
  • ὺ
  • ύ
  • ὼ
  • ώ
  • ᾀ
  • ᾁ
  • ᾂ
  • ᾃ
  • ᾄ
  • ᾅ
  • ᾆ
  • ᾇ
  • ᾈ
  • ᾉ
  • ᾊ
  • ᾋ
  • ᾌ
  • ᾍ
  • ᾎ
  • ᾏ
  • ᾐ
  • ᾑ
  • ᾒ
  • ᾓ
  • ᾔ
  • ᾕ
  • ᾖ
  • ᾗ
  • ᾘ
  • ᾙ
  • ᾚ
  • ᾛ
  • ᾜ
  • ᾝ
  • ᾞ
  • ᾟ
  • ᾠ
  • ᾡ
  • ᾢ
  • ᾣ
  • ᾤ
  • ᾥ
  • ᾦ
  • ᾧ
  • ᾨ
  • ᾩ
  • ᾪ
  • ᾫ
  • ᾬ
  • ᾭ
  • ᾮ
  • ᾯ
  • ᾰ
  • ᾱ
  • ᾲ
  • ᾳ
  • ᾴ
  • ᾶ
  • ᾷ
  • Ᾰ
  • Ᾱ
  • Ὰ
  • Ά
  • ᾼ
  • ᾽
  • ι
  • ᾿
  • ῀
  • ῁
  • ῂ
  • ῃ
  • ῄ
  • ῆ
  • ῇ
  • Ὲ
  • Έ
  • Ὴ
  • Ή
  • ῌ
  • ῍
  • ῎
  • ῏
  • ῐ
  • ῑ
  • ῒ
  • ΐ
  • ῖ
  • ῗ
  • Ῐ
  • Ῑ
  • Ὶ
  • Ί
  • ῝
  • ῞
  • ῟
  • ῠ
  • ῡ
  • ῢ
  • ΰ
  • ῤ
  • ῥ
  • ῦ
  • ῧ
  • Ῠ
  • Ῡ
  • Ὺ
  • Ύ
  • Ῥ
  • ῭
  • ΅
  • `
  • ῲ
  • ῳ
  • ῴ
  • ῶ
  • ῷ
  • Ὸ
  • Ό
  • Ὼ
  • Ώ
  • ῼ
  • ´
  • ῾

Use Fira Code on the web

Self-hosted

You serve the file yourself. Nothing depends on this site staying up, and you get the whole character set — all Latin, Latin Extended, Türkçe, Cyrillic, Cyrillic Extended, Greek, Greek Extended. The file is fira-code.woff2, the same one the WOFF2 button above gives you.

@font-face {
  font-family: 'Fira Code';
  /* Take the WOFF2 button above, put fira-code.woff2 wherever
     you serve static files from, and point this at it. */
  src: url('/fonts/fira-code.woff2') format('woff2');
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: 'Fira Code', monospace;
}

Hosted by us

One line, nothing to upload. Put this in your <head>:

<link rel="preconnect" href="https://thatsmyfont.com">
<link rel="stylesheet" href="https://thatsmyfont.com/fontfiles/fira-code.css">

Then use it in your CSS:

body {
  font-family: 'Fira Code', monospace;
}

One thing to know: the file we host is cut down to Latin characters so pages load quickly. Fira Code also covers Türkçe, Cyrillic, Cyrillic Extended, Greek, Greek Extended, and for those you need the download and the self-hosted route.

Questions

Is Fira Code free for commercial use?
Yes. Fira Code is released under the SIL Open Font License 1.1, which allows commercial use with no fee and no attribution requirement. You can use it in client work, in products you sell, on the web and in print. The one thing you may not do is sell the font file on its own. The licence is inside the download.
Can I use Fira Code in a logo?
Yes. The licence covers the font software, not the artwork you make with it, so a logo set in Fira Code belongs to you — including if you later register it as a trademark. You do not need permission and you do not owe anything to The Mozilla Foundation, Telefonica S.A., Nikita Prokopov. What the licence stops you doing is redistributing the font file itself as a product.
How do I install Fira Code?
Download the zip and unzip it. On a Mac, select the 1 font file inside and open them, then press Install Font. On Windows, select them, right-click and choose Install. Restart any application that was already open before it will show up. Fira Code is a variable font: the single file carries all 5 weights at once. Some older software — Word, Canva, and Photoshop before 2018 — reads only the one weight the file defaults to, and for Fira Code that is Light (300), not the regular. If that happens, use the Static download on this page instead: it has 5 ordinary files, one per weight, and works everywhere.
Does Fira Code support Turkish?
Yes. Fira Code includes the characters Türkçe needs that plain Latin does not — the dotless ı, the dotted İ, and ğ, ş, ü, ö and ç in both cases. This was checked against the font file itself, not assumed from the fact that it covers Latin.
What languages does Fira Code support?
Fira Code covers Latin, Latin Extended, Turkish, Cyrillic, Cyrillic Extended, Greek and Greek Extended, across 1,857 glyphs. Anything outside those alphabets is not included — the character map further up this page shows exactly what you get.
Does Fira Code support Cyrillic?
Yes. Fira Code includes the Cyrillic alphabet, and the Cyrillic Extended set as well, which adds the letters for languages beyond Russian, Ukrainian, Bulgarian and Serbian. This was read from the font file itself. The complete WOFF2 and the zip both carry it; only the Latin-only web file leaves it out.
What weights does Fira Code come in?
Fira Code comes in 5 weights: Light (300), Regular (400), Medium (500), Semi Bold (600) and Bold (700). It is a variable font, so every one of them is in a single file and you can also set any weight in between.
Is there a smaller, Latin-only version of Fira Code?
Yes — the "WOFF2 · Latin only" button on this page. It is 42 KB against 104 KB for the complete file, 60% smaller, with every weight the family has still in it. It covers Latin and Latin Extended, which is everything a page in English, Turkish or a western European language sets — Türkçe included, since ı, İ, ğ and ş all live in that range. Take the complete file instead if you set Cyrillic, Greek or any alphabet outside Latin.
Where can I download Fira Code as WOFF2?
From the WOFF2 button on this page — the file is fira-code.woff2, and it is about 104 KB. It is the complete font repacked for the web rather than a cut-down copy: the same glyphs, the same spacing and the same hinting as the .ttf in the download, roughly 60% smaller. Every browser still receiving updates reads WOFF2, so it is the only web format most sites need. Google Fonts does not offer this file for download at all — it serves WOFF2 from its own servers and gives you .ttf if you ask for the family.
What are programming ligatures, and do I have to switch them on?
A ligature is one glyph standing in for several characters. Fira Code adds a set of them for the combinations that appear constantly in code: the two keystrokes of an arrow are drawn as a single arrow, the not-equals pair becomes one crossed-out equals sign, three dots become an evenly spaced ellipsis. Nothing about your file changes — what is saved to disk is exactly what you typed, and a compiler, or another person opening the file, sees ordinary ASCII. In editors that support ligatures at all they are usually on by default, and they are the reason almost everybody downloads this font. You can watch it happen on this page: type an exclamation mark followed by an equals sign into the specimen box above and the two characters join into a single crossed-out equals as you type.
Why are the ligatures not showing up in my editor?
Because the editor is not asking for them. Ligatures are an OpenType feature and an application has to switch it on for the text it draws. VS Code needs editor.fontLigatures set to true in its settings; JetBrains editors have an "Enable font ligatures" checkbox under Font; iTerm2, Kitty, WezTerm and Alacritty each have their own setting, and some terminals do not support them at all. Notepad, most plain text boxes and many older terminals will never show them. The font is not broken when this happens — you simply get an ordinary monospace without the joined shapes.

Fira Code license

OFL-1.1

You may use, modify and redistribute this font, including in commercial work. You may not sell the font file on its own, and any modified version must be released under the same license and under a different name.

Commercial use allowed

Designed by The Mozilla Foundation, Telefonica S.A., Nikita Prokopov

Copyright 2014-2020 The Fira Code Project Authors (https://github.com/tonsky/FiraCode)

  • Taken unmodified from tonsky/FiraCode
  • The licence file is inside every zip — the site will not publish a download without one
  • This page’s data last changed on 4 September 2026

Read the full license text · What these licenses mean · How we check

Pairs well with Fira Code

Cite this page

Fira Code font: licence, alphabets and downloads. Thats My Font. https://thatsmyfont.com/fonts/fira-code (updated 2026-09-04)

Fonts similar to Fira Code