WOFF vs EOT: Complete Format Comparison
Comprehensive comparison of WOFF and EOT web font formats covering the transition from proprietary IE-only fonts to open web standards and why EOT is obsolete
In Simple Terms
EOT is obsolete with 0% support (IE11 retired 2022). WOFF is the legacy web standard with 99%+ browser support across all platforms.WOFF succeeded as open standard. EOT failed due to IE-only proprietary lock-in. Never use EOT—remove all references from projects.Use WOFF2 (not WOFF) for modern sites. WOFF2 is 30% smaller than WOFF with 97%+ support. Keep WOFF only as fallback if needed.
In this article
WOFF (Web Open Font Format) and EOT (Embedded OpenType) represent two fundamentally different approaches to web font delivery, with WOFF being the open, universal standard that replaced EOT's proprietary, single-browser technology. WOFF, created collaboratively by Mozilla, Opera, and Microsoft in 2009 and standardized by W3C in 2012, uses zlib compression to reduce OpenType/TrueType fonts by 40-50% and works across all modern browsers. EOT, created exclusively by Microsoft in 1997 for Internet Explorer 4.0, uses MicroType Express compression with basic DRM features, achieving similar file sizes but only working in Internet Explorer 6-11—never adopted by Chrome, Firefox, Safari, or any other browser.
The critical distinction is that WOFF succeeded and EOT failed completely in becoming the web font standard. WOFF achieved universal browser adoption by 2013 with 99%+ support across all platforms, while EOT remained locked to Internet Explorer throughout its existence. When IE11 was retired in June 2022, EOT support dropped to 0% of active browsers, making it completely obsolete. WOFF provides better features (metadata support, licensing info), better compatibility (works everywhere), and equivalent compression (both achieve ~40-50% reduction) without EOT's DRM restrictions that actually limited adoption rather than enabling it.
This comprehensive guide compares WOFF and EOT to clarify why WOFF became the standard while EOT became obsolete. You'll learn the technical specifications of both formats, how Microsoft's proprietary approach failed versus the open standard, browser compatibility showing EOT's single-browser limitation versus WOFF's universality, historical context of the format war and WOFF's victory, migration strategies for removing EOT from legacy code, and why WOFF (and its successor WOFF2) should be your only web font formats. Whether maintaining legacy sites or understanding web font history, this guide provides essential knowledge about these formats' contrasting fates.
Format Overview
WOFF (Web Open Font Format)
History and Purpose:
- • Created by Mozilla, Opera, Microsoft (2009)
- • W3C Recommendation (2012)
- • Designed as universal web font standard
- • Open specification, not proprietary
- • Industry standard since 2013
Technical Characteristics:
- • zlib compression (40-50% reduction)
- • Wraps OpenType/TrueType data
- • Metadata block for licensing/vendor info
- • No DRM restrictions
- • Extension: .woff
Current Status (2025):
- • Universal browser support (99%+)
- • Active standard, widely deployed
- • File size: ~90 KB (typical Latin font)
- • Use case: Web font fallback for WOFF2
EOT (Embedded OpenType)
History and Purpose:
- • Created by Microsoft (1997) for IE4
- • Proprietary format, never open standard
- • Designed with DRM for font foundries
- • Only Internet Explorer supported it
- • Completely obsolete (2025)
Technical Characteristics:
- • MicroType Express compression
- • URL binding for domain restrictions
- • Root string for basic DRM
- • Similar size reduction to WOFF (~40-50%)
- • Extension: .eot
Current Status (2025):
- • Zero browser support (IE11 retired June 2022)
- • Obsolete, abandoned format
- • DO NOT use in any projects
- • Remove from all legacy code
Open Standard vs Proprietary Lock-in
The fundamental difference between WOFF and EOT:
- WOFF: Open W3C standard, collaborative development, universal adoption
- EOT: Microsoft proprietary, single-vendor control, zero adoption outside IE
- Result: WOFF succeeded, EOT failed and was abandoned
- Irony: Even Microsoft adopted WOFF and dropped EOT in modern Edge
Technical Differences
Side-by-Side Comparison
| Feature | WOFF | EOT |
|---|---|---|
| Developer | Mozilla + Opera + Microsoft | Microsoft only |
| Year Created | 2009 | 1997 |
| Standard | W3C open standard | Microsoft proprietary |
| Compression | zlib (open) | MicroType Express (proprietary) |
| File Size Reduction | 40-50% | 40-50% (similar) |
| DRM/Protection | None (metadata only) | URL binding, root string |
| Browser Support | All modern browsers | IE only (retired) |
| Metadata | Full support | Limited |
| 2025 Status | Active standard | Obsolete |
Compression Technology
WOFF (zlib):
- • Well-documented, widely-used algorithm
- • Same as gzip compression
- • Fast decompression
- • Achieves 40-50% size reduction
- • Open specification
EOT (MicroType Express):
- • Proprietary Microsoft algorithm
- • Not publicly documented
- • Similar compression ratio to zlib
- • Achieves 40-50% size reduction
- • Closed specification
Result: Similar file sizes, but WOFF's open approach enabled universal adoption.
File Size Comparison
Example: Roboto Regular font (Latin character set)
| Format | File Size | vs Original | Status |
|---|---|---|---|
| OTF/TTF | 168 KB | Baseline | Active |
| WOFF | 90 KB | 46% smaller | Active |
| EOT | 80 KB | 52% smaller | Obsolete |
| WOFF2 | 53 KB | 68% smaller | Best |
Key finding: EOT slightly smaller than WOFF, but WOFF2 beats both significantly.
Why EOT's DRM Failed
EOT included DRM features that actually hindered adoption:
- URL binding: Fonts locked to specific domains, breaking development/staging
- Complexity: Additional conversion step deterred developers
- Ineffective protection: DRM was easily bypassed anyway
- Industry rejection: Other browsers refused DRM approach
- Foundry acceptance: Eventually accepted WOFF without DRM
Browser Compatibility
Browser Support Timeline
| Browser | WOFF | EOT | Notes |
|---|---|---|---|
| Chrome | ✓ | ✗ | Never supported EOT |
| Firefox | ✓ | ✗ | Never supported EOT |
| Safari | ✓ | ✗ | Never supported EOT |
| Edge (Modern) | ✓ | ✗ | Chromium-based, no EOT |
| Opera | ✓ | ✗ | Never supported EOT |
| IE 9-11 | ✓ | ✓ | Retired June 2022 |
| IE 6-8 | ✗ | ✓ | EOT only |
Current Reality (2025): WOFF: 99%+ support. EOT: 0% support.
Why WOFF Won
- Universal adoption: All browsers supported WOFF by 2013
- Open standard: W3C specification enabled trust and collaboration
- No DRM hassles: Simpler workflow without domain restrictions
- Industry backing: Mozilla, Opera, Microsoft, and foundries agreed
- Better metadata: Richer licensing and vendor information support
- Future-proof: Led to WOFF2 with superior compression
Legacy @font-face Code
Historical example showing outdated dual-format approach (DO NOT USE):
/* OUTDATED - DO NOT USE THIS CODE */
@font-face {
font-family: 'MyFont';
src: url('font.eot'); /* IE 6-8 */
src: url('font.eot?#iefix') format('embedded-opentype'), /* IE 9-11 */
url('font.woff2') format('woff2'), /* Modern */
url('font.woff') format('woff'); /* Fallback */
}
/* MODERN APPROACH (2025) - USE THIS */
@font-face {
font-family: 'MyFont';
src: url('font.woff2') format('woff2'),
url('font.woff') format('woff');
font-display: swap;
}
/* EOT removed - zero browser support */Historical Context
Web Font Format Timeline
- 1997: Microsoft creates EOT for IE4, only browser to support it
- 1997-2009: EOT remains IE-exclusive despite being first web font format
- 2009: Mozilla, Opera, Microsoft collaborate on WOFF as open standard
- 2010-2012: All major browsers adopt WOFF (Chrome, Firefox, Safari, IE9+)
- 2012: WOFF becomes W3C Recommendation
- 2013: WOFF achieves 99%+ browser support, becomes de facto standard
- 2018: WOFF2 becomes W3C Recommendation, improves on WOFF
- 2022: IE11 retired, EOT support drops to 0%
Lessons from EOT's Failure
- Proprietary formats fail: Single-vendor control prevents universal adoption
- DRM backfires: Protection mechanisms that hurt UX drive away users
- Open standards win: Collaboration and transparency build trust
- First-mover not enough: EOT was first (1997) but WOFF won (2009)
- Industry consensus matters: All stakeholders must agree on standard
Migration from EOT to WOFF
Step-by-Step Migration Process
- Audit codebase: Search for .eot references in CSS and HTML
- Check analytics: Confirm zero IE11 traffic (retired June 2022)
- Obtain source fonts: Get original OTF/TTF files
- Convert to WOFF2: Use FontTools or online converter (primary)
- Convert to WOFF: Create fallback for very old browsers
- Update @font-face: Remove all EOT references
- Delete EOT files: Remove from server and repository
- Test thoroughly: Verify fonts in Chrome, Safari, Firefox
- Monitor: Confirm no errors or missing fonts
Modernization Example
Before (Legacy with EOT):
@font-face {
font-family: 'MyFont';
src: url('font.eot');
src: url('font.eot?#iefix') format('embedded-opentype'),
url('font.woff2') format('woff2'),
url('font.woff') format('woff'),
url('font.ttf') format('truetype');
}
/* Files: font.eot (80 KB) + others
Complexity: 4 formats, IE-specific hacks */After (Modern):
@font-face {
font-family: 'MyFont';
src: url('font.woff2') format('woff2'),
url('font.woff') format('woff');
font-display: swap;
}
/* Files: font.woff2 (53 KB) + font.woff (90 KB)
Result: Simpler, smaller, universal support */Migration Checklist
- ☐ Searched codebase for .eot references
- ☐ Confirmed no IE11 support requirement
- ☐ Obtained source OTF/TTF files
- ☐ Converted to WOFF2 (primary format)
- ☐ Converted to WOFF (fallback)
- ☐ Removed EOT lines from @font-face
- ☐ Deleted .eot files from server
- ☐ Added font-display: swap
- ☐ Tested in modern browsers
- ☐ Verified fonts load correctly
- ☐ Confirmed PageSpeed improvement
- ☐ Removed TTF references (if present)
Modern Recommendations
Use WOFF/WOFF2 For All Projects:
- • Primary format: WOFF2 (97%+ browsers, smallest files)
- • Fallback format: WOFF (99%+ browsers, legacy support)
- • Universal compatibility: Works on all platforms
- • Best performance: Fastest load times
- • Simple workflow: No DRM complications
Never Use EOT:
- • Zero browser support: IE11 retired, 0% coverage
- • Obsolete technology: Replaced by superior WOFF/WOFF2
- • Adds complexity: No benefit, only technical debt
- • Action required: Remove from all projects immediately
Modern Web Font Stack (2025)
/* Optimal modern implementation */
@font-face {
font-family: 'MyFont';
src: url('/fonts/font.woff2') format('woff2'),
url('/fonts/font.woff') format('woff');
font-weight: 400;
font-style: normal;
font-display: swap;
}
/* WOFF2: 97%+ browsers, 53 KB (best) */
/* WOFF: Fallback for old mobile, 90 KB */
/* No EOT: Obsolete, 0% support */
/* No TTF: Not optimized for web */
/* Result: 99%+ coverage, optimal performance */Summary: WOFF vs EOT
WOFF and EOT represent contrasting approaches to web fonts: WOFF as an open W3C standard with universal adoption, EOT as a proprietary Microsoft format that failed completely. Both achieve similar compression (~40-50% reduction), but WOFF succeeded because it was collaborative, open, and supported by all browsers by 2013. EOT remained locked to Internet Explorer throughout its existence, never adopted by Chrome, Firefox, or Safari. When IE11 retired in June 2022, EOT support dropped to 0%.
Use WOFF2 (primary) and WOFF (fallback) for all web font delivery—this covers 99%+ of users with optimal performance. Never use EOT; it's completely obsolete with zero browser support and adds unnecessary complexity. Remove all EOT references from legacy code immediately. The web font standard is WOFF/WOFF2, not EOT. WOFF won because open standards, universal support, and simplified workflows beat proprietary lock-in and ineffective DRM. Even Microsoft abandoned EOT in favor of WOFF in modern Edge.

Written & Verified by
Sarah Mitchell
Product Designer, Font Specialist
WOFF vs EOT FAQs
Common questions answered about this font format comparison
