mod_pagespeed alternative
mod_pagespeed, Google's open-source web optimization module, is no longer actively developed. If you're
replacing it, two maintained successors carry the work forward: ModPageSpeed 2.0 and
mod_pagespeed 1.15, both from We-Amp.
Production use requires a commercial license — but the software never locks you out.
The repository still exists, read-only, at apache/incubator-pagespeed-mod. The 1.13.35.2 binaries still install and serve pages. They also haven't taken a security patch in years, won't build against current Apache, emit no Core Web Vitals telemetry, and have no AVIF.
A short history
| Year | Event |
|---|---|
| 2010 | Google releases mod_pagespeed for Apache |
| 2013 | Nginx port released as ngx_pagespeed |
| 2017 | Google donates the project to the Apache Software Foundation; active Google development ends |
| 2018 | Google's last stable release, 1.13.35.2 |
| 2020 | Final open-source release, 1.14.36.1 (Apache incubator) |
| 2023 | Apache Incubator podling retires |
| 2025 | GitHub repositories marked read-only |
| 2026 | Active continuations: ModPageSpeed 2.0 (out-of-process worker) and mod_pagespeed 1.15 (native in-process module) |
We-Amp B.V. — founded by a mod_pagespeed maintainer — develops both continuations. The open-source history on we-amp.com has the longer version of how the project changed hands, and is mod_pagespeed still maintained? covers what development resumed and what shipped since.
Why people are looking for an alternative
mod_pagespeed was excellent engineering for its era. The archived 1.13.35.2 binaries still run, but they no longer keep pace with a modern stack:
- No security patches in years. Unpatched dependencies (libpng, libwebp, libjpeg, ICU) carry known CVEs (e.g. libwebp CVE-2023-4863).
- No build against current Apache. The build needs the original toolchain and won't compile against current Apache releases without patching.
- No Core Web Vitals tooling. LCP and INP signals are missing from the filter set.
- No modern image formats. AVIF support never landed.
- Dated build toolchain. Bazel 0.x, glibc constraints, and pinned Python 2 in the build scripts.
ModPageSpeed 2.0 — container-native reverse proxy
ModPageSpeed 2.0 runs as a Docker reverse proxy in front of nginx (or any HTTP origin), with
optimization work out of the request path. A separate worker process reads originals from a
shared cache, generates up to 37 variants per asset (WebP, AVIF, viewport sizes, pixel
densities, save-data, plus SVG for eligible images), and writes them back. The reverse proxy
serves cache hits via zero-copy mmap. It is a ground-up rewrite of the
PageSpeed module.
The optimization libraries underneath are the same ones mod_pagespeed proved at scale; the architecture around them is new.
# ModPageSpeed 2.0 - ASP.NET Core middleware
dotnet add package WeAmp.PageSpeed.AspNetCore mod_pagespeed 1.15 — native modules for Apache, nginx, and IIS
mod_pagespeed 1.15 loads into your server as a native in-process module: no separate worker,
no sidecar, no reverse-proxy hop, no container. It carries the same configuration syntax,
the same filters, and the same admin console as open-source mod_pagespeed, including the
classic
combine_css, combine_javascript, image spriting, in-place resource
optimization, and domain-mapping filters, with granular per-filter control. Image
optimization covers WebP alongside JPEG, PNG, and GIF. New: CVE patches, current toolchain,
Cyclone Cache, and GA ports on Apache, nginx, and IIS (Envoy is experimental).
It is the only product native inside Apache and IIS, and it is bit-compatible with open-source mod_pagespeed — swap the binary, keep the config.
# nginx
load_module modules/ngx_pagespeed.so;
pagespeed on;
pagespeed FileCachePath /var/cache/ngx_pagespeed; # Apache
LoadModule pagespeed_module modules/mod_pagespeed.so
ModPagespeed on
ModPagespeedFileCachePath /var/cache/mod_pagespeed mod_pagespeed 1.15 · Apache PageSpeed module · Package repositories (packages.modpagespeed.com)
2.0 or 1.15 — which one
| Use case | Choose |
|---|---|
| New nginx deployment (reverse-proxy / container-native) | ModPageSpeed 2.0 |
| New deployment, want a native in-process module | mod_pagespeed 1.15 |
Existing mod_pagespeed 1.13.35.2 deployment, want a drop-in security upgrade | mod_pagespeed 1.15 |
| Apache, IIS, or Envoy server | mod_pagespeed 1.15 |
| ASP.NET Core application | ModPageSpeed 2.0 (WeAmp.PageSpeed.AspNetCore NuGet middleware) |
| Want WebP + AVIF + critical CSS + variant-aware caching out of the box | ModPageSpeed 2.0 |
Migration
The 1.15 configuration syntax is the same as 1.13.35.2 — most installs are a package swap. For 2.0, configuration is intentionally minimal and migration is a re-architecture rather than a drop-in. See getting started for the 2.0 install path, and the deeper comparison for choosing between the two.
Frequently asked questions
Is mod_pagespeed deprecated?
Yes. Google handed mod_pagespeed to the Apache Software Foundation in 2017. The Apache Incubator podling retired in 2023, and the repositories were marked read-only on GitHub in 2025. The 1.13.35.2 binaries still install but have not received security patches in years.
What happened to mod_pagespeed?
Google donated the project to the Apache Software Foundation in 2017, and active Google development ended there. The last open-source release, 1.14.36.1 (2020), was prepared under the Apache incubator by external maintainers including We-Amp. The repository at apache/incubator-pagespeed-mod is now read-only.
What replaces mod_pagespeed?
Two actively-maintained continuations from We-Amp. mod_pagespeed 1.15 is the native in-process module for Apache, nginx, and IIS (Envoy experimental), with the same configuration syntax, the classic filter set, and the built-in admin console. ModPageSpeed 2.0 is the out-of-process worker behind an nginx reverse proxy, with AVIF, variant-aware caching, and zero-copy serving.
Can I still use mod_pagespeed 1.13.35.2?
Yes, and it still installs. It also hasn't taken a security patch in years, won't build against current Apache, has no AVIF, and ships a build toolchain that wants Bazel 0.x and Python 2. If your threat model accepts unpatched dependencies, you can keep running it.
Should I choose ModPageSpeed 2.0 or mod_pagespeed 1.15?
Pick 1.15 for a native in-process module on Apache, nginx, or IIS with the familiar config surface, the classic filter set, and the built-in admin console. Pick 2.0 for an out-of-process worker behind an nginx reverse proxy, with AVIF, variant-aware caching, and zero-copy serving.
Try one
- ModPageSpeed 2.0 —
dotnet add package WeAmp.PageSpeed.AspNetCore· .NET quickstart · Buy a license - mod_pagespeed 1.15 — package repos · docs
Related
- Is mod_pagespeed still maintained? — the current state of the project
- Is mod_pagespeed deprecated? — what changed and what to use
- mod_pagespeed alternatives — the deep comparison
- ngx_pagespeed alternative
- IISpeed alternative
- Google PageSpeed Module alternative
- ModPageSpeed vs WP Rocket
- ModPageSpeed vs Cloudflare APO
- All ModPageSpeed comparisons
- We-Amp open-source history
mod_pagespeed and other product names are trademarks of their respective owners. Comparisons reflect publicly available information as of 2026 and are provided for evaluation; We-Amp B.V. is not affiliated with or endorsed by Google or the Apache Software Foundation.