Skip to content

Font Subsetter

Shrink a font to the characters you actually use. Upload a TTF, OTF, WOFF or WOFF2 file, type the characters to keep or list Unicode ranges such as U+0000-00FF, and download a smaller font that holds only those glyphs, their components and the notdef glyph. Web developers use it to cut font downloads, and designers use it to ship a headline or logo font. Outlines, hinting and metrics stay intact.

Choose files or drag and drop them into the upload field. Maximum file size: 5 MB.

Reset

Frequently asked questions

What does the Font Subsetter keep in the new font?

It keeps the glyphs of the characters you request that exist in the font, every component glyph those glyphs are built from, and glyph 0, the notdef glyph that shows missing characters. The outlines, TrueType hinting programs, advance widths, the name table and the OS/2 table are copied, and a new character map is written for the kept characters only.

How do I enter the characters to keep?

Type or paste them into the characters box, for example a headline, an alphabet or a list of symbols. Every Unicode character counts once, so repeated letters cost nothing, and a space is kept when you include one. The box accepts up to 20,000 characters.

How do I write Unicode ranges?

Use forms such as U+0041 for one code point, U+0020-007E for a range, or plain hexadecimal like 0041-005A, separated by commas, spaces or semicolons. Ranges go up to U+10FFFF and the field accepts up to 5,000 characters. You can combine ranges with the characters box, and the tool keeps the union of both.

Which font files can I upload?

TTF and OTF files with TrueType or CFF outlines, and WOFF and WOFF2 web fonts, up to 10 MiB each and 30 MiB once decompressed. Font collections (TTC) and CFF2 variable fonts are not supported. You can upload several fonts at once and each one is subset with the same settings.

Which output formats can I choose?

Same as input returns the container you uploaded. TTF or OTF writes an uncompressed font, as TTF for TrueType outlines and as OTF for CFF outlines. WOFF and WOFF2 compress the result for the web, and WOFF2 is usually the smallest.

Are kerning, ligatures and other OpenType features preserved?

No. The GSUB, GPOS, GDEF and kern tables refer to glyph IDs that change during subsetting, so they are removed rather than left pointing at the wrong glyphs. Text set in the subset uses each glyph's default advance width, without kerning pairs or ligature substitution. If you need features in a reduced font, keep those glyphs in a feature-aware tool or ship the full font.

What happens when I subset a variable font?

The result is a static font at the default instance, the position the font designer chose as its starting point. Variation tables such as fvar and gvar are not copied, so the axes are gone. Use Font Info to see which default values a variable font has before you subset it.

Why was my font refused?

Some fonts set the no-subsetting flag in the fsType field of their OS/2 table, and the tool respects that license restriction. Fonts that cannot be parsed, collections and CFF2 fonts are refused with a message as well. Font Info shows the embedding permissions of a font before you try.

What if none of my characters are in the font?

The tool stops with a message instead of returning an empty font. Characters the font does not cover are skipped silently when at least one requested character exists. Font Glyph Viewer lists every character and range a font maps, so you can check coverage first.

Does the subset keep glyph names, and is my font stored?

Glyph names are dropped, because the subset writes a version 3 post table as most web font tools do, which keeps the file small. The font is processed in memory for this request only and is discarded once the result is returned. Nothing about the font or its characters is saved.

About OneClick Pro

OneClick Pro is a free collection of more than 150 web tools for everyday work: converting images and units, formatting and validating code, checking domains and SEO, and working with text, dates and numbers. Every tool runs without registration or subscription, and what you enter is only used to calculate your result and is never stored. Use it as a quick toolbox for one-off tasks, or bookmark the tools you rely on every day.