Google clearly lists your host/CDN as the 2 main factors of server response times (TTFB). And since TTFB is 40% of LCP, it plays a huge role in web vitals. TTFB is the single most important metric to improve web vitals as it impacts 4/6 user metrics in PageSpeed Insights, including FCP.
The problem is, there is a lot of bad information out there about which host/CDN is fastest. Read my article on the best hosting which debunks a lot of misinformation. Since your host/CDN are the 2 main TTFB factors, use a host with fast hardware + software and a CDN with a large network that has features like full page caching.
Latency is also part of TTFB. Your DNS plays a big role (along with your cache plugin, server load, and other factors which I’ll cover in this tutorial). Feel free to comment if you need help!
What Is A Good TTFB?
|0-600ms||Passes Core Web Vitals|
|600ms+||Fails Core Web Vitals|
- Choose a data center close to your visitors
- Move your DNS to Cloudflare or QUIC
- Choose a fast CDN
- Use full page caching
- Use a CDN with smart routing
- Use a CDN with load balancing
- Try a host with faster hardware/software
- Enable TLS 1.3
- Test your site for HTTP/3
- Increase cache TTL
- Switch to a faster cache plugin
- Reduce the load on your server
- Use the latest PHP version
- Test with and without Gzip/Brotli
- Optimize your database
1. Choose A Data Center Close To Your Visitors
Choosing a host with a close data center to visitors is an easy way to improve TTFB.
In KeyCDN’s Performance Test, TTFB gets slower as the data center gets further away. This is a better way to test TTFB than most tools (like GTmetrix) which only test it in 1 location at a time.
However, don’t choose a host only based on their data centers. You need to look at their hardware, software, CDN, cache plugin, and several other factors besides a “close data center.”
When using more powerful CDNs like Cloudflare Enterprise, using a close data center barely matters since your TTFB is often able to average 100ms globally. This is due to caching both static/dynamic files (using full page caching) while using other CDN features like smart routing.
2. Move Your DNS To Cloudflare Or QUIC
Use Cloudflare’s DNS in most cases (or QUIC’s DNS if you’re on a LiteSpeed server). Cloudflare is a top performer on dnsperf.com and QUIC is needed for better geographic routing with Anycast.
Other DNS providers are slow and add latency. For example, GoDaddy and Kinsta’s DNS (Route 53) don’t perform well on dnsperf.com. While other DNS providers are unreliable: SiteGround’s DNS was blocked by Google for 4 days, causing 2 million domains to be deindexed from Google.
How To Move Your DNS To Cloudflare
Sign up for Cloudflare through their website, add your website, and they will scan records. Cloudflare will eventually provide you with 2 nameservers. Login to your domain registrar (i.e GoDaddy/Namecheap) and find the option to change nameservers (usually in the DNS settings). Replace the nameservers with Cloudflare’s, then in Cloudflare, click ‘Done, check nameservers.’
How To Move Your DNS To QUIC (LiteSpeed Only)
3. Choose A Fast CDN
Which CDN you choose has a massive impact on TTFB.
Cloudflare with APO and QUIC.cloud (on LiteSpeed) are both fast/affordable CDNs with full page caching. If you have a WooCommerce site or global audience, Cloudflare Enterprise is even faster with Argo Smart Routing + load balancing + image optimization + prioritized routing.
Some hosts offer Cloudflare Enterprise (or at least a partial integration of it), but Rocket.net’s Cloudflare Enterprise is best. Not only is it free with their hosting (which is also fast), but it has more features. For example, Kinsta and WP Engine’s Cloudflare integration lack way too many features to be considered “Enterprise.” Cloudways just recently added full page caching and it also serves annoying challenge pages. Rocket.net’s better integration has a lot to do with Ben Gabler’s background (Rocket.net’s CEO) who was previously StackPath’s Chief Product Officer.
|Cloudflare Free||Cloudflare Enterprise (Cloudways)||Cloudflare Enterprise (Servebolt)||Cloudflare Enterprise (Rocket.net)|
|Argo Smart Routing||$5/mo + $.10/GB||✓||✓||✓|
|Load balancing||500k queries free then 5 cents/500k||✓||✓||✓|
|Mirage + Polish||x||✓||✓||✓|
|Bandwidth||Unlimited||100GB/mo||1TB/mo||Depends on hosting plan|
|Price||Free||$5/mo (1 domain)||$299/mo (1 domain)||Free w/ hosting|
Out of the CDNs below, use FlyingCDN (for FlyingPress) or QUIC.cloud (for LiteSpeed).
|RocketCDN (WP Rocket)||SiteGround CDN 2.0||BunnyCDN||FlyingCDN (FlyingPress)||QUIC.cloud Standard Plan|
|Tbps||100||Not listed||80||80||Not listed|
|Full page cache||x||✓||Perma-Cache||Perma-Cache||✓|
|Image optimization||x||Limited||Bunny Optimizer ($9.50/mo)||Bunny Optimizer (included)||✓|
|Bandwidth||Not unlimited as advertised||Not unlimited as advertised||Unlimited||Unlimited||Unlimited|
|Price||$8.99/mo||$14.99/mo||$.01 – .06/GB||$.03/GB||$.02 – .08/GB|
4. Use Full Page Caching
Only a handful of CDNs support full page caching. Here are a few:
- Cloudflare APO
- QUIC.cloud’s CDN
- SiteGround’s CDN (v2)
- BunnyCDN (Perma-Cache)
- Super Page Cache For Cloudflare plugin
- Rocket.net, Cloudways, and Kinsta’s CDN all use Cloudflare’s full page caching
With full page caching, Cloudflare’s APO improved TTFB by 72%. And since TTFB (server response time) is a large part of LCP/FCP, it’s one of the best way to improve core web vitals.
In APO’s post-launch report, mobile usually improves slightly more than desktop:
5. Use A CDN With Smart Routing
Some CDNs use “smart routing” which can improve latency by about 60%:
This routes traffic through the fastest CDN network paths and is specifically good for WooCommerce or dynamic sites. Cloudflare has Argo Smart Routing (included with Rocket.net and Cloudways’ Cloudflare Enterprise). QUIC also uses advanced routing when using their DNS.
When using Cloudflare Argo, it’s best to also use Tiered Cache + cache reserve.
6. Use A CDN With Load Balancing
Load balancing steers traffic away from unhealthy origins and distributes traffic to the most available server pools. This can improve both latency and uptimes. You can either use a CDN that already supports load balancing (such as Rocket.net’s, Cloudways, or BunnyCDN). Or if you’re using Cloudflare directly, you will need to set this up manually using this video tutorial.
7. Try A Host With Faster Hardware/Software
There’s a lot of bad information out there on which host is “fastest.”
When comparing hosts, ignore their marketing. You really need to look at their hardware, software, CDN, cache plugin, and resource limits (CPU cores, RAM, inodes).
When choosing any host, I like to look at:
- Do they use LiteSpeed or Apache?
- Do they use NVMe storage which is faster than SATA?
- Do they use MariaDB which has advantages over MySQL?
- Do they have scam reports like Hostinger and GreenGeeks?
- If you also use them for email hosting, you’ll want more inodes.
- Complaints on TrustPilot about specific issues like high CPU usage.
Hosts I Would Avoid:
|SiteGround GrowBig||Hostinger Business WP||GoDaddy Managed WP Deluxe||Bluehost Choice Plus||WPX Business Plan|
|Server||Apache + Nginx||Apache + Nginx||Apache + Nginx||Apache + Nginx||LiteSpeed|
|Cores/RAM||Not listed||2 cores/1.5GB||2 cores/1GB||Not listed||1 core/1GB|
|Storage||20GB SATA||200GB SATA||60GB SATA||40GB SATA||15GB SATA|
|Cache plugin||SG Optimizer||LiteSpeed Cache||x||x||W3 Total Cache|
|CDN||SiteGround CDN ($14.99/mo)||QUIC.cloud ($.02-.08/GB)||GoDaddy CDN (free)||Cloudflare (free)||XDN (free)|
|CDN locations||176||81||Not listed||285||36|
|Full page caching||✓||✓||x||x||x|
|Control panel||Site Tools||hPanel||cPanel||cPanel||WPX Panel|
|Email storage||10GB||1GB||10GB||Adjustable||Not listed but frequent issues|
|Major incidents||TTFB, DNS, CPU issues (denies it)||Downtimes scams, fake reviews, breach||Malware, several data breaches||Downtimes||Downtimes, global outage|
|Migrations||$30/site||Unlimited (but screws it up)||Paid||“Qualified” accounts only||5 free|
|TrustPilot rating||4.6/5||4.6/5 (fake)||4.7/5||3.8/5||4.9/5|
|Monthly price||$3.99 (1 year)||$3.99 (1-4 years)||$10.49 (2 years)||$5.45 (1 year)||$20.83 (1 year)|
Good LiteSpeed Hosting Plans:
|FastComet FastCloud Extra||NameHero Turbo WordPress||ChemiCloud WordPress Turbo||Scala Entry WP Cloud|
|Cores/RAM||6 cores/6GB||3 cores/3GB||3 cores/3GB (scalable to 6/6)||No limits|
|Storage type||35GB SATA||Unlimited NVMe (US data center)||40GB NVMe (9/11 data centers)||50GB NVMe (US data center)|
|Data centers||11||2 (US + EU)||11||3 (US + EU)|
|Cache plugin||LiteSpeed Cache||LiteSpeed Cache||LiteSpeed Cache||LiteSpeed Cache|
|CDN||QUIC.cloud ($.02-.08/GB)||QUIC.cloud ($.02-.08/GB)||QUIC.cloud ($.02-.08/GB)||QUIC.cloud ($.02-.08/GB)|
|Major incidents||2022 DDoS attack on 3 data centers||2011 2-day node outage||None||None|
|Migrations||3 free||1 free||200 cPanel + 10 non-cPanel||1 free|
|Monthly price||$5.49 (1-3 years)||$9.98 (3 years)||$5.99 (3 years)||$14.95 (3 years)|
Popular Cloud Hosting Plans (Last 2 Are Better, Especially For WooCommerce):
|SiteGround Cloud Jump Start Plan||Kinsta Starter Plan||Cloudways Vultr HF (2GB)||Servebolt Pro Plan||Rocket.net Starter Plan|
|Type||Cloud||Cloud w/ shared containers||Cloud||Cloud||Private cloud|
|Server||Apache + Nginx||Apache + Nginx||Apache + Nginx||Apache + Nginx||Apache + Nginx|
|Cores/RAM||4 cores/8GB||12 cores/8GB||1 core/2GB||Unmetered||32 cores/128GB|
|Storage||40GB SATA||10GB SATA||64GB NVMe||4GB NVMe||10GB NVMe|
|Object cache||Memcached||Redis ($100/mo)||Redis Pro||x||Redis|
|PHP processor||FastCGI||FastCGI||FPM||Apache 2 ITK MPM||LiteSpeed|
|PHP workers||CPU limits + suspensions||2||No limit||No limit||No limit|
|CDN||$14.99/mo SiteGround CDN||Cloudflare APO + firewall rules||$5/mo Cloudflare Enterprise||$299/mo Cloudflare Enterprise||Free Cloudflare Enterprise|
|Full page cache||✓||✓||x||✓||✓|
|DNS||Blocked by Google (4 days)||Route 53||DNS Made Easy ($5/mo)||x||Cloudflare|
|Cache plugin||SG Optimizer||Use FlyingPress||Breeze||Servebolt plugin||Use FlyingPress|
|Data centers||10||35||44||7||Served from Cloudflare edge|
|Bandwidth or monthly visits||5TB||25k||2TB||1M dynamic requests||50GB + 250k|
|Control panel||Site Tools||MyKinsta||Custom (hard)||Servebolt Panel||Mission Control|
|Major incidents||History of TTFB, DNS, CPU issues||None||None||None||None|
|Migrations||$30/site||Unlimited free||1 free + $25/site||Unlimited free||Unlimited free|
|Price||$100/mo||$29/mo when paying yearly||$35/mo with CF Enterprise||$99/mo||$25/mo when paying yearly|
8. Enable TLS 1.3
Higher TLS versions reduce latency and improve security.
Use TLS 1.2 + 1.3 as preferred versions in your hosting account, then disable 1.0 + 1.1. You can also set TLS versions in Cloudflare under SSL/TLS → Edge Certificates → Minimum TLS Version.
Next, use this TLS checker to see which versions are enabled or disabled on your site. You can also use KeyCDN’s Performance Test to measure TLS speed and how the change impacts TTFB.
There are other Cloudflare settings that help too:
- Full (Or Full Strict) SSL – this is what Cloudflare recommends anyway.
- Always Use HTTPS – safe to use if all connections are served from HTTPS.
- TCP Turbo (Pro Feature) – reduces latency by automatically choosing TCP settings.
- Custom SSL (Pro Feature) – upload SSL to Cloudflare to terminate SSL/TLS at the edge.
9. Test Your Site For HTTP/3
Cloudflare’s test showed TTFB was 12.4% faster when using HTTP/3.
You can enable this in Cloudflare or by using QUIC.cloud’s CDN on LiteSpeed which also supports HTTP/3. When you’re done, use an HTTP/3 test to check whether your site supports it.
10. Increase Cache TTL
A longer TTL (time to live) can lead to a better cache hit ratio. The more cache hits, the faster your TTFB will be. Google recommends caching static resources for 1 year (but WooCommerce sites can aim for about 1 month) which fixes serve static assets with an efficient cache policy in PSI. Depending on where your cache is stored, this can be done in your hosting account or CDN.
11. Switch To A Faster Cache Plugin
Cache plugins reduce TTFB by improving server processing times and serving files directly (reducing PHP/MySQL queries). I recommend LiteSpeed Cache (if you’re on LiteSpeed) and FlyingPress in all other cases. WP Rocket has fallen behind and has barely released any new features since 2011 if you check the changelog. SiteGround Optimizer does an even worse job addressing web vitals and has ongoing compatibility issues if you check their support threads.
|SG Optimizer||WP Rocket||FlyingPress||LiteSpeed Cache|
|Object cache integration||✓||x||x||✓|
|Remove unused CSS||x||Inline||Separate file||Separate file|
|Preload critical images||x||x||✓||x|
|Exclude above the fold images||By class/type||By URL/class||Automatic||Automatic|
|Lazy load background images||x||Inline HTML||lazy-bg class||x|
|Add missing image dimensions||x||✓||✓||✓|
|Lazy load iframes||x||✓||✓||✓|
|YouTube iframe preview image||x||✓||✓||✓|
|Self-host YouTube placeholder||x||x||✓||x|
|Host fonts locally||x||x||✓||✓|
|Bloat removal (beyond Heartbeat)||x||x||✓ (details)||x|
|Lazy render HTML elements||x||x||✓||✓|
|Advanced cache control||x||x||x||✓|
|Limit post revisions||Delete all||Delete all||Keep some||Keep some|
|Full page caching||✓||x||x||✓|
|CDN image optimization||x||x||✓||✓|
|CDN image resizing for mobile||x||x||✓||x|
|CDN DDoS protection||x||x||✓||✓|
|CDN bandwidth||Unmetered||Very limited||Usage-based||Usage-based|
|Documented APO compatibility||x||x||✓||x|
|Documentation||Not detailed||Good||Not detailed||Good|
I personally moved from WP Rocket to FlyingPress and saw a big difference in core web vitals and real-world browsing speed. It was developed by Gijo Varghese who runs WP Speed Matters.
12. Reduce The Load On Your Server
If your CPU/memory usage are over 70%, visitors can experience lag.
The easiest way to reduce CPU usage is by using a hosting plan that uses LiteSpeed and includes more CPU cores/RAM (like as ChemiCloud, FastComet, or Rocket.net). Just by switching to LiteSpeed, people have seen a 75%+ reduction in CPU usage. LiteSpeed uses CPU/memory more efficiently, it’s faster, and can handle more traffic compared to Apache.
There also several other ways to reduce CPU usage if you don’t want to switch hosts:
- Remove resource hungry plugins (see list)
- Limit heartbeat, autosaves, post revisions, XML-RPC
- Replace wp-cron with a real cron job
- Use your CDN for firewall + image optimization
- Block bad bots
- Protect the wp-login page
- Limit preloading + cache clearing in cache plugins
- Install Redis or Memcached with OPcache
- Avoid using page builders/WooCommerce on cheap shared hosting
13. Use The Latest PHP Version
Higher PHP versions reduce TTFB because they handle more requests/second.
Login to your hosting account and update to the latest stable PHP version. It’s a good idea to keep other technologies updated as well (MySQL version, WordPress core, themes, plugins, etc).
14. Test With And Without Gzip/Brotli
Compressing pages with Gzip or Brotli can sometimes increase TTFB, so make sure you test this. Check if your host supports Gzip/Brotli compression (Brotli is generally faster than Gzip).
15. Optimize Your Database
A bloated, unoptimized database can also make your site/TTFB slower.
While cache plugins clean some junk, you’ll want to use something like WP-Optimize to do a thorough cleanup. This lets you go through your plugin tables, see how much overhead they add, and remove tables left behind by old plugins. You might also see specific plugins/modules adding lots of database bloat. I did, so I disabled several Rank Math features like their Analytics.
To make your database more efficient, use Memcached (or Redis) and OPcache. These can usually be activated in your hosting account and I generally recommend Redis which is more powerful than Memcached. Once activated, some cache plugins can connect it (LSC, W3TC, SG Optimizer). If it doesn’t, check your host’s documentation on how to connect object cache. And if they don’t support it, use Docket Cache. Some hosts (like Rocket.net and Cloudways) support Redis Object Cache Pro which is especially beneficial for dynamic websites like WooCommerce.
How do I reduce initial server response times in WordPress?
A fast host/CDN is the best way to reduce server response times (TTFB) in WordPress. Use a host with updated hardware/software (like LiteSpeed). For a CDN, use a service with a large network, full page caching, and smart routing. Using a close data center to users helps too.
How do I reduce server response times with Cloudflare?
Cloudflare improves TTFB with their fast CDN and DNS. You can use Cloudflare to further improve TTFB by using APO, Argo Smart Routing, and load balancing (all are paid services).
How do I reduce server response times with WP Rocket?
WP Rocket improves server response times (TTFB) by optimizing your caching, database, and several other features. However, it does a worse job with TTFB and core web vitals compared to FlyingPress + LiteSpeed Cache, especially when using their slow RocketCDN.
Which WordPress plugins reduce server response time?
Cache plugins (like LiteSpeed Cache and FlyingPress) and Cloudflare's plugin (which is used to setup full page caching) are the 2 best plugins to reduce server response times.