Subset Fonts Before Embedding in PDFs — Smaller Files, Same Quality
- Subsetting fonts before embedding them keeps PDF file sizes dramatically smaller
- InDesign, Word, and most PDF exporters embed the full font unless you subset first
- Use the Custom character set if the PDF uses a specific set of headings or display text
- Subset the font file on your computer before importing into your layout application
Table of Contents
When you embed a font in a PDF, most design applications embed the entire font file by default — including every glyph the font contains, regardless of which characters actually appear in the document. For a font with 800 glyphs used only for a handful of headings, that is a significant amount of embedded overhead. Subsetting the font to only the characters that appear in the document shrinks the embedded font data substantially, which shows up directly in the final PDF file size. Here is how to do it before the font goes into your layout application.
Why Embedded Fonts Make PDFs Larger Than Necessary
PDF spec requires embedded fonts to guarantee that the document renders correctly on any machine, even if the font is not installed. Applications like InDesign, Word, and Affinity Publisher embed the font's outline data so the renderer can draw each character without relying on a local font installation.
The problem is that many applications embed the full font file rather than just the subset used in the document. A decorative display font used for three chapter headings might contribute 200 KB of embedded outline data for 800 glyphs when only 30 glyphs are actually needed. Multiply that across several fonts in a long document and the bloat adds up.
How to Subset Before Importing into InDesign, Word, or Affinity
The most reliable approach is to subset the font file before it ever enters your layout application. Open the Font Subsetter and upload the TTF, OTF, or WOFF file. If your document is English-only body text, choose Basic Latin. If you are subsetting a display font used only for specific headings, choose Custom and type in exactly the characters that appear in those headings.
Download the subsetted font and install it on your system (or place it in the application's font folder). Then use this version in your layout — the application will embed only the glyphs that were in the subset file to begin with, even if it attempts to embed the full font.
Sell Custom Apparel — We Handle Printing & Free ShippingInDesign's Built-In Font Subsetting Threshold
InDesign has a built-in font subsetting option in its PDF export settings: "Subset fonts when percent of characters used is less than: 100%." The default is 100%, meaning InDesign subsets the font to only the used characters when less than 100% of the font's glyphs appear in the document — which is almost always. This is better than embedding full fonts, but it still starts from the full font.
By pre-subsetting the font file itself, you ensure the base character set is already restricted before InDesign applies its own subsetting pass. The result is a smaller embedded font even in edge cases where InDesign's threshold behavior is inconsistent.
Using a Custom Subset for Logo or Display Text in PDFs
The Custom character set option is particularly useful for decorative or display fonts used only for a company name, tagline, or chapter titles. If your PDF uses a script font for the word "Welcome" on a cover page, you only need the glyphs for W, e, l, c, o, m — six characters. Type those into the Custom field and the subset will contain only those glyphs.
This kind of precision subsetting can shrink a decorative font's embedded data from 150 KB to under 10 KB. Across a multi-page document with several decorative fonts, the savings in total PDF size are substantial.
Verifying Font Embedding After Export
Open the exported PDF in Acrobat Reader and go to File → Properties → Fonts. This panel lists every embedded font and indicates whether it is embedded as a full font or as a subset. Subsetted fonts show a plus sign before the font name (e.g., +MyFont-Regular) in Acrobat's font list. If your subset worked, you will see this indicator alongside a smaller file size for the exported PDF.
Also do a visual proof: render the PDF at high resolution and confirm that every character in your headings and body text renders correctly. Missing glyphs show as blank spaces or fallback characters, which are immediately obvious on a printed proof.
Subset Your Font Before Embedding It
Upload a TTF, OTF, or WOFF and download a subset matched to your document. Free, no account, no install required.
Open Font Subsetter FreeFrequently Asked Questions
Does PDF font subsetting affect print quality?
No. The glyph outlines retained in the subset are identical to those in the full font. Print quality, hinting, and rendering are unaffected for all characters included in the subset.
Can I subset OTF fonts used in professional print workflows?
Yes. OTF files work in the Font Subsetter the same way as TTF. The output OTF is structurally identical to the input for all retained glyphs.
What if my layout application rejects the subsetted font?
Some applications validate that a font file covers a minimum glyph set. If you encounter this, subset to Extended Latin instead of Basic Latin — it contains enough glyphs to pass most validation checks.

