HTTP Compression Checker
Pricing
Pay per usage
HTTP Compression Checker
Checks whether a URL serves compressed responses (br/gzip/deflate) and validates related headers such as Vary: Accept-Encoding for cache correctness. Outputs per-URL results plus SUMMARY and REPORT.
Pricing
Pay per usage
Rating
0.0
(0)
Developer

Bikram Adhikari
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
13 hours ago
Last modified
Categories
Share
HTTP Compression Checker
Audit one or more URLs to see whether they serve compressed HTTP responses (Brotli / Gzip / Deflate) and whether they include Vary: Accept-Encoding when serving compressed variants.
This is useful for:
- diagnosing missing compression on HTML/CSS/JS/JSON
- verifying Brotli is enabled on CDNs
- catching cache misconfiguration when
Vary: Accept-Encodingis missing
What the actor checks
Content-Encoding(best encoding:br>gzip>deflate>identity)Content-Type(to determine whether the response is likely compressible)Varyincludesaccept-encodingwhen compression is used
Input
- Start URLs (
startUrls) – required - Max URLs (
maxUrls) - Request timeout (
timeoutSecs) - Follow redirects (
followRedirects) and Max redirects (maxRedirects) - Range header (
rangeHeader) – defaults tobytes=0-2047to reduce download size - Min Content-Length for warning (
minContentLengthForWarning) – avoids warning on tiny responses - Check Vary: Accept-Encoding (
checkVaryAcceptEncoding) - User-Agent (
userAgent) - Proxy configuration (
proxyConfiguration)
Output
- Dataset: one item per URL with fields like
usedEncoding,compressionScore,issues, and a smallheadersSample. - Key-value store:
SUMMARY– aggregate statsREPORT– summary + top issues
Notes
- Some servers may not compress very small responses even if compression is enabled.
- A
Rangerequest may change server behavior on some origins/CDNs.
Run locally
npm installnpm start
Deploy
$apify push --no-prompt
Example input
{"startUrls": [{ "url": "https://example.com" }],"maxUrls": 10,"timeoutSecs": 30,"followRedirects": true,"maxRedirects": 10,"rangeHeader": "bytes=0-2047","minContentLengthForWarning": 1024,"checkVaryAcceptEncoding": true,"maxConcurrency": 10,"proxyConfiguration": { "useApifyProxy": false }}
Quick start
Store page: https://apify.com/scrappy_garden/http-compression-checker
Paste this into Input and click Run:
{"startUrls": [{"url": "https://example.com/"}],"proxyConfiguration": {"useApifyProxy": false}}
Outputs (what you get)
- Dataset: Dataset items typically include fields like:
startUrl,finalUrl,statusCode,redirected,usedEncoding,compressionScore,warningCount,errorCount,issues,checkedAt. - Key-value store:
REPORT,SUMMARY
Tips (trust + predictable results)
- Start with 1–3 URLs to validate behavior, then scale up.
- If a target blocks requests, enable Proxy and/or slow down concurrency in Input.
- Use the
SUMMARY/REPORTkeys (when present) for automation pipelines and monitoring.
Related actors
- broken-link-checker (https://apify.com/scrappy_garden/broken-link-checker)
- canonical-url-checker (https://apify.com/scrappy_garden/canonical-url-checker)
- meta-tag-analyzer (https://apify.com/scrappy_garden/meta-tag-analyzer)
- security-headers-checker (https://apify.com/scrappy_garden/security-headers-checker)
Search keywords
http compression checker, http compression checker - verify brotli/gzip and vary: accept-encoding, website audit, seo