Add your WOFF file
Drop one or more .woff files onto the converter above, or browse for them. They load into browser memory only — nothing is uploaded, so there is no size-based pricing and no server queue.
Converting a .woff font to .ttf repackages the same glyphs and metrics for a different delivery target. Free, private, and validated — the file never leaves your browser.
Batch files can each use a different output. Nothing uploads for local conversions.
Working inputs include camera RAW, browser-local audio/video, PDF, CBZ/CBR comics, office documents, ebooks, markup, 3D models, structured text, images, and archives.Converting a .woff font to .ttf repackages the same glyphs and metrics for a different delivery target. WOFF, extension .woff, wraps an OpenType or TrueType font in zlib compression plus a small header and an optional metadata block, creating a format websites could legally and efficiently serve. It was the format that ended the web's font drought and made @font-face mainstream.
TrueType fonts, extension .ttf, describe each glyph as outlines built from quadratic Bezier curves plus hinting programs that fine-tune rendering at small sizes. It has been the workhorse desktop font format for over three decades and remains the base technology inside most fonts installed today. For this route the practical draw is installs and renders everywhere, from decades-old systems to current ones and excellent small-size rendering when well hinted — balanced against uncompressed, so files are several times larger than their WOFF2 equivalents on the web, which is worth knowing before you commit a large batch.
The practical trigger for this conversion is usually a mismatch: with .woff, superseded by WOFF2's stronger compression. Switching to .ttf buys you installs and renders everywhere, from decades-old systems to current ones, which is why it is the better fit for installing fonts on Windows, macOS, and Linux desktops. Because the conversion runs locally, trying it costs nothing but a few seconds of compute on your own machine.
| Aspect | WOFF web font (.woff) | TrueType font (.ttf) |
|---|---|---|
| Format type | Container — quality depends on the codecs and settings inside | Container — quality depends on the codecs and settings inside |
| How it stores data | each sfnt table is individually zlib-compressed, so the structure mirrors the original font table for table | an sfnt container of tagged binary tables: glyf for outlines, cmap for character mapping, name for naming, hhea and hmtx for metrics |
| Strongest at | web-font serving for audiences on older browsers such as IE9 and early Android | installing fonts on Windows, macOS, and Linux desktops |
| Weak spot | superseded by WOFF2's stronger compression | uncompressed, so files are several times larger than their WOFF2 equivalents on the web |
| Metadata | beyond the wrapped font's own name table, the extended metadata block stores vendor, credits, description, and license information as XML | the name table stores family and style names, version, copyright, trademark, designer, and license URL, while OS/2 table bits declare embedding and installation permissions |
Drop one or more .woff files onto the converter above, or browse for them. They load into browser memory only — nothing is uploaded, so there is no size-based pricing and no server queue.
Select .ttf in the output menu next to each file. The menu only offers targets this engine can genuinely produce, so if TTF is selectable, the route is real and validated.
Press Convert. The font tables are parsed and rewritten locally with fonteditor-core; glyph outlines, hinting, and kerning survive the trip.
Each result is signature-checked before the download unlocks, so a failed encode can never masquerade as a valid TTF file. Outputs keep the original filename with the .ttf extension.
Since woff is container-oriented and ttf is container-oriented, the conversion preserves the source content exactly as stored; no additional compression pass is applied beyond what .ttf itself requires.
Yes — the .woff file is processed inside your browser tab and never uploaded. The font tables are parsed and rewritten locally with fonteditor-core; glyph outlines, hinting, and kerning survive the trip. Close the tab and the file is gone from memory.
Every operating system — Windows, macOS, Linux, iOS, Android — installs and renders .ttf natively, and all browsers accept it as a web font. On the web it works but wastes bandwidth, which is why the standard split is serving WOFF2 online and keeping TTF for desktop installation.
It depends on the content: an sfnt container of tagged binary tables: glyf for outlines, cmap for character mapping, name for naming, hhea and hmtx for metrics. Convert one representative file first and compare before batch-processing a large set.
In .woff, beyond the wrapped font's own name table, the extended metadata block stores vendor, credits, description, and license information as XML. Re-encoding through the browser pipeline does not carry embedded metadata into the output, which doubles as a privacy scrub — check the exported file if you specifically need tags preserved.
Yes — the reverse route exists as a separate tool. Bear in mind that round-tripping .woff → .ttf → .woff is not a perfect undo when any lossy step is involved; keep your original if fidelity matters.