The 13 Best WordPress CDNs Of 2025 Ranked By Performance, Features, And CDN Performance Trackers [Spreadsheet]

Cloudflare and QUIC.cloud are leading the way in WordPress CDNs and are consistently top performers in CDN Performance Tracker.

For most static sites, Cloudflare with APO or QUIC.cloud’s standard plan (when using LiteSpeed) is plenty. There are also third-party plugins that offer free full page caching from Cloudflare (similar to APO). Dynamic/WooCommerce sites can further accelerate dynamic requests with Argo Smart Routing, and for even better results, would use Cloudflare Enterprise.

The problem is, hosting companies started integrating very limited versions of Cloudflare because people aren’t comfortable configuring it, and Cloudflare Enterprise costs a lot of money. However, they’re often poorly integrated and lack many features you normally get when setting up your CDN directly through the CDN provider. It’s convenient… but not ideal.

With very limited exceptions (e.g. Rocket.net’s free Cloudflare Enterprise), you’re better off setting up Cloudflare directly so you have full access to your Cloudflare settings/features. Feel free to use my tutorials to set up and configure your Cloudflare settings or QUIC.cloud settings.

View Spreadsheet

Key Features To Look For In Your CDN

  • Network: CDNs usually have a network page with their points of presence (PoPs) and data transfer rate in terabytes per seconds (Tbps). If you have specific regions you want to target, check the network page. Otherwise, higher numbers are better.
  • Dynamic (Full Page) Caching: this alone can reduce TTFB by ~72% by caching HTML. Except for Cloudflare APO, most CDNs include dynamic caching by default.
  • Smart Routing: this can reduce TTFB by another 33%. When your GPS re-routes you because of traffic congestion, smart routing is the same but for your CDN. It’s especially good for dynamic/WooCommerce sites as some content isn’t cacheable.
  • Security: firewalls, bot protection, and DDoS protection not only protect your site, but can block unwanted requests to the server and reduce hosting resource usage.
  • Image Optimization: unlike many plugins, image CDNs don’t use server resources and dynamically resize images for mobile devices and browsers. While QUIC.cloud does this via LiteSpeed Cache, you would usually need a paid add-on like Mirage + Polish (Cloudflare) or Bunny Optimizer (BunnyCDN) to do this. It’s also convenient.
  • Cache Hit Ratio: after setting up your CDN, monitor your cache hit ratio in your analytics. 80% is good, 90% is better (and roughly what I get through Rocket.net).
  • Lower Latency, TTFB, Improved Core Web Vitals: further distances between your server and visitors means higher latency and a slower the TTFB. This is why Google lists CDNs as a top factor for optimizing TTFB. TTFB is also 40% of LCP, part of FCP, and impacts other core web vital metrics. This is why TTFB is so important!

Omm ttfb keycdn performance test
Use KeyCDN or SpeedVitals to test TTFB in multiple locations (run 3 tests to ensure resources are cached)

 

1. Cloudflare Enterprise

*For Mission-Critical (e.g. Dynamic/WooCommerce) Sites.

Some hosting companies (e.g. Rocket.net + Cloudways) as well as FlyingCDN (on FlyingPress) offer Cloudflare Enterprise at affordable rates. However, not all their integrations are the same.

Rocket.net’s Cloudflare Enterprise was released first, has the most powerful integration, and their CEO (Ben Gabler) has extensive experience with CDNs as StackPath’s former Chief Product Officer. It’s 100% free when using their hosting and set up automatically on every site launched at Rocket.net. This is a big reason their hosting averages a ~100ms global TTFB and was top tier in Kevin Ohasi’s WP Hosting Benchmarks. The hosting itself is great, but that is a different story. It doesn’t include Mirage + Polish for image optimization, so you’ll need a plugin (like Optimole).

Rocket. Net cloudflare enterprise

Cloudflare enterprise integrations

Rocket. Net true cloudflare enterprise

Cloudways’ Cloudflare Enterprise is poorly integrated. Even from the start, it didn’t support full page caching and served annoying challenge pages. While both of those issues were fixed, it’s still extremely limited and is sold as a $5/mo add-on. Plus, their hosting received no awards.

Cloudways cloudflare enterprise restricted access to features

Servebolt’s Cloudflare Enterprise (called accelerated domains) costs $299/month which combined with their hosting, runs about $400/month. While the Cloudflare integration is great and their hosting won top tier in Kevin’s Benchmarks, $400/month isn’t realistic for most sites.

FlyingCDN’s Cloudflare Enterprise is used on FlyingPress (the cache plugin I recommend when using Nginx/Apache servers). It’s a great alternative if you don’t want to switch hosting.

Flyingcdn features

Kinsta and WP Engine’s Cloudflare integration aren’t considered Cloudflare Enterprise. They may have a few Enterprise features, but nothing compared those on true Cloudflare Enterprise.

Setup Instructions

This varies depending on which integration is used. Rocket.net’s is automatic while Cloudways and FlyingCDN require you to verify ownership by adding TXT or CNAME records in DNS settings.

 

2. Cloudflare

*For Sites On Nginx/Apache Servers.

Setting up Cloudflare directly (with APO or a free full page caching plugin) is plenty for most static sites that don’t require the extra performance and security that come with Cloudflare Enterprise. This method is actually better than most Cloudflare integrations done by hosting companies because you get access to your Cloudflare dashboard and features that come with it.

Cloudflare network

First, add your site to Cloudflare and get to a page where they tell you to change nameservers.

Change hostgator nameservers cloudflare

Next, login to your domain registrar and replace your current nameservers with Cloudflare’s:

Hostgator change nameservers

Once your website is added, use my tutorial to configure your Cloudflare settings. The high majority of settings are fine left as default. The main 5 things I would do are enabling Early Hints, Crawler Hints, Hotlink Protection, enabling “Full (Strict)” in your SSL/TLS settings, and watching a short video on configuring Cloudflare rules to enhance security (from Troy Glancy).

Full page caching is still needed to cache HTML for improved TTFB which the free plan doesn’t do by default. This is where you can choose to use APO ($5/mo) or a free third-party plugin like Super Page Cache or App for Cloudflare® which aside from a few differences, do the same thing.

Cloudflare apo impact on ttfb, fcp speed index
APO impact on TTFB, FCP, and Speed Index (source: Cloudflare)

Setting up APO is easy, here are the steps:

  1. Purchase APO in your Cloudflare dashboard.
  2. Install the official Cloudflare plugin.
  3. Create an API token and add it to the plugin.
  4. Enable APO in the plugin.
  5. Purge cache.
  6. Confirm it’s working in uptrends.com. Enter the domain as https://www. and you should see: CF-Cache-Status: HIT, cf-apo-via: tcache, cf-edge-cache: cache, platform=wordpress.

Test cloudflare apo

If you’re running a dynamic site and using Cloudflare directly, consider Argo Smart Routing.

Enable argo smart routing cloudflare

 

3. QUIC.cloud

*For Sites On LiteSpeed Servers.

QUIC.cloud was designed for LiteSpeed servers and is set up through LiteSpeed Cache. It’s also needed for certain page/image optimizations to work in LiteSpeed Cache. While they have a free plan, you’ll want the standard paid plan which uses all 80+ PoPs and includes DDoS protection.

Quic. Cloud free vs standard plan

You also get free monthly credits. Most LiteSpeed hosts I’ve tried use LiteSpeed Enterprise which includes 10GB free monthly bandwidth. If you need more, add credits to your account.

Step 1: In the LiteSpeed Cache General settings, request a domain key and add your Server IP.

Link to quic. Cloud

Step 2: Go to CDN → QUIC.cloud CDN Setup → “Begin QUIC.cloud CDN Setup.” Then click “Refresh CDN Setup Status” and you’ll get 2 nameservers (kevin.quicns.net and jon.quicns.org). QUIC’s DNS provides better performance when using LiteSpeed with more accurate geo-routing.

Quic. Cloud cdn setup status

Step 3: In your domain registrar, change your nameservers to QUIC’s.

Chemicloud nameservers quic. Cloud

Step 4: Configure the “CDN Config” settings in QUIC.cloud’s dashboard. 3 things I would try:

  • QUIC backend – lets QUIC connect to your server via QUIC and HTTP/3.
  • Block Browser XML-RPC – most sites don’t use XML-RPC and can block it.
  • Hotlink Protection – prevents sites from copying images and using your bandwidth.

Step 5: Switch to the standard plan ($.02 – $.08/GB depending on regions you select).

Quic. Cloud free vs standard plan

QUIC.cloud also has a nice tutorial on setting it up:

 

4. Bunny.net

*Powerful Image Optimizer And WordPress Integration.

If you compare Bunny.net’s network to Cloudflare’s, they have at least 2x less PoPs and slower data transfer speeds (Tbps). It also requires some extra configuration you can use my guide for.

On the plus side, you can use Cloudflare and Bunny.net simultaneously which is what Gijo (FlyingPress developer) recommended a while back. This way, you get access to features like Bunny Optimizer (image optimization) and geo-replication, although both of these cost extra.

Bunnycdn network

Bunnycdn coupon
Use coupon OMM5 to your billing section for $5 in credits

You’ll create a pull zone and get a CDN URL which you’ll paste into the Bunny.net plugin (and other cache plugins if they ask for it). Then login and use my tutorial to configure the settings.

Bunnycdn settings
After creating a pull zone, Bunny.net will assign you a CDN URL
Bunnycdn optimizer settings
Bunny Optimizer settings

RocketCDN (By WP Rocket) Uses Bunny.net, But Use It Directly Instead

Just like many Cloudflare integrations, the convenience adding RocketCDN using WP Rocket comes at a price of not having access to Bunny.net’s many features as well as the dashboard. Plus, WP Rocket advertises “unlimited bandwidth” when your CDN bandwidth actually is very limited. They don’t list any hard numbers but will eventually cut you off, so it’s a guessing game.

Rocketcdn limited bandwidth

 

5. CloudFront

*Large and fast network.

Amazon CloudFront has a whopping 600+ PoPs and performs well on cdnperf.com, but it’s as popular in the WordPress community since it’s not used in most CDN integrations. It’s also not as easy to set up (instructions). You’ll create an S3 bucket and create a CloudFront distribution.

Amazon cloudfront network
CloudFront’s 600+ edge locations

CloudFront Pricing

 Per Month  US, Mexico, Canada  Europe and Israel  South Africa, Kenya, Middle East  South America Japan  Australia, New Zealand  Hong Kong, Indonesia,  Philippines, Singapore, South Korea, Taiwan, Thailand India 
 First 10TB $0.085 $0.085 $0.110 $0.110 $0.114 $0.114 $0.120 $0.109
 Next 40TB $0.080 $0.080 $0.105 $0.105 $0.089 $0.098 $0.100 $0.085
 Next 100TB $0.060 $0.060 $0.090 $0.090 $0.086 $0.094 $0.095 $0.082
 Next 350TB $0.040 $0.040 $0.080 $0.080 $0.084 $0.092 $0.090 $0.080
 Next 524TB $0.030 $0.030 $0.060 $0.060 $0.080 $0.090 $0.080 $0.078
 Next 4PB $0.025 $0.025 $0.050 $0.050 $0.070 $0.085 $0.070 $0.075
 Over 5PB $0.020 $0.020 $0.040 $0.040 $0.060 $0.080 $0.060 $0.072

 

6. Fastly

*Large and fast network.

Fastly only has around 95 PoPs but has a higher data transfer date than Cloudflare at 377 Tbps.

Fastly network map

Follow their start here page or the instructions on their plugin page. After creating a CDN service and an API token, you’ll use their plugin to save your Fastly API token and Service ID.

 

7. SiteGround CDN

*More limited, expensive, and unreliable compared to Cloudflare.

Not a fan of SiteGround, but that’s a different story (I also feel the same about WP Engine and Kinsta). If you insist on using any of these hosting companies, you’re better off using Cloudflare directly, FlyingProxy, or using a more performant and cheaper host with higher resource limits.

The free version doesn’t use dynamic caching and while the $14.99/month premium version does, that’s just 1 of very few features you get. It hardly provides any security or performance optimizations you would get on Cloudflare and also uses Google Cloud network with less PoPs.

Siteground cdn free vs premium

There’s another big problem with SiteGround’s CDN: you have to use their DNS to use it which was blocked by Google for 4 days, causing 2 million SiteGround domains to get deindexed in Google. If you login to your Twitter, you can see people’s frustration in this tweet and this one.

 
In typical SiteGround fashion, results can be slower than promised.

Siteground cdn slow

Ironically, SiteGround previously discontinued Cloudflare and introduced their own paid version of their CDN which is slower, less reliable, and costs much more than APO at $14.99/mo.

 

8. WP Engine CDN

*Limited Cloudflare features with no full page caching.

WP Engine’s CDN is similar to Kinsta’s CDN (neither are anything close to Cloudflare Enterprise). You get Polish and layer 3 & 4 DDoS protection with WP Engine’s, but again, lose out on all those features you would get setting up Cloudflare directly. Similarly, WP Engine’s hosting is extremely limited on monthly visits, bandwidth, and storage. Having to jump to their next plan is common.

Wp engine cdn

 

9. Kinsta CDN

*Limited Cloudflare features (supports full page caching) but poor integration.

Kinsta jumped back and forth on advertising their CDN as “Cloudflare Enterprise,” but it’s not. It’s basically Cloudflare with full page caching + layer 7 firewall rules with bandwidth limits. You can see complaints about their poor Cloudflare intergation in their CDN TrustPilot reviews.

Their hosting is just as bad as WP Engine with low resource limits (including PHP threads) and ridiculous add-ons that show you how limited the base hosting is. Which is probably why they don’t participate in Kevin Ohashi’s benchmarks and can struggle with resource-intensive sites.

Kinsta cdn

 

10. WPX XDN

Limited PoPs and no full page caching.

XDN is a free CDN from WPX Hosting.

It only has 42 locations and doesn’t support full page caching. The only “benchmark” they give is a GTmetrix report of the CEO’s homepage, but they hardly list any technical specs. Since WPX uses LiteSpeed, use QUIC.cloud instead. However, due to their downtimes, awful response to a massive outage, and aiming for a 400ms global TTFB, I don’t recommend WPX’s hosting or CDN.

Wpx xdn

The outage was because they don’t use a redundancy system which their CEO called “expensive.” He blamed the outage on their partner’s CEO who died just months earlier (had customers used Cloudflare with the “always on” feature, there would have been less damage).

Wpx hosting worldwide outage comment 2

XDN’s data centers are listed on their blog:

New York/Jersey, USA (x2) Miami, USA Paris, France
Chicago, USA (x3) Toronto, Canada Tokyo, Japan
Dallas, USA Amsterdam, Netherlands (x2) Singapore
Seattle, USA London, UK Mumbai, India
Los Angeles, USA Manchester, UK Johannesburg, South Africa
Ashburn, USA Frankfurt, Germany (x2) Sofia, Bulgaria
Atlanta, USA Moscow, Russia Sao Paulo, Brazil
Kansas City, USA Sydney, Australia Madrid, Spain
Silicon Valley, USA

 

11. KeyCDN

Limited PoPs and only serves static files.

KeyCDN only has 40 PoPs and doesn’t support key features like full page caching.

Most of KeyCDN’s data centers are located in Europe, so it would mostly make sense if that’s where your visitors are. They also developed the CDN Enabler plugin which rewrites CSS, JavaScript, and images so they’re served from a CDN, although the plugin has poor reviews.

Bunnycdn vs keycdn

KeyCDN Pricing

REGION FIRST 10 TB
per month
NEXT 40 TB
per month
NEXT 50 TB
per month
OVER 100 TB
per month
North AmericaEurope $0.04/GB $0.03/GB $0.02/GB $0.01/GB
AsiaOceania $0.09/GB $0.06/GB $0.04/GB $0.02/GB
AfricaLatin America $0.11/GB $0.08/GB $0.06/GB $0.04/GB

 

12. Sucuri

Limited PoPs and only serves static files.

Sucuri is a security service at heart so I would personally lean towards a company that specializes in the CDN field, or at least speed optimization. Plus, they only have 14 locations which is unattractive. I haven’t had a chance to try their CDN, just know it’s not widely used.

Sucuri pop locations
Sucuri has a limited number of 12 locations for their CDN/firewall

 

13. JetPack CDN

JetPack’s CDN is another option, but I don’t recommend JetPack.

It’s a slow plugin with features you probably don’t need. If you’re using JetPack, learn which features you’re using and install other plugins (or do things manually), then delete it. If you insist on trying it, it can serve images, photos, CSS, and static JavaScript files from their CDN.

Jetpack wordpress cdn

Do you agree with these CDN rankings? I’d love to hear your own experience in the comments. And of course, any suggestions you would like to see me add to this guide are always welcome.

Cheers,
Tom

You Might Also Like: