WP Rocket Review: Honest Speed Tests and Hidden Gaps

TL;DR

WP Rocket delivers real speed gains—our test site went from 79 to 99 on mobile PageSpeed—but only after manually enabling advanced settings that carry breakage risk. Default activation alone barely moved the score. The base license ($59/year) doesn’t include image optimization or a CDN, and adding those pushes the true cost to $210–$293/year. If you’d rather get caching, CDN, and image optimization in one subscription without manual configuration, NitroPack’s Starter plan is at $84/year, with a free plan available to test first.

WP Rocket has earned its reputation. Over 2 million WordPress sites run the plugin, Trustpilot reviewers have given it a 4.5/5 across roughly 2,850 ratings, and it regularly tops “best caching plugin” lists.

That reputation is largely deserved—but most reviews stop there, and the ones that go deeper tend to be selling you an affiliate link.

You need more than that to make a decision.

This is why we installed WP Rocket on a test site, ran PageSpeed and Core Web Vitals benchmarks (with lab data, as it’s a test site about cat clothes, after all) at three configuration levels, and dug into the parts that don’t make the highlight reel.

This includes the features that require manual setup and carry real breakage risk, the image optimization gap that sends you to a second paid product, and the true annual cost once you add everything the base license leaves out.

If you’re a non-technical site owner on shared or VPS hosting and you want faster load times without writing code, WP Rocket is worth serious consideration—with caveats. There’s no free version, no trial period, and the $59/year entry price only gets you in the door. And yes, while there is a 14-day money-back guarantee, you still need to purchase first.

So if you’re still on the fence and looking for more concrete information on how the plugin performs, stick around. 

WP Rocket review: What do you get out of the box? 

Activates automatically (zero config)

WP Rocket’s headline claim is that it applies 80% of performance best practices the moment you activate it. That is true—the plugin does start working immediately, and the features that fire on activation are the ones responsible for most of the WordPress speed gains new users see in their first PageSpeed test.

  • Page caching is the biggest one. As soon as the plugin is active, WP Rocket generates static HTML copies of your pages and serves those to visitors instead of rebuilding each page from the database on every request. That alone can cut load times significantly on shared hosting.
  • Browser caching kicks in at the same time, setting expiry headers so returning visitors don’t re-download assets they already have. GZIP compression is applied alongside it, reducing file sizes in transit.
  • Cache preloading runs automatically too—it crawls your sitemap and generates cached versions of pages before anyone visits them, so the first real visitor to any given URL still gets a fast response. If you’re running WooCommerce, the plugin automatically excludes cart, checkout, and account pages from caching, which prevents the stale-cart bugs that plague other WordPress caching setups.
Activate Preloading setting in WP Rocket
  • Link preloading on hover. When a visitor hovers over an internal link, WP Rocket starts downloading that page in the background so the click feels near-instant. Worth noting: This is separate from sitemap-based cache preloading and it’s only available for Chrome and Chromium-based browsers. Cache preloading primes static files for crawlers and first-time visitors. Hover preloading speeds up real-time navigation for people already on your site.
 Enable link preloading setting in WP Rocket
  • CSS and JavaScript minification is also active out of the box, stripping unnecessary whitespace and comments from your code files to reduce their size.
Minify CSS and JavaScript files settings in WP Rocket

Requires manual enabling

The remaining 20% of WP Rocket’s feature set sits behind toggles you need to switch on yourself. Some of these are where the real performance gains live—but they also carry more risk.

🙂 Important

JavaScript deferral and Delay JavaScript Execution are the most impactful options in this group, and the most likely to break something. We cover both in detail in the next section.

  • Lazy loading for images, iframes, and videos needs to be turned on in the Media tab. Once enabled, media files only load when a visitor scrolls them into view, which reduces initial page weight. 
Enable LazyLoad for images, CSS background images, iframes and videos in WP Rocket
  • Additional media settings:
    • Automatic image dimension attributes—a small but meaningful toggle that adds missing width and height values to prevent layout shifts (CLS). 
    • Font preloading for above-the-fold fonts.
    • Self-hosted Google Fonts, which moves font files to your server and cuts external requests.
Image Dimensions and font settings in WP Rocket
  • Database cleanup covers post revisions, auto-drafts, trashed posts, spam and trashed comments, expired transients, and table optimization. None of it runs on activation. You either trigger it manually or schedule it on a daily, weekly, or monthly cycle. Useful, but not unique to WP Rocket—free plugins like WP-Optimize handle the same tasks.
Database cleanup settings in WP Rocket
  • Heartbeat API control lets you throttle or disable WordPress’s background AJAX polling in the dashboard, frontend, or post editor. On shared hosting where CPU resources are tight, this can make a noticeable difference.
Heartbeat API settings in WP Rocket

And if you already use Cloudflare for DNS or CDN, WP Rocket’s Cloudflare add-on lets you purge Cloudflare’s cache directly from wp-admin and apply recommended settings—no separate Cloudflare plugin needed.

What’s not included at all: CDN delivery and image optimization. RocketCDN is a paid add-on ($7.99/month), and image compression requires a separate purchase of Imagify. We break down the full cost of these extras in the pricing section.

CSS and JavaScript optimization

This is where WP Rocket gets powerful—and where most things break.

Delay JavaScript execution 

Delay JavaScript execution in WP Rocket

Easily the most aggressive optimization WP Rocket offers. It pauses all scripts until a visitor interacts with the page—a scroll, click, keypress, or screen touch. The performance payoff is real: lower Total Blocking Time, reduced main thread work, and improved FCP. 

But anything that depends on JavaScript loading immediately—sliders, sticky menus, animated headers, checkout flows—can appear broken or unresponsive until that first interaction. WP Rocket includes one-click exclusions for common plugins and a text field for manual exclusions, but finding the right scripts to exclude still takes trial and error.

Remove unused CSS 

Remove unused CSS in WP Rocket

This feature scans each page, strips out unused stylesheets, and inlines only the CSS that page actually needs. It’s generated per individual URL—not per page type—using an external tool that processes your pages asynchronously. 

The result is a smaller overall page size, though the HTML response itself may get heavier since the Used CSS is added inline. If the scan misses a style your page needs above the fold, visitors see a flash of unstyled content until the full CSS loads. Fixing that requires safelisting specific classes or selectors manually.

Combine JavaScript 

Combine JavaScript files in WP Rocket

With this, you can merge multiple JS files into a single request. On HTTP/1.1 servers, fewer requests mean faster loading. On HTTP/2—which most modern hosts support—multiplexing handles parallel downloads natively, making the combination mostly redundant. 

Note: Combine JavaScript is automatically disabled when Delay JavaScript Execution is active.

A safe testing workflow matters here. 

Enable one setting at a time. Clear cache after each change. Test in an incognito window or on staging. Reversing a toggle doesn’t always undo the damage—the broken cached version may keep serving visitors until you purge.

Still, these risks aren’t unique to WP Rocket. Any plugin that reorders script loading or strips CSS carries similar breakage potential. The difference is how much manual testing falls on you.

Prefer automated CSS/JS optimization? NitroPack handles this process automatically and offers Test Mode to preview changes without affecting live visitors.

Enabling test mode in NitroPack

Image optimization (and why you need to pay extra for Imagify)

Image optimization tab in WP Rocket, prompting users to install Imagify

WP Rocket does not compress images, nor does it convert them to WebP or AVIF either.

The image-adjacent features it does include—lazy loading and automatic width/height attributes—help with perceived load time and layout stability (CLS). But they don’t reduce actual file size, which is what moves the needle on Largest Contentful Paint.

For that, WP Rocket points you to Imagify, built by the same team. The free tier gives you 20MB/month—roughly 200 images. Beyond that, the Growth plan starts at $5.99/month for 500MB, and the Infinite plan runs $11.99/month for unlimited optimization. That’s $72–$144/year on top of your WP Rocket license, managed through a separate dashboard.

NitroPack includes its full image optimization stack—WebP conversion, lossy/lossless compression, adaptive sizing, and lazy loading—in every plan at no extra cost. 

WP Rocket speed test results

We installed WP Rocket on a test WordPress site loaded with content, embedded videos, and several plugins to simulate a realistic setup (as realistic sites about cat clothes can get). 

Test site Google PageSpeed Insights score without any optimizations

Once we got everything, we then ran Google PageSpeed Insights on mobile under three conditions.

MetricNo pluginWP Rocket (default)WP Rocket (all settings)
Performance797699
FCP1.5s1.5s1.5s
LCP4.0s4.0s1.9s
TBT300ms400ms0ms
CLS0.0140.0140
Speed Index3.4s3.2s2.7s

⚠️ Important: These scores come from single PageSpeed Insights runs on a test site. 

PSI is a lab tool—results can swing by several points between runs depending on server load, network conditions, and test timing. Treat the exact numbers as directional, not absolute. For a more reliable picture of how your site performs for real visitors, monitor field data through the Chrome UX Report (CrUX) over time.

As you can see, the default activation barely moved the needle. Well, technically it did, but in the wrong direction.

 Test site Google PageSpeed Insights score with the default WP Rocket optimizations

The score went from 79 to 76—within normal PageSpeed variability. FCP, LCP, and CLS stayed identical. TBT actually increased slightly from 300ms to 400ms. The automatic features (page caching, browser caching, GZIP, preloading) are doing their job behind the scenes, but on their own, they aren’t enough to shift the metrics that PageSpeed weighs most heavily.

The advanced settings changed everything. Once we enabled Remove Unused CSS, Delay JavaScript Execution, and lazy loading, the score jumped to 99. 

Test site Google PageSpeed Insights score with all WP Rocket optimizations

LCP dropped from 4.0s to 1.9s—more than halved. TBT hit zero. CLS went to zero. These are the settings that address what PageSpeed actually penalizes: render-blocking resources, unused code, and offscreen media loading upfront.

The pattern is clear. WP Rocket’s default activation handles the fundamentals, but the performance gains that show up in your scores live behind the manual toggles—the same ones that carry breakage risk.

⚠️ Important for testing!

If you test your site immediately after activating WP Rocket, your scores may temporarily drop. During our testing, an early run scored 53—worse than the baseline. WP Rocket processes cache files, critical CSS, and preload queues asynchronously after activation. Testing before that finishes catches the site mid-optimization, with overhead stacking on top of an unwarmed cache. Give it 10–15 minutes before running PageSpeed.

Test site Google PageSpeed Insights score with default optimizations but without waiting 15 minutes

For comparison, third-party benchmarks follow a similar pattern. CommerceGurus tested WP Rocket on a WooCommerce site and measured a 33% load time reduction on defaults, with custom configuration pushing mobile PageSpeed into the high 90s. BlogVault recorded a jump from 79 to 86 on activation alone—modest, consistent with what we saw.

The bottom line: WP Rocket delivers real, measurable speed improvements. But “activate and forget” gets you to 76. Getting to 99 takes manual configuration—and careful testing to make sure nothing breaks along the way.

WP Rocket pricing and the true cost with add-ons

WP Rocket’s base pricing is straightforward: 

  • $59/year for one site.
  • $119/year for three.
  • $299/year for up to 50. 

Additional tiers cover 100 and 500 sites. Every plan includes the same features—the only variable is how many domains you can activate.

No free version or trial, and the 14-day money-back guarantee requires purchasing first.

The sticker price gets more complicated once you add what WP Rocket doesn’t include:

  • Imagify (image optimization): $5.99–$11.99/month → $72–$144/year
  • RocketCDN (content delivery): $7.99/month for WP Rocket customers → ~$96/year
  • WP Rocket (base license): $59/year

Total cost of ownership: roughly $210–$293/year, depending on your Imagify tier. Substituting Cloudflare’s free plan for RocketCDN cuts that number, but you lose unlimited bandwidth and automatic configuration.

The Infinite Plan is gone. 

In August 2025, WP Rocket discontinued its unlimited-site license and restructured around capped Multi plans. Existing customers were migrated to a Multi 500 tier. PriceTimeline documented the change with the original customer email, confirming grandfathered users received a discounted first renewal before moving to the new pricing.

Trustpilot reviewers have been vocal about the transition—complaints include price hikes communicated close to renewal, new customers offered better rates than long-term subscribers, and billing errors, including double charges paired with restrictive refund processes.

None of that erases what the plugin does well. For site owners who want a low-effort way to speed up WordPress without configuring multiple tools, WP Rocket at $59/year remains competitive—as long as you know the base license is the starting line, not the finish.

How NitroPack fills the gaps WP Rocket leaves open

This isn’t a full alternatives roundup—that’s coming in a companion article. This section maps each gap we’ve identified in this review to NitroPack’s corresponding feature, with honest caveats about what NitroPack doesn’t do.

WP Rocket gapNitroPack’s answer
No built-in image optimizationWebP conversion, lossy/lossless compression, and adaptive sizing included in every plan. HTTP Archive data shows NitroPack-optimized origins serve a median image weight of ~104 KB vs. ~452 KB for non-optimized pages.
RocketCDN is a paid add-onCloudflare-powered global CDN with 310 locations included at no extra cost.
No free versionFree plan available—no credit card, 1,000 pageviews/month.
Manual CSS/JS config carries breakage riskAutomated optimization with Test Mode to preview changes before they affect live visitors.
$210–$293/year for the full WP Rocket stackNitroPack Plus starts at $216/year (billed annually) with caching, CDN, and image optimization in one dashboard.
Ticket-only support24/7 live chat on all paid plans.

What NitroPack doesn’t do. There’s no database cleanup—you’ll still need a lightweight plugin like WP-Optimize for post revisions, transients, and table bloat. And NitroPack’s usage-based pricing means costs scale with traffic. At higher pageview volumes, WP Rocket’s flat annual fee can be cheaper—something worth calculating before you commit.

If the gaps in this review are deal-breakers, NitroPack’s free plan lets you test the difference on your actual site—no credit card required.

Frequently asked questions about WP Rocket

Is WP Rocket worth it on managed hosting like Kinsta or WP Engine?

On both Kinsta and WP Engine, WP Rocket’s page caching is automatically disabled—these hosts handle that at the server level and don’t allow plugins to interfere. That’s per WP Rocket’s hosting compatibility docs.

WP Rocket is still fully compatible with both hosts, and there’s value in the features that remain active: CSS/JS optimization, Remove Unused CSS, lazy loading, database cleanup, and Delay JavaScript Execution. But it does mean you’re paying $59/year primarily for file optimization — the plugin’s headline feature isn’t doing anything.

Whether that’s worth it depends on your site. If you’re running a content-heavy WordPress install or WooCommerce store where code optimization and lazy loading make a measurable difference, yes. If you’re running a lightweight blog on premium hosting that’s already fast, some of those same functions are available through free plugins like Autoptimize or Perfmatters.

NitroPack’s cloud-based architecture sidesteps this issue entirely—its optimizations run on external infrastructure regardless of your hosting environment.

How does WP Rocket compare to free alternatives like W3 Total Cache?

WP Rocket wins on ease of use, and it’s not close. W3 Total Cache is free and genuinely powerful—it supports Redis, Memcached, and granular object caching that WP Rocket doesn’t offer. But it comes with 16 pages of settings and real breakage risk if you misconfigure something.

The tradeoff isn’t just price vs. features—it’s time and risk tolerance. WP Rocket charges $59/year to remove most of that complexity. Some reviewers note that while WP Rocket markets itself as plug-and-play, its advanced settings (Remove Unused CSS, Delay JS) still require technical knowledge to configure safely. For a deeper comparison, see NitroPack’s WP Rocket vs. W3 Total Cache analysis.

What is WP Rocket’s support like?

Ticket-only—no live chat, no phone. Response times are generally praised, with most users reporting replies within 24 hours from human agents. Individual support staff regularly get named positive callouts on Trustpilot, which says something about the team’s quality.

The negatives are documented too. Trustpilot reviews cite 48+ hour wait times during peak periods, generic first responses, and agents routing troubleshooting back to the customer. 

Lora Raykova

By Lora Raykova

User Experience Content Strategist

Lora has spent the last 8 years developing content strategies that drive better user experiences for SaaS companies in the CEE region. In collaboration with WordPress subject-matter experts and the 2024 Web Almanac, she helps site owners close the gap between web performance optimization and real-life business results.