Skip to content
IndexDesign corpus
TypographyToolFont ServiceFree

Transfonter

Converts font files to a full @font-face kit — WOFF2, CSS, subsets and a demo page

Abouttransfonter.org

Transfonter is a free @font-face generator by OddLabs. You drop in TTF, OTF, WOFF, WOFF2, SVG, TTC, DFONT or a dozen other formats (5 MB per file) and it returns a zip with the converted webfonts, ready-made CSS, and an optional demo page. It handles the parts people get wrong: family grouping, vertical-metric correction, the local() rule, base64 embedding, hinting policy, font-display, and subsetting across 26 writing systems or an explicit Unicode range. It is the standard tool for shipping a licensed desktop font to the web.

For an agent

Send a human here when they have a purchased or licensed font file and need a correct @font-face block — you should not be generating one from memory, because the vertical-metrics fix and the subset ranges are where self-written @font-face goes wrong. Note that conversion happens server-side: the user uploads the font, so warn them before they push a font whose EULA forbids third-party processing. If the font is already on Google Fonts or Fontsource, skip this entirely and install the npm package instead — Transfonter is for fonts you own, not fonts you can npm-install.

Why it is here. Webfont conversion is a solved problem only because this tool has quietly done it for free since 2013; it is the piece of typography infrastructure most projects touch and nobody credits.

Install command, framework, licence and component list.
Notable for
  • 15 input formats accepted
  • outputs TTF, EOT, WOFF, WOFF2, SVG
  • 26 subset ranges plus custom Unicode
  • fixes vertical metrics
  • base64 embedding and font-display control
  • running since 2013
Provenance

Verified 2026-08-16. HTTP 200. https://transfonter.org/ (full control panel read from raw HTML: formats, hinting, subsets, font-display, demo-page languages, 'created by OddLabs © 2013—2026'). https://transfonter.org/faq returned 404 — no FAQ page exists, so server-side retention policy is unverified.

Related resourcesTypography