Skip to content
Convertto

OTF to TTF Converter

Convert OpenType (.otf) fonts to TrueType (.ttf) format.

OTF to TTF Converter converts font files between TTF, OTF, WOFF, WOFF2, and Base64 CSS definitions locally in your web browser. Font data processing runs entirely on your device without transmitting files over the network.

Runs in your browser
Privacy
Runs entirely in your browser — nothing is uploaded
Cost
Free, unlimited, no sign-up

OTF and TTF are both OpenType

An .otf file and a .ttf file are, in almost every case, the same kind of file. Both use the sfnt container the OpenType specification describes: a header, a table directory, and a set of tables identified by four-character tags such as cmap, head, name and GSUB. What differs is the table holding the glyph outlines. A font with TrueType outlines keeps them in glyf and loca and opens with the version tag 0x00010000. A font with PostScript outlines keeps them in a CFF or CFF2 table and opens with the tag OTTO. Convention names the first .ttf and the second .otf, which is why converting OpenType to TrueType is a real operation and not a rename.

The rasteriser decides what a file is by reading that version tag, not by reading the extension. A CFF font renamed to .ttf still works on Windows, macOS and Linux, and it is still a CFF font. If a tool rejected your file for being the wrong type, renaming it will not fix anything.

What actually changes in the conversion

TrueType outlines are quadratic Bézier curves with one off-curve control point per segment. PostScript outlines are cubic, with two. A cubic curve can be approximated by a chain of quadratic segments to any tolerance you pick, but it cannot generally be reproduced exactly, so a real OTF to TTF conversion redraws every curve in the font. At text sizes the difference is invisible. At poster sizes, or when the outlines feed a cutting plotter, an engraver or a 3D extrusion, the approximation error is something you can measure.

What survives and what does not

  • Glyph shapes survive as an approximation. Good converters fit quadratics within a tolerance you cannot see; crude ones produce visible kinks at high contrast joins and on tight curves.
  • Character mapping survives. The cmap table is independent of the outline format and is copied across.
  • Layout features survive if the converter copies GSUB, GPOS and GDEF across. Ligatures, kerning pairs, small caps, stylistic sets and old-style figures all live in those tables. A converter that rebuilds a font from outlines alone silently drops every one of them.
  • Hinting does not survive. TrueType hinting is bytecode held in fpgm, prep, cvt and in per-glyph instructions; CFF hinting is declared inside the charstrings and interpreted by the rasteriser. Neither translates into the other, so a converted font arrives unhinted and depends on whatever autohinting the renderer applies.
  • Variable axes do not survive a conversion that flattens to a single instance. A variable font stores its design space in fvar plus gvar for TrueType outlines or CFF2 for PostScript ones. Export one weight and the other weights are gone, not compressed.
  • Vertical metrics can shift. hhea, OS/2 and head each carry ascender, descender and line-gap values, and a rebuilt font that recalculates them instead of copying them will change line spacing in existing layouts.
FormatOutline dataCompressionWhere it belongs
.ttf TrueTypeQuadratic curves in the glyf and loca tablesNoneDesktop installation, Android build pipelines, tools that only read glyf
.otf OpenType with PostScript outlinesCubic curves in a CFF or CFF2 tableNoneDesktop installation, print and design applications
.woff WOFF 1.0Whichever of the two the wrapped font already usedzlib, applied to each table separatelyA fallback source for browsers too old for WOFF2
.woff2 WOFF 2.0Whichever of the two the wrapped font already usedBrotli over the whole font, after a reversible transform of glyf, loca and hmtxThe format to actually serve on the web
.eot Embedded OpenTypeEither, wrapped in a Microsoft-specific containerOptional MicroType ExpressInternet Explorer 8 and earlier. A W3C Member Submission that never became a standard
.ttc / .otc collectionEither, with tables shared between several facesNone on its own, though WOFF2 can wrap a collectionShipping a whole family in one file, common for CJK fonts
TTF and OTF are two flavours of the same sfnt container. WOFF and WOFF2 are packaging placed around one of them, not a third kind of outline.

Do you actually need TTF?

Often not. Windows and macOS have installed both flavours for two decades, so "my system will not take an OTF" is almost never the real problem. For the web, neither raw format is the right answer: serve WOFF2 and keep the desktop file as the source. The conversions that genuinely need glyf outlines are narrower than the search volume suggests.

  • Android resource pipelines and some game engines that only parse glyf.
  • Embedded and industrial renderers, label printers and older firmware font loaders.
  • Editors and plugins that read TrueType outlines only, including a number of vector and CNC toolchains.
  • Hinting work, since TrueType bytecode hinting has no CFF equivalent to edit.

Frequently asked questions

Is my font file uploaded anywhere?

No, font conversion happens entirely in your browser using JavaScript.

What is the difference between OTF and TTF?

Both are OpenType fonts using the same sfnt container. A TTF stores glyph outlines as quadratic curves in the glyf and loca tables; an OTF stores them as cubic curves in a CFF or CFF2 table. The extension reflects which outline format the file uses, and the rasteriser decides by reading the version tag inside the file rather than the extension.

Is converting a font lossless?

Unwrapping WOFF or WOFF2 back to sfnt is defined to be reversible, so the table data comes back intact. Converting between outline formats, such as OTF to TTF, is not: cubic curves have to be approximated by quadratics, and hinting and variable-font axes do not carry over.

Am I allowed to convert a commercial font?

Often not. Many font licences forbid modification, web embedding or redistribution, and converting a font is a modification. The OS/2 table carries an fsType field in which the foundry declares its embedding permission. Check the EULA before converting a font you did not make.

Can I convert an EOT or TTC file here?

No. This tool accepts TTF, OTF, WOFF and WOFF2. EOT is a retired Microsoft container for Internet Explorer 8 and earlier, and TTC is a collection holding several faces in one file, which needs a different unpacking step.

How to use the otf to ttf converter

  1. 1Select your font file — the file stays on your device and is never uploaded.
  2. 2Press Run, then download the result when it is ready.

Sources & specifications

Embed this tool

Put the working otf to ttf converter on your own site. It runs in your visitors' browsers exactly as it does here — free, no account, nothing uploaded.

Share this tool

Last updated

More developer tools