Plugin info

Total downloads: 38,246
Active installs: 4,000
Total reviews: 30
Average rating: 4.9
Support threads opened: 1
Support threads resolved: 0 (0%)
Available in: 8 language(s)
Contributors: 2
Last updated: 9/30/2025 (92 days ago)
Added to WordPress: 12/3/2021 (4 years old)
Minimum WordPress version: 5.7
Tested up to WordPress version: 6.8.3
Minimum PHP version: 7.3

Maintenance & Compatibility

Maintenance score

Maintained • Last updated 92 days ago • Support resolved 0% • 30 reviews

46/100

Is Surge abandoned?

Likely maintained (last update 92 days ago).

Compatibility

Requires WordPress: 5.7
Tested up to: 6.8.3
Requires PHP: 7.3

Similar & Alternatives

Explore plugins with similar tags, and compare key metrics like downloads, ratings, updates, support, and WP/PHP compatibility.

W3 Total Cache
Rating 4.4/5 (5,412 reviews)Active installs 1,000,000
WP Super Cache
Rating 4.3/5 (1,340 reviews)Active installs 1,000,000
Breeze – WordPress Cache Plugin
Rating 3.6/5 (124 reviews)Active installs 400,000
Redis Object Cache
Rating 4.5/5 (170 reviews)Active installs 300,000

Description

Surge generates and serves static HTML files for your WordPress site, causing quicker requests, faster load times and a shorter time to first byte (TTFB).

Surge does not require configuration, and has no options. It works out of the box on any well-configured hosting platform. Cached files are stored on disk, and automatically invalidated when your site is updated.

In various load tests, Surge has shown to easily handle 1000-2500 requests per second at 100 concurrent, on a small single-core server with only 1 GB of RAM. That’s over 70 times faster than a stock WordPress install.

Installation

Via the WordPress Dashboard: navigate to Plugins – Add New. In the search bar type “surge” and hit Enter. Find the Surge plugin in the search results, hit Install, then Activate.

Manually: download the Surge plugin .zip file from WordPress.org. In your WordPress admin navigate to Plugins – Add New – Upload. Select the .zip file and hit Upload. Activate the plugin after upload is successful.

Manually via FTP: download the Surge plugin .zip file from WordPress.org, extract the archive, make sure the directory is called “surge”. Use your FTP/SFTP client to upload the “surge” directory to wp-content/plugins. Then activate the plugin in your WordPress admin from the Plugins section.

Using WP-CLI: wp plugin install surge –activate

Frequently Asked Questions

Where is the plugin configuration screen?

There isn’t one.

How do I clear the cache?

Toggle the plugin activation or run wp surge flush using WP-CLI.

Is my cache working?

Visit the Site Health screen under Tools in your WordPress dashboard. Common caching errors, like installation problems, etc. will appear there. Otherwise, open your site in an Incognito window to see the cached version. You could also look for the “X-Cache” header in the server response.

Why am I getting cache misses?

Below are a few common reasons:

  • You are logged into your WordPress site
  • You have a unique cookie set in your browser
  • A unique query parameter will also cause a cache miss, except common marketing parameters, such as utm_campaign, etc.
  • Request methods outside of GET and HEAD are not cached

Can I exclude page X from being cached?

Of course. If you pass a “Cache-Control: no-cache” header (or max-age=0) the request will automatically be excluded from cache. Note that most WordPress plugins will already do this where necessary.

fpassthru() has been disabled for security reasons

It seems like your hosting provider disabled the fpassthru() function, likely by mistake. This is a requirement for Surge. Please get in touch with them and kindly ask them to enable it.

How can I support Surge?

If you like Surge, consider giving us a star on GitHub and a review on WordPress.org.

Review feed

DannyCooper
1/5/2022

Focused

This plugin does one thing: generate and serve static HTML files. And it does that one thing perfectly.
Anna Ladoshkina
1/31/2022

Great job!

It really helps to improve speed A LOT without any hassle with options.
Jordi Cabot
2/16/2022

Hassle-free option - Works out-of-the-box

I just installed Surge in all my sites. After cancelling the payment option I was using, I was looking for a simple and easy to install option. And Surge is exactly this. Forget about complex configuration options (where you're at risk of crashing your site, talking from my own experience!), just install and forget!. I don't know if it's really the fastest option if you're an optimization expert that know exactly what to touch but it's the fastest option for me, no doubt about it
Timi Wahalahti
1/24/2023

Just works!

This plugin works! Install, activate, and check WP_CACHE value and boom - your site is fast!One nice feature that is happening under the hood is caching of specific REST API requests. That makes, for example, dynamic parts of the site with javascript filtering blazingly fast.
Jason LeMahieu (MadtownLems)
2/6/2024

Finally a Caching Plugin I can get behind!

Over the years, I've looked at all the top caching plugins, and never found one that I liked. They were either too complex, too finicky, or tried to do too many things. Surge just works, and it works great. Update: I ran some basic performance testing of the same sample content with and without Surge activated.Surge increased my Requests per second by a factor of 21x and reduced my time per request by a factor of 25x. Beyond that, Konstantin has been amazing as far as support goes for a free plugin. Besides addressing issues and requests, he's gone above-and-beyond at helping work through issues, to the point of looking at where we are using Surge and making additional configuration recommendations. If it were possible to give 6 stars, I would!

Screenshots

No screenshots available

Changelog

1.1.0

  • Improved Multisite compatibility
  • Fixed occasional stat() warnings in cleanup routines
  • Fixed expiration by path being too broad
  • Added a filter for flush actions
  • Feature: added a simple events system for s-maxage and stale-while-revalidate support

1.0.5

  • Fix woocommerce_product_title compatibility
  • Honor DONOTCACHEPAGE constant
  • Use built-in is_ssl() WordPress function for better compatibility

1.0.4

  • Add a WP-CLI command to invalidate/flush page cache
  • Fix redirect loop with Core’s redirect_canonical for ignore_query_vars
  • Fix warnings for requests with empty headers
  • Fix warnings when cron cleanup attempts to read a file that no longer exists
  • Add a filter to disable writing to wp-config.php

1.0.3

  • Invalidate cache when posts_per_page is changed
  • Fix redirect loop with unknown query vars caused by Core’s redirect_canonical
  • Ignore X-Cache and X-Powered-By headers from cache metadata
  • Allow multiple headers with the same name

1.0.2

  • Fix PHP notice in invalidation
  • Protect against race conditions when writing flags.json
  • Add support for more post statuses in transition_post_status invalidation

1.0.1

  • Add support for custom user configuration
  • Various invalidation enhancements and fixes
  • Remove advanced-cache.php when plugin is deactivated
  • Add a note about fpassthru() in FAQ
  • Minor fix in Site Health screen tests

1.0.0

  • Anonymize requests to favicon.ico and robots.txt
  • Improve cache expiration, add cache expiration by path

0.1.0

  • Initial release