Check Engine / Checks / Reference

Are your HTML responses compressed and cacheable?

It checks response headers for missing compression and caching settings.

What Check Engine measures

A successful page with more than 20000 HTML bytes and no content-encoding header can enter the compression finding. Any nonempty separate compression result suppresses that finding. This accounts for servers that use compression only when another encoding is requested. Pages missing cache-control, etag and last-modified are reported when they exceed a 0.5 share of successful pages. These header tests check presence. For example, a response of exactly 20000 HTML bytes stays outside the compression size test.

The check reads response headers, HTML size and the separate compression test. It cannot estimate savings from those fields alone. Review the response your server sends for each requested encoding.

How to read the result

Missing compression is high severity. Absent cache headers across the larger share produce low severity. A present cache header does not establish that its policy is useful, and a separate encoding probe can change what an apparently uncompressed response means.

Why it matters

Compression and caching answer different delivery questions. The probe guard matters because a server can support an encoding that the initial request did not obtain, making a direct absence claim too broad.

How to fix it

Inspect the response and the requested encoding. Enable suitable HTML compression where needed. Set caching rules for the content's update needs. Keep private or changing responses safe when editing shared rules. Request the same URL again and review the new headers.

How to fix compression and caching headers

What we found in field audits

Problems in Speed & Core Web Vitals were found on 13 of the 14 sites we audited. These are area totals. Read the field-audit method.

Method note

backend/seo_engine/checks/performance.py, compression, revision 0bb8e8d3.

Common questions

How large must HTML be for the missing-compression finding?

The successful response must exceed 20000 HTML bytes. Missing encoding alone is not enough if a separate compression result exists.

Can a separate encoding probe prevent a false missing-compression claim?

Yes. Any nonempty separate compression result prevents that finding. The server may compress only for a different requested encoding.

Is absent compression as minor as missing cache headers?

No. Missing compression is high severity. Widespread absent cache headers receive low severity.