Updated: May 2020
There are no affiliate links on PagePipe.
A site is in serious trouble. Seventeen of 33 plugins have package sizes above 100k compressed (gzip). The site’s pages slowly load in 29 to 47 seconds. All pages are dragging beyond belief.
Time To First Byte (TTFB) is a measurement of server delay. We call it server speed overhead. We subtract it from our performance budget. The budget is 2 seconds. Sadly, the TTFB for this site varies from 2 to 6 seconds. Do we have to change hosts?
Is this site bad?
Rotten! Horrific! One of the worst we’ve repaired. The client is on GoDaddy hosting. We use GoDaddy hosting. It’s never that bad. We ask GoDaddy to check the server. They say it’s fine and dandy. There are no other domains on the server. They claim junk code in the server htaccess file is slowing everything down. We check using:
What we should see 10 lines of code in the HTaccess file contents. That’s the standard WordPress code (below).
Instead, we see 23,376 extra lines of code.
Where is this garbage coming from?
We clean out HTaccess. Then iThemes Security plugin puts all that junk right back instantly.
iThemes Security plugin is writing to the HTaccess file as if it were a wastebasket. Incredible confusion. Is it the plugins fault? Unlikely. It’s a slow and fat plugin but it isn’t that ugly. We guess an “operator error.”
Someone made settings for this plugin on overload. Why? Paranoia from being hacked and fear of getting hacked again with malware. A knee jerk overreaction into the red zone. Amazing security! We’ve written about this nasty speed-hog plugin before:
We run some tests ascertaining what other plugins slow things down on this errant site. But first let’s look at each plugin’s download size.
|Plugin Name||zip file k||percent|
|iThemes Security Pro||3300||15.21%|
|All In One SEO Pack||1500||6.91%|
|Better WordPress Google XML Sitemaps||1500||6.91%|
|Really Simple SSL||529||2.44%|
|Popups – WordPress Popup||438||2.02%|
|Lazy Load by WP Rocket||341||1.57%|
|Contact Form 7||183||0.84%|
|WPFront Notification Bar||178||0.82%|
|Velvet Blues Update URLs||28||0.13%|
|Simple 301 Redirects – Bulk Uploader||26||0.12%|
|Contact Form CFDB7||15||0.07%|
|ETH Redirect to Latest Post||11||0.05%|
|Insert Headers and Footers||9||0.04%|
|Honeypot for Contact Form 7||8||0.04%|
|Simple 301 Redirects||5||0.02%|
|No Category Base (WPML)||4||0.02%|
|Total zip package file size||21696|
How much do popular plugins damage your site speed? We can guess by looking at their download zip folder size. Notice most of these below are huge megabyte zip file sizes.
There is a direct correlation between plugin popularity and slowness. The more popular the slower it is. They’re the bigger resource hogs on the server. They destroy good TTFB.
|NAME||active installations||zip file wt|
|Contact Form 7||5+ million||181k|
|Yoast SEO||5+ million||3.1 MB|
|Akismet||5+ million||72.7 KB|
|WooCommerce||5+ million||7.2 MB|
|Jetpack||5+ million||7.6 MB|
|Elementor||4+ million||4.8 MB|
|Wordfence Security||3+ million||4.5 MB|
|Contact Form by WPForms||3+ million||4.3 MB|
|MonsterInsights Google Analytics Dashboard||2+ million||2.3 MB|
|UpdraftPlus||2+ million||6.6 MB|
|All in One SEO Pack||2+ million||1.2 MB|
What are the load times of the plugins used on this site under test:
|Theme Enfold Child||770.70|
|iThemes Security Pro||98.50||10.48%||53.69%|
|All In One Seo Pack||81.60||8.68%||62.37%|
|Contact Form 7||79.90||8.50%||70.88%|
|Bwp Google Xml Sitemaps||19.50||2.07%||87.20%|
|Popups WordPress Popup||17.50||1.86%||90.92%|
|Lazy Load by WP Rocket||15.70||1.67%||92.59%|
|Really Simple Ssl||15.20||1.62%||94.21%|
|WPFront Notification Bar||8.60||0.92%||97.25%|
|Velvet Blues Update URLs||3.60||0.38%||100.13%|
|Contact Form Cfdb7||3.40||0.36%||100.49%|
|Insert Headers And Footers||1.90||0.20%||100.90%|
|Eth Redirect To Latest Post||1.70||0.18%||101.09%|
|Simple 301 Redirects||1.30||0.14%||101.37%|
|Simple 301 Redirects Addon Bulk Uploader||0.70||0.07%||101.54%|
|No Category Base (WPML)||0.40||0.04%||101.59%|
|Contact Form 7 Honeypot||0.30||0.03%||101.62%|
|grand total theoretical site drag||2259.80|
Notice that Enfold theme load time is nasty: 770 milliseconds. We’ve only seen one theme worse. Divi’s one second load time!Many popular plugins often do calculations and file data on the server. These delays don’t show up in a speed test waterfall. Find out how fat plugins affect your site by checking server resource usage in server Cpanel. But one sure indicator is time to first byte gets unacceptable. A good TTFB is around 200 to 300 milliseconds. Average TTFB is 500 milliseconds. And bad news is anything over a second. This site is 6 seconds!
So what’s the alternative?
Use fast-loading discrete plugins instead. These are free single-purpose plugins that usually have no settings. They load in around 1 millisecond and the zip folder size is definitely under 100k – more like 10k. You only install the features you need. One plugin per feature. You don’t throw in the kitchen sink with over-engineering and gold plating.
But isn’t using many plugins worse than using one plugin? No. You could load 250 one-millisecond discrete plugins instead of Yoast SEO plugin. Think about it. You don’t need but a few lightweight plugins to duplicate the fat plugins features.
For example, the AMP plugin mentioned above doesn’t help mobile speed. Instead it slows down the page by 400 milliseconds because it’s so complicated. We suspect it also loads down the server. We don’t need to replace or substitute this plugin, we need to remove it. That’s right. Get rid of that Google-Dog plugin. It’s not helping anything.
We get busy removing the bad plugins and replacing them with discrete plugins. We trash the following plugins:
- WP Rocket
- Sucuri Scanner
- Lazy Load by WP Rocket
What happens to speed?
Global page loads drop from 38.7 seconds average to 5.7 seconds.
We next pull the iThemes Security plugin and replace it with 4 discrete plugins.
Speed gets even better:
3.5 seconds average. 10 times faster page loads.
Can we make the pages load in under 2 seconds? Yes. But we need to remove the SEO plugin – and replace the theme and pagebuilder. That costs too much time, energy, and money for this client. So we postpone these recommendations until a future rebuild.
We now understand how popular plugins slowdown TTFB (server overhead). Hurrah! You won’t need to move from your hosting provider after all.
Some managed hosts blacklist plugins to prevent the installation of vulnerable and disruptive plugins. Disruptive means server resource hogs. These include WordPress Popular Posts, Broken Link Checker, and Google Sitemap Generator.
You may ask, “How do we reduce server activity during backup when the media library is super big?”
Good question because that can slow down TTFB, also.
We use three free plugins to reduce a server’s burden during backups:
We set site automatic backups to happen every week. We know if we lost one weeks worth of activity it wouldn’t damage us too much. Sad? Yes. But not ruined. That one-week interval reduces the amount of time the plugin is hitting on the server. (6.6M zip folder download).
UpDraftPlus takes into account server throttling and potential shutdowns. It doesn’t cause overruns of server resources. It sends packages in segments and waits for the server to recognize it’s not under attack or overload. Then it sends the next backup package (zip folders).
Set the weekly start time to a day when you know you have the least site traffic. On smaller sites, with few changes, we update monthly. Do you really need daily updates?
We retain two backup copies on remote cloud services (free Dropbox). But quarterly, we download a backup to our computer desktop for archiving. Don’t save backups to the same server you host on except for disposable copies. Be safe.
2Exclude Image Thumbnails From UpdraftPlus Backups
This small 1.6k plugin excludes WordPress generated image thumbnails from Updraft backups, saving space. The original, full-sized image is included in backups. If a restoration from backup is needed, a thumbnails plugin is used to regenerate thumbnails using the original, full-size images. The plugin works for all image formats. It includes both native and custom image sizes added by themes and plugins.
There are 4 WordPress default image sizes normally created by core: original, large, medium, and thumbnail. Every time an image is uploaded these are placed on the server. Server space is not an issue. Resource consumption during backup and restore is a potential problem. We’ve seen themes (like Enfold) automatically create up to 18 different thumbnail sizes whether they’re used on pages or not. This bloats the media library backup.
Regenerate the thumbnails for your image uploads. Useful when changing their sizes or your theme. Regenerate all thumbnail sizes for one or more images uploaded to your Media Library. We keep it disabled and use it only when needed. (79.2k zip download).
If MailChimp messes up delivering your free report, email us and we’ll kick their monkey butt.