Performance
PerformanceMedium

Text Compression

Checks that text assets (HTML, CSS, JS) are served with gzip or brotli.

What this check measures

We request each text asset and verify Content-Encoding. Uncompressed text is 3-10x larger than compressed.

Why it matters

Compression is the single cheapest performance win. Brotli cuts text sizes ~70%; gzip ~65%. Every modern host does it by default — when it's off, something is misconfigured.

search

How our audit detects it

GET each resource with Accept-Encoding: gzip, br. Check Content-Encoding header in response.

Typical findings

  • error_outlineCSS files served uncompressed from self-hosted CDN.
  • error_outlineHTML has Content-Encoding but /api responses do not.

How to fix

Enable compression at server/CDN/edge. On Vercel/Netlify this is default. Self-hosted: Nginx `gzip on;` or `brotli on;`.

Copy-paste fix prompt for your stack

Lovable · Cursor · Bolt · v0 · Replit · Windsurf · Claude Code · Base44

View the fix prompt →

Frequently asked questions

Brotli vs gzip for dynamic content?expand_more
Brotli at compression level 4-6 is fast enough for dynamic content. At level 11 it is CPU-heavy — use only for static assets.

Want this checked on your site?

Pantra runs the full audit (SEO, Security, GEO, Performance, Schema, Technical, Images) in 10 seconds and generates stack-specific fix prompts.

Scan my site

Related checks