Fraunces

Replaces: Recoleta (82%) | OFL-1.1 | Updated: Aug 2026

About Fraunces

Classification
display
Weights
Variable (100-900)
Features
Variable, Italics
SIL Open Font License 1.1

Free to use, modify, and distribute. Can be used commercially without attribution.

What's allowed?
  • Client work
  • SaaS / Web apps
  • YouTube / Video
  • Sell products
  • Print materials

Note: Derivative fonts must use the same license.

Full license guide →
Get Fraunces Free ↗

Fraunces is a variable display serif that Google Fonts commissioned from Undercase Type in 2018 and published in October 2020. It carries four axes — weight, optical size, softness and a binary "wonk" switch — and the wonk is what made its reputation: leaning, off-balance letterforms a well-mannered serif would have corrected. The catch is that the default Google Fonts embed does not give you them. You have to ask.

What Fraunces is, and where it came from

Fraunces was drawn by Phaedra Charles and Flavia Zimbardi, partners at Undercase Type. The family's METADATA.pb in the google/fonts repository sets the designer string to "Undercase Type, Phaedra Charles, Flavia Zimbardi"; the foundry's minisite at fraunces.undercase.xyz adds "with contributions by Ethan Cohen, and Andy Clymer" — contributors on the project, not co-designers of the face.

The origin is documented rather than inferred. The Google Fonts article shipped with the family (ofl/fraunces/article/ARTICLE.en_us.html) states it plainly:

In 2018, Google Fonts commissioned Flavia Zimbardi and Phaedra Charles of Undercase Type to make a new display typeface that would demonstrate the power and promise of variable fonts with a sense of humor.

A commission, not sponsorship or engineering help — which explains the family's shape. The axes are the brief, not a feature bolted on afterwards.

Three models are named identically in the upstream README, the Google Fonts description and that article: Windsor, Souvenir and the Cooper Series. Charles, quoted in the article, says which one matters most — "the leaning 'n' in Windsor is a very distinctive characteristic of this style and is probably the most direct comparison" — and attributes the italic separately, to Cooper Nouveau. The roman leans because Windsor leans; the italic's flagged terminals come from somewhere else.

The repository github.com/undercasetype/Fraunces was created 1 October 2018; the 1.000 tag — published as the release titled "Fraunces v1.0" — and the Google Fonts catalogue entry both landed 29 October 2020, after two September betas. Three tags exist in all, v0.9-beta, v0.9.01-beta and 1.000, and 1.000 is still the only stable one.

Google Fonts still serves that October 2020 build: name ID 3 in both hosted binaries still reads version 1.000 — 1.000;UCT;Fraunces-9ptBlack in the roman, 1.000;UCT;Fraunces-9ptBlackItalic in the italic. Upstream has moved past it without tagging anything new — the repository's master branch now carries a v1.003 build with a slightly larger character set and two GSUB features the hosted files do not have. So "Fraunces" is two builds depending on where you get it, and whichever you self-host, pin it deliberately.

Google's catalogue files Fraunces under serif; the foundry, the README and the Google Fonts description all call it "a display, 'Old Style' soft-serif typeface". This page follows the sources, and most of what follows comes from that.

Design characteristics

Four axes, not two. The two shipped files — Fraunces[SOFT,WONK,opsz,wght].ttf (360,440 bytes) and Fraunces-Italic[SOFT,WONK,opsz,wght].ttf (414,904 bytes) — each carry an fvar table with wght 100–900 (STAT names Thin, Light, Regular, SemiBold, Bold, Black), opsz 9–144 (named points 9pt, 72pt, 144pt), SOFT 0–100 (Sharp, Soft, SuperSoft) and WONK 0–1 (NonWonky, Wonky).

opsz is non-linear and does real work. An avar table remaps it, and per the README, as optical size decreases the x-height rises, spacing opens and characters widen — so the display end gives tighter spacing and a smaller lowercase against the caps. Metrics move along the axis, so they only mean something with an instance attached: at the file's fvar default (opsz 9, wght 900) the em is 2000 units, cap height 1400, x-height 964, ascender 1956, descender −510. Quote no x-height ratio for Fraunces without naming the instance.

SOFT is the ink control. In the foundry's words it governs "the 'wetness' or 'inkiness' of the typeface", giving access to the rounded forms otherwise found only at the optical minimum while leaving the rest of the optical-size behaviour alone.

WONK is a switch, not a slider. At WONK ≥ 0.5 the wonky glyphs are used; below it they are swapped for normalised .alt forms through the rvrn feature-variations mechanism. The two files do not carry the same amount of it: 26 substitutions in the roman, 23 in the italic — base letters plus their accented derivatives. Roman: h, m, n, s and the ampersand. Italic: b, d, h, k, l, v, w and the ampersand — it does not touch m, n or s. Google's description covers "the lean of the h, n, and m glyphs in the Roman, and the flagged ball terminals of the b, d, h, k, l, v, and w glyphs of the Italic", which is accurate but omits the roman's s and both ampersands.

The wonk switches itself off when the type gets small. Shaping the shipped binaries and binary-searching the axis puts the crossover at roughly opsz 21.7: at 21.6 or below you get normalised forms even with WONK at 1. The README calls the threshold "18px and less" in prose and, contradicting itself, "substitutes when opsz > 18" in its axis table; the binary measures higher than both. The logic is sound — the README's reasoning is that the quirks are less desirable for continuous reading — but nothing in your CSS reports that it has happened. The substitution is internal to the font, so the axis value you set and the letterforms you get can disagree without any warning.

Six named instances per file, not nine. Thin (100), Light (300), Regular (400), SemiBold (600), Bold (700), Black (900). The axis is continuous and Google Fonts exposes all nine 100-step values in roman and italic, but 200, 500 and 800 are interpolation points, not entries in a font menu. The foundry's static download is organised differently again: 3 optical sizes × 3 softness levels × 6 weights, roman and italic — 108 files.

The italic is a second variable font, not a slant. Same 100–900 range, same four axes, separate download.

The feature set is small. In the v1.000 TTF in the google/fonts repository, GSUB carries exactly case, liga, rvrn and ss01; GPOS carries kern. The webfonts actually served from fonts.gstatic.com are subsetted further still, so case and ss01 are not available on the hosted route — you need the self-hosted file for those. (Upstream's later v1.003 adds aalt and locl; that is the whole difference in the feature list.) No discretionary ligatures, no small caps, no oldstyle or tabular figures, no salt. Five ligatures ship in liga: fi, fl, ff, ffi, ffl.

ss01 turns the wonk off, not on. It carries the same substitution list as the rvrn lookup and applies it the same way round: shaping hmns& through the roman at opsz 144 with WONK 1 gives the wonky base glyphs, and switching ss01 on gives h.alt m.alt n.alt s.alt ampersand.alt — glyph for glyph the WONK 0 result, and the same at any WONK value. That is the README's own description of it ("a binary axis that substitutes wonk characters for more normalized characters… in OTF or TTF instances, this can be implemented as an OpenType Stylistic Set"). If a static instance was built at the file's WONK 1 default, the wonky forms are what you already have; ss01 is the switch that removes them.

Coverage is Latin only. Subsets in METADATA.pb are latin, latin-ext and vietnamese; the roman's cmap maps 624 codepoints across 698 glyphs — 95 ASCII, 96 Latin-1 Supplement, 344 Latin Extended (A, B and Additional together), 32 spacing modifier letters and combining diacritical marks, one IPA Extensions letter (U+0259 schwa), and 56 codepoints at or above U+2000: punctuation, currency, math operators, letterlike symbols and presentation forms. No Greek, no Cyrillic: U+03B1 and U+0430 are both absent.

Where Fraunces works

Headlines above roughly 22px, which is also where the wonk turns on: editorial titles and mastheads, brand wordmarks, packaging, posters, book covers, section openers.

The opsz axis is the reason to pick it over a static display serif. One family gives a masthead at opsz 144 and a deck at opsz 9–14 with the proportions genuinely redrawn between them — and because the wonk gate sits at ~21.7, a size ramp built on opsz normalises the small text for you. The display line keeps the lean, the deck below it does not, and you set no extra property to get that.

SOFT is the other reason: Sharp to SuperSoft covers ground that would otherwise mean two licences, a crisp editorial serif and a rounded inky retro one, without changing the skeleton.

Where Fraunces struggles

It is a display face and behaves like one. The tags on this page point at education and healthcare, but every primary source calls Fraunces display, and the wonk mechanism exists because its quirks work against continuous reading. Body copy in Fraunces is a deliberate decision with real reservations, not a default.

The default settings hide the best part. A bare ?family=Fraunces request returns a pinned static named "Fraunces Regular" — weight 400, built at opsz 14, no fvar table at all. That is below the wonk threshold, and the catalogue WONK default is 0 anyway. And because the pinned static has no fvar, font-variation-settings on it silently does nothing.

The two authorities disagree about defaults. The binary's fvar defaults are opsz 9, wght 900, SOFT 0, WONK 1 — its default instance is named "Fraunces 9pt Black". Google's catalogue metadata reports opsz 14, wght 400, SOFT 0, WONK 0. That matters less on the web than it looks: CSS pins wght to the used font-weight (400 unless you say otherwise) and, because font-optical-sizing: auto is the initial value, pins opsz to your font size. What does carry over is WONK — CSS has no property for a custom axis, so it sits at its fvar default of 1 and you get the wonky forms whether you asked for them or not. In a design app or PDF renderer, which honours fvar directly, you really do get Fraunces 9pt Black.

Thin typographic toolkit. No tabular or oldstyle figures, no small caps, no fractions; anything numerically dense needs a second family. Latin only — Vietnamese is covered, Greek and Cyrillic are absent, so a multilingual product needs a display fallback that will not blend. And the files are large for a display layer: 360 KB roman, 415 KB italic unsubsetted.

Which premium fonts Fraunces substitutes for

Closest. Cooper Black is the most defensible swap here, because the relationship is documented — the Cooper Series is one of the three models the designers name. At wght 900 with SOFT high, Fraunces lands in the same warm, heavy, rounded-serif register. What you do not get is Cooper Black's silhouette; Fraunces is an original in that tradition, not a revival of it. What you gain is a weight and optical range Cooper Black never had.

Recoleta and Recoleta Alt sit in the same retro-warm soft-serif territory, and Fraunces matches the temperature at mid-to-high SOFT. The divergence is the lean: Recoleta is warm but even, Fraunces at WONK 1 deliberately is not.

Grenette is the nearest match in intent rather than shape — another variable display serif built on deliberate asymmetry. If quirk-with-a-range was what you were buying, Fraunces answers it; the quirks themselves are different drawings. Bogart shares the retro display job, reachable at high weight and large optical size, though the fatface end of its contrast is somewhere Fraunces does not go.

Plausible with tuning. GT Super, Chronicle Display, Canela, Ogg, Noe Display and Editorial New are high-contrast editorial display serifs. Fraunces substitutes for the role — a serif carrying a masthead with personality — not the letterforms. Run it at opsz 144, SOFT 0, WONK 0 for its most restrained setting; it stays softer and blunter than any of them. Same for Francesca and Freigeist: the expressive register overlaps, the specific decoration does not.

Don't. Bodoni, Didot and Ambroise are didones — vertical stress, flat hairline serifs, extreme contrast. Fraunces's serifs are soft and bracketed by design and no axis setting changes that; use Bodoni Moda, Libre Bodoni or Playfair Display instead. Brioso Pro is a calligraphic old style; if the pen-drawn quality is why it was chosen, EB Garamond or Cormorant Garamond get closer than Fraunces will.

Pairing Fraunces

Fraunces is loud in a structural sense: modelled strokes, soft bracketed serifs, letterforms that may be deliberately out of alignment. The companion's job is to be quiet and differently built — low contrast, normal width, upright, even. Inter, Public Sans, Source Sans 3 and IBM Plex Sans recede far enough that the headline keeps the attention, and all four give you the tabular figures Fraunces lacks — though by different routes. Inter and Public Sans carry a tnum feature you switch on with font-variant-numeric: tabular-nums; Source Sans 3 and IBM Plex Sans have no tnum at all, because their default figures are already drawn on a single width (472 and 600 units), so there is nothing to switch. Fraunces has neither: no tnum, and default digits running from 1024 to 1461 units wide. For warmth in the body copy, DM Sans or Work Sans hold up without competing.

Fraunces pairs with itself too, and the good version uses two axes rather than one: masthead at opsz 144 with weight high, deck at opsz 9–14 with weight moderate. The size relationship, the proportional redraw and the automatic wonk drop all come out of one family.

Avoid other characterful display serifs — DM Serif Display and Calistoga are applying for the same job, and two faces competing for one role reads as indecision.

Licensing and self-hosting in plain terms

Fraunces ships under the SIL Open Font License 1.1, confirmed three ways: ofl/fraunces/OFL.txt in google/fonts, name ID 13 in both binaries, and the SPDX field on the upstream repository. The copyright line in OFL.txt reads "Copyright 2018 The Fraunces Project Authors (https://github.com/undercasetype/Fraunces)"; the binaries' name ID 0 dates the same line to 2020.

  • You may use it commercially, on the web, in apps and in products you sell; self-host, subset, modify and redistribute it.
  • You must keep derivatives under the OFL and ship the licence with the files.
  • You may not sell the font on its own. Bundling it into something you sell is fine.

No Reserved Font Name is attached to this family — the only occurrence of the phrase in OFL.txt is the boilerplate definition inside the licence text — so a derivative can carry whatever name you give it, provided it stays under the OFL. OS/2 fsType is 0, installable embedding, so PDF and application embedding are unrestricted at the file level.

Google serves the family from the open catalogue path (fonts.gstatic.com/s/fraunces/…), so the hosted route adds no conditions — but it needs care: name the axes you want in the css2 request rather than accepting a bare ?family=Fraunces, which returns the pinned non-variable static. Self-hosting the two variable TTFs and driving them with font-variation-settings is more predictable, as long as you declare every axis you care about — but name the build you are taking. On github.com/undercasetype/Fraunces the 1.000 tag holds the same v1.000 files this page has been measuring; the master branch holds the later v1.003, with a wider character set and the two extra GSUB features. Pin the tag if you want what is documented here.

Frequently asked questions

Why don't I see the wonky letterforms? Two reasons, usually together. The default ?family=Fraunces request returns a pinned static built at opsz 14 with no variable axes, and the catalogue WONK default is 0. Even with WONK at 1, the substitution is forced off below roughly opsz 21.7 — you need the variable file, WONK 1 and an optical size above the threshold.

How many axes does Fraunces have? Four, and both files carry all four in their fvar table: wght 100–900, opsz 9–144, SOFT 0–100 and WONK 0–1. Optical size and wonk interact — the wonk substitution is gated on opsz — but they are separate axes you set independently, and SOFT is a third distinct control governing how rounded and inky the strokes run. Only wght and opsz are registered OpenType axes; SOFT and WONK are custom, which is why they need an explicit font-variation-settings declaration rather than a CSS property of their own.

How many weights does Fraunces have? The axis runs continuously from 100 to 900 and Google Fonts exposes all nine 100-step values in roman and italic. The binaries carry six named instances per file — Thin, Light, Regular, SemiBold, Bold, Black — so 200, 500 and 800 are interpolation points, not styles in a font menu.

Does Fraunces have real italics? Yes, and they are a separately drawn variable file covering the same 100–900 range, not a slant axis. The italic's wonky forms affect a different set of letters (b, d, h, k, l, v, w and the ampersand) than the roman's (h, m, n, s and the ampersand), and draw on Cooper Nouveau rather than Windsor.

Why does my self-hosted Fraunces render enormous and heavy? The variable file's fvar defaults are opsz 9, wght 900, SOFT 0, WONK 1 — the default instance is named "Fraunces 9pt Black". A design app or PDF renderer honours those directly, so that is what you see there. A browser does not: font-weight drives wght and font-optical-sizing: auto — the initial value — ties opsz to your font size, so the web default is Regular at whatever size you set. The axis that does leak through is WONK, which has no CSS property and stays at 1. Declare font-weight: 100 900 as an @font-face descriptor, and set font-variation-settings on the element when you want WONK or SOFT under control.

What is the difference between the WONK axis and ss01? ss01 is the static-font equivalent of WONK 0, not WONK 1 — the two are opposites in effect. Switching ss01 on replaces the wonky letterforms with the normalised ones, and its output is identical to WONK 0 at every WONK value. It carries the same substitution list the axis does: 26 in the roman, 23 in the italic. Use it in a static instance, or in software that cannot drive a custom axis, when you want the quirks gone. It is not a route to the wonky forms — for those you need the variable file, WONK 1, and an optical size above the threshold.

Is Fraunces free for commercial use? Yes — SIL Open Font License 1.1. Commercial use, embedding, self-hosting, subsetting and modification are all permitted. Derivatives stay under the OFL, and you cannot sell the font file by itself.

Does Fraunces support Cyrillic, Greek or Vietnamese? Vietnamese yes; Cyrillic and Greek no. Coverage is Latin, Latin Extended and Vietnamese — 624 mapped codepoints, with no Greek or Cyrillic in the cmap at all.

Can I use Fraunces for body text? You can, but every primary source calls it a display typeface, and the wonk mechanism exists because those quirks work against continuous reading. A low optical size gets you the normalised letterforms; it does not make it a text face.

How many ligatures does Fraunces have? Five, all in liga: fi, fl, ff, ffi and ffl. There is no discretionary ligature feature, and no small caps, oldstyle or tabular figures — in the TTF Google publishes in its font repository the complete feature set is case, liga, rvrn, ss01 and kern, and the hosted webfont subsets carry less than that. Upstream's later v1.003 adds aalt and locl and nothing else, so the ligature count is the same either way.

Is Fraunces on Google Fonts?

Yes, Fraunces is available for free on Google Fonts. Get Fraunces on Google Fonts ↗

Alternative For (17)

Fraunces is a free alternative to the following premium fonts:

#1 Bodoni 70%
[itc] · serif

Contemporary high-contrast display serif with a variable weight range

View all alternatives
#2 Didot 68%
[linotype] · serif

Characterful variable display serif with adjustable contrast

View all alternatives
#3 Canela 80%
[commercial-type] · serif

Closest match for Canela's warm, soft serif character with variable font flexibility

View all alternatives
[hoeflerco] · serif

Quirky old-style serif with optical size axis and distinctive editorial personality

View all alternatives
[bb-and-s] · display

Modern variable display serif with optical sizes and soft, friendly character

View all alternatives
[pangram-pangram] · serif

Expressive display serif with old-style influences and distinctive personality

View all alternatives
[2d-typo] · display

Expressive variable display serif with soft, organic character and optical size axis — the closest in personality if not in ornamental detail

View all alternatives
#8 GT Super 79%
[grilli-type] · serif

Expressive display serif with retro-inflected personality and variable axes

View all alternatives
[schick-toikka] · serif

Contemporary serif with optical sizing and distinctive editorial character

View all alternatives
#10 Ogg 73%
[sharp-type] · serif

Expressive display serif with soft contrast and distinctive personality

View all alternatives
#11 Recoleta 82%
[latinotype] · serif

Similar warm retro serif

View all alternatives
#12 Recoleta 80%
[latinotype] · serif

Similar warm retro character

View all alternatives
#13 Ambroise 62%
[typofonderie] · serif

Variable serif with comparable stylistic range and editorial personality

View all alternatives
#14 Brioso Pro 60%
[adobe] · serif

Variable serif with comparable playful warmth and optical size range

View all alternatives
#15 Freigeist 66%
[rene-bieder] · serif

Variable serif with similar expressive personality and editorial character

View all alternatives
#16 Bogart 75%
[zetafonts] · display

Variable display serif with similar retro-inspired warmth

View all alternatives
#17 Grenette 68%
[colophon] · serif

Variable display serif with quirky, expressive details

View all alternatives

Compare Fraunces

See how Fraunces compares to other fonts side by side.

Variable Font Axes

Fraunces is a variable font with 4 axes you can fine-tune.

Axis Min Default Max
wght 100 400 900
opsz 9 14 144
SOFT 0 0 100
WONK 0 0 1

Font Pairings

Fonts that pair well with Fraunces based on contrast and complementary design characteristics.

Cabin + Fraunces
83/100
sans-serif + display
Best for: Friendly, Warm
Education Healthcare Accessibility
Fraunces + Lato
83/100
display + sans-serif
Best for: Friendly, Warm
Education Healthcare Accessibility
Fraunces + Nunito
83/100
display + sans-serif
Best for: Friendly, Warm
Education Healthcare Accessibility
Fraunces + Poppins
83/100
display + sans-serif
Best for: Friendly, Warm
Education Healthcare Accessibility
Fraunces + Rubik
83/100
display + sans-serif
Best for: Friendly, Warm
Education Healthcare Accessibility

Performance

Key metrics for evaluating Fraunces in production.

Score
64 /100 Good
File Size
209.2 KB Medium
Weights
9 (variable) + Italics
Languages
3 groups CDN delivery

Font Metrics

x-Height Ratio
0.482
Cap Height Ratio
0.7
Ascender
1956
Descender
-510

Fallback CSS Overrides

Apply these overrides to Arial to minimize layout shift when loading Fraunces.

@font-face {
  font-family: 'Fraunces Fallback';
  src: local('Arial');
  ascent-override: 97.8%;
  descent-override: 25.5%;
  line-gap-override: 0%;
  size-adjust: 92.95%;
}
woff2 Measured via Google Fonts API Metrics extracted from WOFF2

How to Use Fraunces

Copy these code snippets to quickly add Fraunces to your project.

Quick Start

CSS code for Fraunces

@import url('https://fonts.googleapis.com/css2?family=Fraunces:wght@100..900&display=swap');