- home
- font converter
Font Converter
Convert any font format online - TTF, OTF, WOFF, WOFF2 in one upload for free. Web-based, Lossless, kerning & variable axes preserved, files deleted after conversion.
Drop your font file here
or browse files — up to 10 MB
All converters
All converters
TTF to WOFF2
Convert TrueType to WOFF2
WOFF2 to TTF
Convert WOFF2 to TrueType
TTF to WOFF
Convert TrueType to WOFF
WOFF to TTF
Convert WOFF to TrueType
OTF to TTF
Convert OpenType to TrueType
OTF to WOFF
Convert OpenType to WOFF
OTF to WOFF2
Convert OpenType to WOFF2
WOFF to OTF
Convert WOFF to OpenType
TTF to OTF
Convert TrueType to OpenType
WOFF2 to OTF
Convert WOFF2 to OpenType
WOFF to WOFF2
Convert WOFF to WOFF2
WOFF2 to WOFF
Convert WOFF2 to WOFF
Font format guide TTF, OTF, WOFF, WOFF2 explained
Font format guide TTF, OTF, WOFF, WOFF2 explained
Four formats handle nearly every legitimate use case for a font file. Two of them, TTF and OTF, store raw glyph data and ship with the operating system stack. The other two, WOFF and WOFF2, wrap that same data in a compressed container designed for the web. The table below maps the trade-offs.
| Format | Full name | Compression | Best for | Browser support | Size vs TTF |
|---|---|---|---|---|---|
| TTF | TrueType Font | None — raw outlines | Desktop apps, print, OS install | All + IE9+Not web-optimised | Baseline |
| OTF | OpenType Font | None — raw outlines | Desktop, print, advanced features | All + IE9+Not web-optimised | Similar |
| WOFF | Web Open Font Format | zlib / deflate | Legacy browser fallback (IE11) | All modern + IE9+Legacy | ~20–30% smaller |
| WOFF2 | Web Open Font Format 2.0 | Brotli + glyph transform | All modern web projects | Chrome 36+, Firefox 39+, Safari 12+, Edge 14+Recommended | ~50%+ smaller |
The compression numbers are where the practical difference shows up. A 200 KB TTF becomes a 90–100 KB WOFF2, and on a font-heavy page that compounds into a measurable Core Web Vitals improvement.
TTF vs OTF - What is actually different?
TTF vs OTF - What is actually different?
TTF and OTF are siblings rather than rivals. Both formats descend from the OpenType specification and both can store kerning tables, hinting, and OpenType layout features. The difference lives in how each describes the shape of a letter.
TrueType (TTF)
TrueType describes glyph outlines with quadratic Bézier curves: two anchor points and one control point per segment. The format was developed by Apple and Microsoft in the late 1980s as a system font format, and that origin still shows. TTF is the default container Windows and macOS expect at the OS level, and TTF hinting is more granular than OTF hinting, which is why TrueType files still render crisply at small sizes on low-DPI screens.
OpenType (OTF)
OpenType arrived later, as a Microsoft and Adobe collaboration, and added the option of cubic (PostScript/CFF) Bézier curves: two anchor points and two control points per segment. Curves take fewer points to describe with cubic geometry, so OTF files are often slightly smaller than the same typeface drawn in TTF. The PostScript heritage also means OTF tends to be the format type designers prefer when they cut a typeface, since it maps more directly to the way letterforms are drawn in the first place. OTF also supports a richer feature set through expanded layout tables: ligatures, small caps, fractions, stylistic alternates, swashes, and advanced language support via OpenType Layout tables.
Which to use?
For the web, the distinction stops mattering. WOFF2 carries either curve type without loss, and every OpenType feature survives the conversion intact. For desktop, choose OTF when the typeface relies heavily on advanced OpenType features, and TTF when the widest possible OS compatibility matters.
WOFF vs WOFF2 - Which web font format to ship?
WOFF vs WOFF2 - Which web font format to ship?
WOFF and WOFF2 do the same job, wrapping a font file in a compressed container with a Content-Type that browsers recognise. The difference is how they compress.
WOFF uses zlib, the same algorithm behind ZIP and gzip. WOFF2 uses Brotli, plus a glyph-aware preprocessing step that strips redundancy specific to font tables. The result is roughly 30% smaller files than WOFF and roughly 50% smaller than the source TTF, with no rendering difference.
In 2026, WOFF2 covers 97%+ of global browser traffic, which is the same coverage as CSS variables and Flexbox. There is no longer a meaningful audience that needs WOFF as a fallback unless the site explicitly supports IE11, typically because it serves a legacy kiosk environment, internal enterprise software with locked browser versions, or government workflows that have not migrated. Outside those cases, shipping a single WOFF2 file per weight is the correct default.
When in doubt, declare both. The browser picks whichever it can decode and ignores the other:
src: url('/fonts/yourfont.woff2') format('woff2'), url('/fonts/yourfont.woff') format('woff');
Using converted fonts in CSS
Using converted fonts in CSS
After conversion, the fonts are referenced through @font-face. The format() hints let the browser skip files it cannot decode without downloading them first, and font-display: swap prevents the brief flash of invisible text that fonts otherwise produce on first paint.
/* Modern: WOFF2 only */ @font-face { font-family: 'YourFont'; src: url('/fonts/yourfont.woff2') format('woff2'); font-weight: 400; font-display: swap; } /* With IE11 fallback */ @font-face { font-family: 'YourFont'; src: url('/fonts/yourfont.woff2') format('woff2'), url('/fonts/yourfont.woff') format('woff'); font-display: swap; } /* Variable font */ @font-face { font-family: 'YourVarFont'; src: url('/fonts/yourfont-variable.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
What survives conversion
What survives conversion
Format conversion is structural, not generative. Nothing about the typeface is redrawn or re-engineered. The data tables are re-wrapped in a different container.
Kerning
Kerning lives in either the kern table (older) or the GPOS table (modern OpenType). Both pass through WOFF and WOFF2 unchanged. The converted file renders identical pair spacing to the source.
Font hinting
Hinting instructions, which align outlines to the pixel grid at 12–16px on low-DPI screens, live in the fpgm, prep, and cvt tables. WOFF2 stores these as opaque binary blobs and the Brotli compression operates on the raw bytes without modifying them. Small-size rendering on Windows ClearType and other low-DPI environments behaves identically before and after conversion.
OpenType features
Ligatures, small caps, old-style figures, fractions, stylistic alternates, contextual alternates, and language-specific substitutions all live in the GSUB and GPOS tables. They survive untouched. CSS can activate them in the browser with font-feature-settings: "liga" 1, "kern" 1, "onum" 1 once the converted file is referenced through @font-face.
Variable font axes
Anything declared in the fvar table, including weight, width, slant, optical size, or any custom axis the type designer added, stays controllable through font-variation-settings. WOFF2 was designed with variable fonts in mind, and the format adds no meaningful overhead for them.