Your site, 60% lighter.
Your servers, your rules.
Automatic image, CSS, and JS optimization at the reverse-proxy level. No code changes, no third-party proxy, no CDN dependency. Built by a mod_pagespeed maintainer, rebuilt from scratch in C++23.
ModPageSpeed 2.0 is developed by We-Amp B.V. and is not affiliated with or endorsed by Google. mod_pagespeed is an open-source project originally developed at Google.
Two products. Both maintained. Pick the one that fits.
ModPageSpeed 2.0 is a ground-up rewrite for new deployments. mod_pagespeed 1.1 is a drop-in upgrade for existing installations. Both are actively maintained with security patches and new features.
mod_pagespeed 1.1
Drop-in upgrade from open-source mod_pagespeed
- ✓ Same configuration directives as open-source
- ✓ Cyclone Cache (mmap, lock-free)
- ✓ Security patches and new features
ModPageSpeed 2.0
Ground-up C++23 rewrite
- ✓ Async out-of-process worker
- ✓ Zero-copy mmap serving
- ✓ Critical CSS extraction
- ✓ ML quality + SSIMULACRA2
- ✓ Web console + Prometheus
Install. Configure. Verify.
Both products follow the same three-step pattern: add optimization to your server, set the options you want, and check the response headers.
1
Install
Docker Compose puts the nginx reverse proxy and optimization worker in front of any HTTP origin. Also available as ASP.NET Core middleware.
A native module for your existing web server.
apt-get install for
Apache on Debian/Ubuntu. Pre-built binary for nginx. MSI installer for IIS.
2
Tell it what to optimize
Sensible defaults out of the box. Image transcoding, CSS/JS minification, and critical CSS extraction are all on by default. Tune what you need, leave the rest.
Same configuration directives as open-source mod_pagespeed. Your existing
pagespeed.conf
works unchanged. Enable filters, set the cache path, done.
3
Check the response headers
curl -I your-site | grep X-PageSpeed.
MISS on first request, HIT after the worker optimizes. Zero-copy cache serving from that point on.
curl -I your-site | grep X-Mod-Pagespeed.
The version string confirms the module is active. Optimization happens in-process on every request.
Two architectures. Same optimization libraries.
ModPageSpeed 2.0 optimizes outside the request path via an async worker. mod_pagespeed 1.1 optimizes in-process inside your web server. Both use the same proven PSOL optimization core.
Request
ModPageSpeed
Intercept + cache lookup
HIT
mmap zero-copy serve
MISS
Serve from origin
Worker
Async optimize + write variant
Optimization happens outside the request path. Cache misses are served immediately while the optimizer works in the background. Deploys as a Docker reverse proxy or as ASP.NET Core middleware.
Request
Web Server
nginx, Apache, or IIS
mod_pagespeed
In-process optimize
Cyclone Cache
mmap, lock-free
Response
The module intercepts responses inside your web server. No sidecar, no external process. Optimization happens inline with Cyclone Cache for fast subsequent serves.
Try it in 60 seconds
$ dotnet add package WeAmp.PageSpeed.AspNetCore --prerelease
// Program.cs — add two lines:
builder.Services.AddPageSpeed(builder.Configuration);
app.UsePageSpeed();
$ dotnet run
$ curl -I http://localhost:5000/ | grep X-PageSpeed
X-PageSpeed: WeAmp.PageSpeed/0.1.0-preview.1
Get started — pick your platform
$ sudo cp ngx_pagespeed.so /usr/lib/nginx/modules/
# Add to nginx.conf: pagespeed on;
$ sudo nginx -t && sudo systemctl reload nginx
$ curl -I http://localhost/ | grep X-Mod-Pagespeed
X-Mod-Pagespeed: 1.1.0.0
Built on the libraries mod_pagespeed proved at scale. New architecture.
One decode pass, up to 37 variants out
Automatic WebP and AVIF transcoding with viewport-aware resizing. ML-predicted quality curves and SSIMULACRA2 verification ensure visual fidelity. Eligible images are auto-vectorized to SVG. Content-aware compression adapts to photos, screenshots, and illustrations differently.
Render-blocking CSS eliminated
Heuristic-based critical CSS extraction and injection. CSS/JS minification. Early Hints (103) for preloading. No headless browser required. Optional browser pipeline for Lighthouse validation, waterfall capture, and visual comparison.
Sub-millisecond cache hits
Cyclone cache serves optimized content via mmap. No copies, no allocations, no middleware. A hash lookup and a pointer assignment.
No data leaves your infrastructure
Runs on your servers. No third-party proxy, no CDN dependency, no external service that can go down. GDPR-compliant by architecture.
Conservative, safe-by-construction
JS minification strips whitespace and comments only. No variable renaming, no AST transforms. If optimization fails, the original is always served.
Up to 194 cache variants per URL
A 32-bit capability bitmask encodes format, viewport, density, Save-Data, and transfer encoding. Up to 37 image variants, plus pre-compressed gzip and brotli alternates for text resources. Every visitor gets the optimal variant.
Proven at scale
modpagespeed.com runs on ModPageSpeed 2.0.
This website is optimized by the same nginx interceptor and worker we ship to customers. Check the response headers.
Built on the same optimization libraries trusted across millions of sites running mod_pagespeed 1.x.
Source-available — audit every line running on your servers.
Skeptical? Good.
Questions a senior engineer would ask before putting this in front of production traffic.
- mod_pagespeed is free. Why should I pay?
- The original mod_pagespeed and ngx_pagespeed are no longer actively developed. ModPageSpeed 2.0 builds on their proven optimization libraries with a new architecture designed for today's infrastructure.
-
mod_pagespeed 1.x mod_pagespeed 1.1 ModPageSpeed 2.0 Maintenance No longer actively developed Actively maintained Actively maintained AVIF support No No Yes Container/K8s Predates container era Bazel-built binaries Docker + Helm chart Web servers Apache native (nginx via port) Apache, nginx, IIS, Envoy Any HTTP origin (nginx proxy) + ASP.NET Core (NuGet, Preview) Critical CSS No No Heuristic-based extraction Cache In-process file cache Cyclone (mmap, in-process) Cyclone (mmap, zero-copy) Variant-aware cache No No 32-bit capability mask Price Free (unsupported) TBD TBD - Does it add latency?
- No. On cache hit, serving is sub-millisecond: a hash lookup and an mmap pointer. On cache miss, the original content gets served while the worker optimizes in the background. Your users won't wait for perfection — neither should your infrastructure.
- Can it break my site?
- Conservative, safe-by-construction transforms. JS minification strips whitespace and comments only. CSS minification removes redundant syntax. Image transcoding preserves visual quality. If optimization fails, the original content is always served.
- Why not just use Cloudflare?
- CDN-based optimization routes your traffic through a third-party proxy. ModPageSpeed 2.0 runs on your servers. No data leaves your infrastructure, no third-party dependency, full GDPR compliance by architecture.
How it compares
CDN-based optimization and ModPageSpeed solve the same problem differently.
| ModPageSpeed 2.0 | CDN-based optimization | |
|---|---|---|
| Runs on | Your servers | Third-party proxy |
| Pricing | Flat rate per server (TBD) | Usage-based (scales with traffic) |
| Data sovereignty | GDPR-compliant by architecture | Requires DPA + configuration |
| Critical CSS | Heuristic extraction + injection | Rarely available |
| Image quality | ML-predicted + SSIMULACRA2 verified | Fixed quality settings |
| Vendor lock-in | Source-available (BSL, Apache 2.0 after 3 years) | Proprietary URLs and configuration |
| Availability risk | Runs locally, no external dependency | Third-party outage affects your site |
Pricing to be announced
14-day free trial. Same features, same performance. No credit card required.