The Slowest WordPress Plugins (and Alternatives to Try Instead)

We all know that performance and speed are a critical part of how visitors perceive their experience on a website. That’s why we use optimized web hosting plans, install CDNs, and utilize caching plugins to keep WordPress sites running quickly and smoothly.

For some of your clients, however, paying for VPS or managed WordPress hosting just isn’t going to be feasible. And some may push back against something like a CDN because the bulk of their business is concentrated within a small local area.

However, when traffic numbers and the resulting HTTPS requests increase, you need to do something to lighten the load on their shared or cloud hosting servers to keep performance high.

I’d suggest narrowing in on their slowest WordPress plugins to see if you can offload some of the weight and pressure within them. Let’s talk about how to either do away with these slow WordPress plugins entirely or find lighter-weight and more efficient alternatives to replace them.

The Slowest WordPress Plugins You Should Probably Rethink Using

You already know that having too many plugins on a WordPress site can be detrimental to performance. However, what if you’re positive that you have a reasonable amount of plugins for what you need to accomplish, but performance is still lagging?

Well, then you likely have one of the slowest WordPress plugins on your hands. Of course, there are many reasons why a WordPress plugin would make your site run slowly. For example, it could be poorly coded, it could be hacked, or it could be out of date… Plugins need to be well-cared for by their developers and well-managed by their users. Sometimes, however, even the highest quality plugin can have a detrimental effect on a website’s performance.

These are the most common reasons why a high-quality WordPress plugin would make a site significantly slower:

  • The plugin calls on files and load scripts for pages where it’s not needed, creating unnecessary server requests when there shouldn’t be any.
  • The plugin works with an external API in order to pull in content (like a social media feed). So, not only do visitors wait for the data stored on your server to load, but they have to wait for the API to process the request from someone else’s.
  • The plugin tracks unnecessary or excessive amounts of data from the website and logs them in the database. Every time the database is called on, the server has to make a new MySQL request.
  • The plugin conducts searches on a MySQL table (which is generally a bad practice), and, in turn, stresses the system when it simultaneously tries to perform more essential operations.

Down below I’m going to explain what you can do to identify WordPress plugins guilty of these infractions. For now, though, let’s look at the most popular plugins you may want to find alternatives for if your clients’ servers aren’t equipped to handle them:

1. Broken Link Checker

Slowest WordPress Plugins - Broken Link Checker Plugin
The Broken Link Checker plugin.

If you think about what sort of job you’re asking the Broken Link Checker plugin to do, of course it makes sense it would suck up resources.

For starters, it scans every page on your website and does so on an ongoing basis. Also, it handles the sweep in batches. It first parses through every page to identify all your links. It then does another sweep to identify which ones are broken. For larger and link-heavy websites, this can be a real drag on performance.

This plugin is actually so notorious for performance issues that it’s on the disallowed list for WPEngine who says it “[o]verwhelms even our robust caching layer with an inordinate amount of HTTP requests” as well as web hosts like GoDaddy and HostGator.

Alternative: If broken link checking is essential to your process, use a tool outside of WordPress like Broken Link Check.

2. Contact Form 7

Contact Form 7
The Contact Form 7 plugin.

Every website needs a contact form through which leads can be collected. With over 5 million downloads and counting, Contact Form 7 is by far the most popular plugin to get the job done.

Here’s the thing: this plugin is really well-made and the developer seems to take great care in supporting it. However, this is an incredibly script-heavy WordPress plugin. While that might not be a problem if it were only to affect the pages where the contact form exists, that’s not the case. Contact Form 7 injects its scripts into every page of your site.

Alternative: If you want a comparable (and free) contact form plugin that isn’t as much of a drain on server performance, take a look at Ninja Forms. For WPMU DEV members, Forminator is an excellent premium option.

3. Jetpack

Slowest WordPress Plugins - Jetpack Plugin
The Jetpack all-in-one plugin from WordPress.

In my opinion, Jetpack is a good all-in-one plugin for brand new blogs. It comes with analytics, social media marketing, image optimization, security measures, SEO features, and more–it’s a solid set of tools for a starter website with low levels of traffic.

As you can imagine, though, having all those features and modules in one plugin can consume a lot of resources–especially if you’re not making use of everything included in within it (which, in all honesty, you probably won’t). As your client’s WordPress site expands, there are more server-efficient ways to handle each of the critical tasks that Jetpack addresses.

I’d also suggest finding alternatives to any plugin that requires Jetpack activation in order to function, like the VaultPress plugin. It might be a fine backup solution on its own, but the fact that it requires you to install a bloated plugin like Jetpack in order to work makes it one you should avoid.

Alternative: As for how to replace Jetpack, well, that is a matter of personal choice since you probably don’t need it for every single feature. I’d suggest starting with WPMU DEV’s plugin roster first. You’ll find one-off solutions to replace the main features of Jetpack: security, performance optimization, SEO, and much more.

4. NextGen Gallery

Slowest WordPress Plugins - NextGen Gallery Plugin
The NextGen Gallery plugin.

Although NextGen Gallery is a popular plugin in the WordPress repository, users have a lot of complaints about how overly complicated the plugin is. When the cons (i.e. image load times slow down) outweigh the pros (i.e. images are beautifully displayed), it defeats the purpose in using a plugin like this in the first place.

While NextGen undoubtedly will make your image galleries look outstanding, it offers way too many customizations and options and, quite frankly, doesn’t handle them well in terms of server resource consumption.

Alternative: If you need to display your photos in a gallery or carousel, then give Envira Gallery Lite a shot. This plugin is optimized to keep server performance high even as you add more images and customizations to your gallery.

5. Any Related Posts Plugin

Slowest WordPress Plugins - YARPP Plugin
The Yet Another Related Posts plugin.

As I poked around to see what top web hosting companies had to say about the slowest WordPress plugins, there was one specific type of plugin I continued to see referenced: related posts plugins. And not only were these plugins continually referenced, but many of them were outright banned by these web hosts. Specifically, Yet Another Related Posts was called out the most.

The problem with these types of plugins is that they call on your website’s database quite a lot. In order to determine which related posts to show, they first have to index all of posts on your site. Then they sort through them, trying to determine what the content is about. And then they have to display those related posts. It’s all that intensive searching, indexing, and MySQL sorting that really takes a toll on WordPress sites.

Alternative: WPEngine made a few suggestions for related post tools that process data on their own servers in order to keep performance on yours high. Of course, this means paying for a premium solution, but I think there are some reasonably priced solutions like Contextly and Related Posts for WordPress that are a wise investment for websites with a heavy blogging component.

6. Wordfence Security

Slowest WordPress Plugins - Wordfence Security Plugin
The Wordfence Security plugin.

In general, Wordfence Security is a fantastic security plugin for WordPress. It does a great job covering everything you’d need in terms of monitoring for threats and kicking them out before they have a chance to do any damage on your site. It comes with a firewall, brute force protection, and malware scanning.

However, there is one feature in particular that is known to cause problems with loading times in WordPress and it’s the live traffic report. It’s a default setting that, when left intact, can significantly slow down a server’s response time as it’s always working to monitor the quality of traffic visiting your site.

Alternative: I have two suggestions here. The first is that, if your client is dead-set on using Wordfence, simply turn off the live traffic feature. You’ll find it under the Basic Options settings. If your client is open to trying something new, however, and wants something less likely to cause issues, talk to them about switching to Defender.

How to Find the Slowest Plugins on Your WordPress Site

Obviously, the list above only includes the most popular WordPress plugins that are known for causing problems with a website’s performance. But what about all the others? When you develop websites for clients with more niche specialties and needs, you may encounter less popular and yet seemingly high-quality plugins. How do you determine if they’re the source of the slowdown on your WordPress site?

A few years back, I would’ve suggested you use the
P3 (Plugin Performance Profiler) plugin. However, the plugin has since started to exhibit serious issues when installed in WordPress and appears to not be supported by the developer anymore. So, let’s do this the old fashioned way.

This process is nearly identical to what we did to identify WordPress plugin conflicts. The only difference is that we’re not looking for plugins that break your site, we just want to see which ones are slowing down performance.

In sum, here is what you will need to do:

First, back up your site using your WordPress backup plugin.

Next, deactivate all of your plugins.

Deactivate Plugins
You can easily bulk deactivate your plugins in WordPress.

Hop onto your WordPress site and see if the performance issues are fixed. If so, then you know a plugin is the problem.

Now, you will need to test your plugins one-by-one. If you have any of the plugins from the list above, start with them. If you don’t, then just start at the top.

  1. Activate the first plugin.
  2. Return to your website and bounce around to a couple pages.
  3. Does everything still load as fast as it did without any plugins? If so, then it’s not this one.
  4. Return to your plugins list and deactivate the plugin you just tested.
  5. Activate the next plugin on the list.
  6. Repeat these steps until you encounter the one that’s causing problems on the site.

I would also suggest using a website scanning tool like WP Checkup. After running the scan, you’ll receive a list of performance issues that will tell you exactly which scripts, files, and other tasks are making your site run more slowly than it has to. If you can associate those problem areas to one of your plugins, then you’ll know which of them is the guilty party.

Wrapping Up

If your site is plagued by slow-loading times and you’ve done everything else you can to optimize your site for speed, then there’s a good chance the problem is in with one of your plugins.

Once you’ve identified the problem child in your list of plugins, what do you do? Well, you have a few options:

  • Review the default settings of the plugin. Is there something that can be switched off to reduce strain on your server?
  • Cut back on the number of unnecessary plugins installed to create less competition for resources.
  • Delete the plugin altogether if you don’t need that feature or functionality.
  • Delete the plugin and use one of the more lightweight and server-friendly alternatives noted above.
  • Learn how to code the functionality into WordPress and save yourself the trouble of the problematic plugin.
Suzanne Scacca
Are there any WordPress plugins you’ve encountered that always cause major performance problems? Please share down below and let us know what you've found!

22 Responses

    • If you look under the “All Options” tab and scroll down to Live Traffic Options, you’ll see the toggle to enable/disable this. It also comes with this note from Wordfence:

      “On most servers that have sufficient resources, Live Traffic in Wordfence works flawlessly… However if you are using a low cost hosting plan that severely limits the resources you have available, you may consider disabling live traffic to reduce the load on your web server.”

      So, if your web hosting plan and server can accommodate the live traffic requests, that’s likely why you haven’t noticed an issue.

  • Site Builder, Child of Zeus

    Excellent post. Thank you.

    Wordfence is my go-to security plugin. I will have to check the settings and turn off live traffic. I do use Defender on some sites and so far so good. I do feel like the Wordfence crew stay up to date on threats and spend a lot of resources monitoring them which in turn gives me confidence in their plugin.

    I’ll have to give Ninja Forms and Forminator a try.

    Thanks again – I appreciate this post.

  • Mr. LetsFixTheWorld

    Thanks for this article … and for not recommending P3. ;)

    Additional notes:
    – Use the “f(x) Email Log” plugin to see if a plugin is generating lots of rogue emails.
    – Use “WP Log Viewer” to see if plugins are throwing a lot of errors.
    – Use “Smush Pro” for galleries – the gallery plugin might seem to be slow when it’s really the content it’s processing.
    – The “WP User Activity” plugin can help to identify lots of unnecessary requests. I’m currently getting a lot of “failed login attempt for ‘’ “ errors, which has led me to finding a fault in a login plugin. And I have a lot of “_sitename_ deleted the ‘untitled’ scan” messages which are coming from Defender. Hmmm.
    – Look at “UsageDD” to see resource usage.
    – Look at “Debug Objects” to see a ton of stuff (P3 replacement).
    – “Query Monitor” similar to above.
    – “PHP/MySQL CPU performance statistics” can provide some helpful baseline data.

    It would be nice if Defender checked that list of WPEngine disallowed plugins against the local installation, to at least warn us that some authority has found an installed plugin to be worth a warning.

    It’s a shame that there’s no common place (?) to report/discuss (potentially) slow plugins – to reduce the amount of time spent by individual site managers who are all trying independently to find the same problems.

    • Hosting & Biz Dev

      Hi Tony, I hear ya when it comes to possibly having Defender warn against disallowed plugins on WPEngine. Though, looking back through WPEngine’s list – all seem to be for performance reasons and not for security (what Defender would look for).

      I do think there could be a case for something like Hummingbird (or our WPCheckup) to give some sort of notice if a plugin is a known resource hog. One for us to think about some more how best to do that, for sure!

    • New Recruit

      I second that, I guess we could turn on and off our plugins and do a Pingdom speed test but what if there was something like “wp plugin speed test” that did this automatically or something like a CPU benchmark site but for WP plugins where we could manually check or better yet install a plugin on our site that would score all installed plugins on our site with that data. I’m done building the site, optimized it the best I can but still a bit slow, time to install “WP plugin benchmark score”.

  • New Recruit

    Hey! Richard from Jetpack here. Thank you for including Jetpack in your list and I’m glad to see you see it as “a solid set of tools for a starter website with low levels of traffic.”

    That is indeed a main focus of ours.

    However, I’d like to offer a differing opinion on the blanket statement that Jetpack is only good for sites with low traffic levels.

    First of all, I would hasten to say that Jetpack is not necessarily a good fit for *all* sites that have high traffic levels — or indeed all sites. There is a lot of personal preference as well as many different site configurations that come into play.

    That said, I would love the opportunity to address a few key points your article raises:

    *Plugin Performance*. If you look through our last 12 releases or so () we’re putting a lot of focus on improving performance by improving our sync infrastructure, reducing payloads, reducing requests, and other optimizations because we’re VERY aware that performance is of key importance to most (all?) sites.

    *Image Performance*. Its interesting that you then mention NextGen Gallery as a performance problem. Jetpack offers a similar functionality with the added benefit that we serve and optimize the images from our CDN (free) making the user experience faster and we now offer lazy loading of images.

    *Related Content*. Also interesting you mention this as Jetpack’s related posts service (also free!) is one of the few which is *not* banned by most hosts because we take on the burden of all processing onto our infrastructure. This is great particularly for high traffic sites and you don’t incur additional bandwidth costs and, for Professional users, the same infrastructure is used to power a superior site search ().

    *Security / VaultPress*. Its true that this is irritating if you *just* want VaultPress. However once again here we are significantly improving the infrastructure and are in a position to be one of the few (only?) services to offer off-site backups in *real-time* which is an essential part of the security jigsaw for high traffic sites — as those are typically the ones seeing very regular updates. (See here for more detail from my colleague Beau: )

    I would encourage people on the fence to give it a go for themselves and see how Jetpack performs on your infrastructure with a side-by-side comparison and you’ll see for yourself how in all likelihood you’ll see no material difference, or, in many cases, an actual improvement. Replacing Jetpack with a multitude of plugins doesn’t necessarily reduce your site’s “bloat” and you get the added benefit of having to deal with only one support channel.

    Additionally, if you DO see your site’s performance degrade by using Jetpack please let us know either at or email me directly on [email protected] because ongoing improvements of this aspect of Jetpack is a core focus for us.

      • Chief of Keepin' it Fresh Div.

        Thank you for stepping in and addressing these concerns! Great support says a lot about a product and it is good to see your team is always working to improve. We appreciate the work and definitely believe our readers should give all of the plugins a spin for themselves and see what products work best on their setup. If a user is going to deactivate one of our plugins due to a performance issue, I know we appreciate the opportunity to work through it with them. Thanks again for the information and feedback.

  • New Recruit

    I love Contact Form 7 and use it for all my sites. My theme works nicely with it and there are a lot of plugins that connect to CF7 to add functionality. I thought it was a well developed plugin.

    I’ve started hearing about Ninja Forms.. Anyone else has experience with it (coming from Cf7) is this a better solution?

    • New Recruit

      Ninja is great, too. I’ve run the gamut of form plugins, and CF7 is my favorite. There is actually a fix that will allow you to avoid loading scripts on every page, (and even for avoiding loading CSS that way), and I tried to link to it below. This comment system kills links, though, so oh well. :) It does require a couple code changes on your system, not just an admin setting.

      Ninja is considerably more complex, and thus more bug-prone. Just have a look at their changelog. In their defense, they fix stuff fast, but you have to keep updating it very often. I do enjoy using it for very long, complicated forms.

  • Ben
    New Recruit

    It’s funny because when I’ve done tests Ninja Forms also seems to inject scripts onto every single page and appears to be a performance drain. But no one else seems to notice this. Perhaps it’s just my setup?
    I’ve used Query Monitor and it appears Ninja Forms makes tons of db requests on every page and this seems to be true even on basic WP sites I’ve spun up. Anyone else experienced this? I don’t want to rag on this otherwise excellent plugin but I would like to resolve this issue if possible.

  • New Recruit

    Great ideas and information! I like stuff that’s lean and mean.
    I get around a lot, but I wasn’t aware of some of this stuff. I just shut off Live Traffic on my Wordfence sites.

    I am also an enthusiastic user of Contact Form 7, and actually like it because of its general leanness and lack of bugs. But sure, loading scripts unnecessarily is a bit goofy. Because the coder of CF7 is awesome, I imagined that he’d have a fix, and he does, although it’s more involved than just an admin setting. You can also prevent loading of its CSS:

    Cheers, D

  • Mr. LetsFixTheWorld

    I think the general theme here is that the more a plugin does, the more likely it is that it will eventually be a resource hog, or perceived as one. All-in-one solutions tread that line between being a great Swiss Army Knife :registered: with a single-source support provider, and having too many features that individual sites don’t want.

    I think a part of that problem is that few developers truly modularize their offerings enough to completely isolate features that may be unwanted. “Of course everyone will want this feature, why should there be an option to turn it off?”

    To reduce run-time bloat, unnecessary transactions, and hook handling that will never be used on a site, developers need to add admin options while they’re building in a feature. If the feature is disabled, the module should not register hooks or enqueue scripts or styling. If a core plugin modularizes code into separate files and then conditionally skips require/include statements, then that code isn’t even loaded into memory. Code can’t slow a site down if it’s not loaded into memory and not invoked during the transaction life cycle.

    Unfortunately no one monitors this kind of thing. Developers aren’t encouraged to do this kind of optimisation. They register hooks on enqueue scripts on init and fully expect that every feature must be available for all transactions. Users don’t petition for full feature deactivation. There’s no strong guideline/mandate from that plugins should do these things in the name of improving the perceptions of WP in general. We’re left to high-level, subjective, gut feelings that some plugin is either adequately performant or that it is not. This also makes it more difficult to isolate specific parts of plugins, to report to authors specific performance issues.

    We only need a blog entry like “Slowest WordPress Plugins (and Alternatives to Try Instead)” (in part and not exclusively) because we don’t have industry-accepted practices to reduce run-time bloat. Rather than expect better written plugins we accept that we need to run away from poorly written ones, even if they provide awesome functionality. That’s really a shame. Some developers are just skilled enough to code features that they care about – optimisation skills are completely different, obtained over time, and usually only if and when required. Our culture with WP is that we abandon poorly coded plugins, no matter their functionality, rather than stewarding the process for developers to write better code. That demoralizes developers who have good ideas and a lot of passion. I think in the long run that’s a very costly paradigm.

  • New Recruit

    How come no one cared to mention that Jetpack allows users to turn off features they don’t need?

    I install Jetpack on every WordPress site I put online, once you turn off the features you don’t need you’re good to go.

    Like we all agreed, too many plugins slows down site, Jetpack has most of the features other plugins do, why not disable them and use jetpack cutting down on the no of plugins and improving your site performance. It’s common sense!

Comments are closed.