All Posts
self-hosted fontsWOFF2web fontsfont licensing

Self-Hosted Web Fonts: Legal and Technical Guide

Hosting .woff2 files on your own server gives you control — but not automatic licensing rights. Learn the legal and technical requirements.

What Are Self-Hosted Web Fonts?

Instead of loading fonts from Google Fonts or Adobe's CDN, you upload .woff2 (or .woff) files to your server and reference them with @font-face rules in your CSS.

Benefits:

  • Performance control — serve from your CDN with your cache headers
  • Privacy — no third-party font requests (relevant for GDPR discussions)
  • Reliability — no dependency on external service uptime

But self-hosting does not bypass licensing. You still need explicit web embedding rights.

Licensing Requirements

Before uploading any font file to your server, confirm your EULA allows:

PermissionQuestion to ask
Web embeddingDoes the license permit @font-face serving to visitors?
Self-hostingOr does it require using the vendor's CDN only? (Adobe Fonts = CDN only)
File modificationCan you convert to WOFF2 or subset glyphs?
Pageview limitsAre you within traffic caps?
Domain scopeDoes the license cover all your domains and subdomains?

Desktop license + self-hosted upload = common violation.

Technical Setup (WOFF2)

Modern browsers expect WOFF2. A typical @font-face block:

@font-face {
  font-family: "MyBrand";
  src: url("/fonts/mybrand-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

Best practices:

  • Use font-display: swap for faster text rendering
  • Preload critical fonts: <link rel="preload" as="font" ...>
  • Subset files to required character sets (when license permits)
  • Set long cache headers on font assets

How FontScanner Detects Self-Hosted Fonts

During a crawl, FontScanner:

  1. Parses @font-face rules in CSS
  2. Downloads font file URLs from your domain
  3. Reads font metadata (name tables) when available
  4. Matches against known commercial font database
  5. Reports the exact URL and pages where each file appears

This catches fonts that never appear in visible font-family CSS on the first paint.

Common Self-Hosting Mistakes

  • Copying fonts from a designer's laptop — their desktop license does not cover your server
  • Downloading "free" fonts from random sites — many are pirated commercial files
  • Keeping fonts after subscription ends — Adobe Fonts files must not be self-hosted
  • Serving all 12 weights when you licensed 2
  • Missing license file — keep EULA PDFs alongside font assets in your repo

Self-Hosted vs CDN: Compliance Comparison

AspectSelf-hostedGoogle/Adobe CDN
License neededYes — web + self-hostYes — terms of service
Adobe Fonts❌ Not permitted✅ Required method
Google Fonts✅ OFL fonts OK✅ Default method
Commercial fontsBuy web license with self-host rightsSome vendors CDN-only

Conclusion

Self-hosting is a technical choice, not a licensing shortcut. Verify web embedding rights, serve WOFF2 efficiently, and scan your site to ensure every file on your server is accounted for.

Find all self-hosted fonts on your site →

Check the fonts on your site

Scan your website with FontScanner and instantly detect licensed fonts.

Start Free Scan