Font subsetter
Remove the glyphs you will never render. This subsetter is HarfBuzz's hb-subset compiled to WebAssembly and run locally in your browser, which matters because correct subsetting is not simply deleting glyphs: it has to close over GSUB so that ligature and alternate targets survive, rebuild cmap, retarget GPOS coverage tables, and repack layout subtables that overflow. A naive subsetter produces files that load and then shape incorrectly.
Drop the font you want to cut down.
Subsetting runs in this tab with HarfBuzz compiled to WebAssembly.
Files are read and processed in this browser tab. Nothing is uploaded — the page’s Content-Security-Policy blocks connections to any other origin.
Licence strings are kept deliberately
The copyright notice, trademark, licence description and licence URL are explicitly retained in every subset this tool produces, and the result is checked to confirm they survived. A subset that quietly strips the foundry's terms is not a file worth having.
Fonts that forbid subsetting
OS/2 fsType bit 8 means the vendor forbids subsetting. When it is set, this tool refuses by default and shows you what the font says. If you hold a licence that permits it, there is an explicit acknowledgement to proceed — but the refusal is the default, and the acknowledgement is yours to make, not ours.
Related
Glyph coverage
See exactly which characters a font covers, grouped by Unicode block. Paste text to find missing characters before they render as tofu, and export a CSS unicode-range.
OpenWeb-font pack
Turn a font into a deployable web-font pack in your browser: WOFF2 and WOFF files, a correct @font-face rule with unicode-range, a preload snippet and a manifest, all in one ZIP.
OpenLicensing
What OS/2 fsType embedding bits mean, why converting a font grants you nothing, and how to check whether you may subset or web-embed a font you own.
Open