desktop font · web font

TTF to WOFF2 TTF in. WOFF2 out.

WOFF2 is what every modern browser asks for — brotli-compressed, smaller payload, faster paint. The conversion is mechanical, but most online tools cap at 5MB or queue. Morph runs the equivalent of the reference font toolchain in your browser tab — TTF read, brotli compressed, WOFF2 emitted. The TTF stays where it was. The WOFF2 saves locally. Free for everything that runs on your device; AI is paid in credits.

01
READ

TTF table parsed

All OpenType tables — glyf, loca, cmap, name — read in-tab. No upload, no service.

Open the tool
Runs on your device · free · no account

What it actually does

02
BROTLI

WOFF2 compression

Brotli applied to glyf and loca per the WOFF2 spec. Output is typically 30-50% smaller than TTF.

03
WRITE

Browser-ready WOFF2

Drops directly into a CSS @font-face declaration. Works in every browser since 2016.

04
BATCH

Whole family at once

Drop all weights of a family. Each TTF becomes its own WOFF2. Free tier has no batch limit.

How it works

  1. Open morph.cool — browser only.
  2. Drop the .ttf — single file or whole family.
  3. Pick WOFF2 as the output. Brotli compression runs locally.
  4. The .woff2 downloads, ready for @font-face.
  5. The TTF stays where it was. Nothing uploaded.
0Upload
∞Batch limit
1-clickExport

Why people leave the upload-and-queue tools

Self-hosting fonts is the privacy-correct, performance-correct play in 2026 — no third-party font CDN, no font subscription, no per-pageview tracking. The conversion from TTF to WOFF2 is the gating step. Most online tools cap at 5MB or queue. Morph runs the converter via WebAssembly in your tab.

Frequently asked

Why WOFF2 specifically?

Brotli-compressed, 30-50% smaller than TTF, supported in every modern browser since 2016. The current right answer for self-hosted web fonts.

How is this different from the font converter sites or a CLI toolchain?

Online services upload your fonts (license-grey). The CLI toolchains require a Python install. Morph runs in your browser — no upload, no install.

Does it preserve the font's hinting?

Yes — all OpenType tables carry over. Hinting, kerning, OpenType features all preserved.

Subsetting (only-Latin, only-numerals)?

Sister tool. WOFF2 conversion preserves all glyphs by default.

Can I batch a whole font family?

Yes. Drop all weights and italics. Each becomes its own WOFF2. Free tier has no batch limit.

Is there a free tier?

Yes. Everything that runs on your device is free with no cap. AI and server work is paid in credits, about a cent each.

Convert TTF → WOFF2
Convert TTF → WOFF2
Nothing leaves your device · Free for what you make, credits for what we run