Type is the interface. A body face earns its place in the first paragraph, not the first headline. Vigil keeps its counters open and its spacing even at small sizes, so long passages stay quiet and the rounding never announces itself. Set it at 16 over 24 with a measure near sixty-five characters, and the page reads like it was never designed at all — which is the point.
Vigil
Fewer things, measured faster.
Eight weights on one axis. One outline.
- ExtraLight200Choosing what not to build is the job.Display weight — 40px and up.
- Light300Choosing what not to build is the job.
- Regular400Choosing what not to build is the job.
- Medium500Choosing what not to build is the job.
- SemiBold600Choosing what not to build is the job.
- Bold700Choosing what not to build is the job.
- ExtraBold800Choosing what not to build is the job.
- Black900Choosing what not to build is the job.
- Outline—Choosing what not to build is the job.Separate display style stroked from Bold — 40px and up.
Rounded by rule, not by default.
Vigil is a geometric grotesk with a large x-height, a double-story a and a single-story g. Rounding is applied by rule — most at exposed terminals (C G S c e s, the arms of E F T, the feet of K and z), less at structural corners, none on l, 1, I or punctuation. At 16px it reads as a clean sans. At 96px the softness becomes the signature.
Fewer.
Faster.
Free.
Il1 | O0Q | rn m | 8B6 | ecasg | $€£¥ | 2026
Il1 | O0Q | rn m | 8B6 | ecasg | $€£¥ | 2026
ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789 ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØŒÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøœùúûüýþÿ ĀāĂ㥹ĆćČčĎďĐđĒēĖėĘęĚěĞğĢģĪīĮįİıĶķĹĺĻļĽľŁłŃńŅņŇňŌōŐőŔŕŖŗŘřŚśŞşŠšŢţŤťŪūŮůŰűŲųŴŵŶŷŸŹźŻżŽž .,:;…!¡?¿·•*#/\(){}[]-–—_"“”'‘’«»‹› @&¶§©®™° +−×÷=≠<>≤≥±~^% ‰ $€£¥¢ ½¼¾ ¹²³
Latin Extended (Western and Central European). Kerning throughout.
Notes
All notes- 2026-09-04A vigil is what you keep when you refuse to go to sleep on something.Ten years of a calendar block that said MAKE FONT, and why it finally shipped.
- 2026-08-21Soft corners: a short history of the rounded sansFrom a car company's letterhead to every app icon, and what most rounded fonts get wrong.
- 2026-08-28A century of circles: the geometric groteskErbar, Futura and Kabel arrived within a year of each other. The idea never left.
Questions, answered.
Is Vigil free for commercial use?
Yes. Vigil is released under the SIL Open Font License 1.1, so you can use it in commercial work, embed it in apps and websites, and sell products set in it. There is no cost, no account, and no attribution required in your designs.
What is Vigil based on?
Vigil is derived from Figtree, Erik Kennedy's open-source geometric sans, under the SIL Open Font License. Figtree supplies the skeleton. The rounding rules, the outline style and the finished curves are Vigil's own.
How many weights does Vigil have?
Eight weights, from ExtraLight 200 to Black 900, each with a matching italic. There is also a separate Vigil Outline style in roman and italic. One variable font file covers the whole 200 to 900 axis.
Can I use Vigil in a logo?
Yes. The SIL Open Font License places no restriction on what you set in the typeface, logos and wordmarks included. The one thing the license forbids is selling the font files on their own.
Which languages does Vigil support?
Vigil covers Latin Extended, which includes Western and Central European languages such as English, Spanish, French, German, Polish, Czech and Turkish. Kerning runs throughout, alongside tabular figures, fractions, superscripts and subscripts.
How do I self-host Vigil on a website?
Download the zip, copy the two variable WOFF2 files to your server, and add the two @font-face rules from the download section below. One file covers all eight weights. Static WOFF2 and TTF files are included for older browsers.
Free. Forever. No email.
Variable TTF and WOFF2 · 16 static TTF and WOFF2 · 16 OTF · Vigil Outline Regular and Italic. Statics are hinted for Windows.
SIL Open Font License 1.1 — use it anywhere, in anything, commercial or not. No attribution required. No account. No newsletter.