WoluTools

Web fonts · embedding permission check

Check a font's embedding permission before you subset it

Add one TTF or OTF file. The report names the embedding permission the file declares, lists its tables and records a SHA-256 hash. The font is only read, never changed.

or drop it here

TTF or OTF · one file per job · free jobs take files up to 10 MB
Free account needed for 3 free checks a day

Open the check pageWhat the report contains

The check reads the file and changes nothing. Subsetting and the WOFF2 conversion come afterwards in your own build step; the four steps are below.

Free: 3 checks a day. Failed jobs are not counted. Pro raises the limit to up to 200 jobs a day for €12.99/month or €89.99/year. Compare plans

What you get

One download with three files

  • font-inventory.csvone row for your font
  • findings.csvanything that needs a manual look
  • manifest.jsonwhich file was read

Columns in font-inventory.csv

File
The name of the uploaded font
Container
TrueType, OpenType/CFF, WOFF or WOFF2
Tables
Every table tag in the font's table directory
Embedding permission
Installable, Restricted license, Preview and print, or Editable embedding
SHA-256
A hash of the file, so the report matches one exact font

Any permission other than installable is also written to findings.csv. WOFF and WOFF2 files are not unpacked; they get a row marked for manual review instead.

BringOne TTF or OTF file per job
GetEmbedding permission, table list, SHA-256 hash
ResultDownload kept for 24 hours

After the check: subset and serve as WOFF2

This check is the first step. Subsetting and conversion happen in your own font tooling or build step.

  1. Check the embedding flag

    Run the TTF or OTF through this tool. If the report says Restricted license embedding, stop and ask the foundry before you go further.

  2. Read your licence

    The flag is only what the foundry wrote into the file. Whether you may subset the font, convert it to WOFF2 and host it yourself is set by the licence you bought.

  3. Subset and convert

    Keep only the characters your pages use and save the result as WOFF2. Keep the original file and this report next to it.

  4. Serve it with @font-face

    Point the rule at the WOFF2 file and declare the characters it covers with unicode-range.

@font-face {
  font-family: "Your Font";
  src: url("/fonts/your-font-subset.woff2") format("woff2");
  font-display: swap;
  unicode-range: U+0000-00FF;
}

The flag is not your licence

The embedding permission comes from the OS/2 fsType field inside the font. The foundry sets it, and it can be missing or out of date. Your actual rights come from the licence you bought, and this tool gives no licence advice. If the report says the value is unavailable or needs review, check the licence terms or ask the foundry.

Only TTF and OTF files are read table by table. For a WOFF or WOFF2 file, check the TTF or OTF it was made from instead. For several fonts, run one job per file.

Questions before you run it

Can this tool subset a font or convert it to WOFF2?

No. It reads one TTF or OTF file and reports its embedding permission, its tables and a SHA-256 hash. Subsetting and WOFF2 conversion are done afterwards in your own font tooling or build step.

Which embedding permission bits does the report show?

It reads the OS/2 fsType field of each static SFNT font and names the permission that field declares, such as installable, restricted, or preview and print.

Does it subset or modify my font files?

No. Every source is read only and hashed. The package is font-inventory.csv, findings.csv and manifest.json, and nothing is written back into the font.

Why are WOFF and WOFF2 files flagged as review-required?

Compressed web font containers are not parsed as static SFNT table directories here. They appear in the findings marked for manual review rather than being reported with values that were only half read.

Does a permissive fsType bit mean I am allowed to use the font on my site?

No. fsType is a flag the foundry set inside the file, while your actual rights come from the licence you bought. This tool reports what the file declares and gives no licence advice.

How many fonts can I check in one job?

One font file per job. The job gives one inventory row with the tables, the embedding permission and a hash of the bytes that were read. For several fonts, run one job per file.