WP Dev Nest All articles
Performance

We Tested 15 Popular WordPress Plugins So You Don't Have To — Here's What We Found

WP Dev Nest
We Tested 15 Popular WordPress Plugins So You Don't Have To — Here's What We Found

Photo: developer analyzing website performance metrics on laptop with speed graphs, via thumbs.dreamstime.com

There's a running joke in WordPress circles: every plugin promises to make your life easier, but nobody talks about what they're quietly doing to your server. If you've ever scratched your head wondering why a seemingly clean site still crawls on PageSpeed Insights, the culprit is probably sitting right there in your plugins list.

We decided to stop guessing and start measuring. Over the course of a few weeks, we spun up a standardized WordPress 6.5 test environment on a fresh VPS, installed plugins one at a time, and tracked three core metrics: page load time, database query count, and peak memory usage. No caching, no CDN — just raw performance data.

Here's what we found, and more importantly, what you should do about it.

How We Set Up the Audit

Before diving into results, a quick note on methodology. We used a clean WordPress install with the default Twenty Twenty-Four theme, WP-CLI to standardize plugin installs, and a combination of Query Monitor and New Relic APM for measurement. Each plugin was tested in isolation on a 2-core, 4GB RAM DigitalOcean Droplet running PHP 8.2 and MariaDB 10.6.

We hit each test page five times and averaged the results to smooth out noise. Not a perfect lab — no test ever is — but consistent enough to surface real patterns.

The Plugins That Surprised Us (Not in a Good Way)

Contact Form Plugins: A Tale of Two Approaches

We tested three major contact form plugins, and the performance gap between them was genuinely shocking. One popular option — which we won't name but you've almost certainly installed — added 47 additional database queries on every single page load, even pages with no form present. That's a plugin loading its entire framework site-wide regardless of context.

A leaner competitor added just 3 queries on pages without a form and 11 on pages with one. Same end-user functionality, dramatically different overhead. The lesson? Always check whether a plugin loads assets globally or conditionally. If it's the former and there's no option to change that, it's worth reconsidering.

Page Builders and Memory Bloat

Page builders are the elephant in the room for any performance conversation. We tested two of the most widely deployed options, and both crossed the 64MB additional memory threshold during page rendering — on top of WordPress core's base usage. One of them registered over 200 database queries on a simple landing page.

Now, to be fair, page builders are complex tools doing a lot of heavy lifting. But if you're using one primarily for a site that's already been built, consider whether you actually need it active on the front end. Several developers we've spoken with keep the builder active in the admin only and use a static output plugin to serve the front end — a smart workaround that can cut load time nearly in half.

SEO Plugins: The Overhead Nobody Talks About

Most developers install an SEO plugin without a second thought, and the big names have earned their reputations. But our tests showed that two leading SEO plugins added between 8 and 22 additional database queries per page, along with noticeable memory overhead tied to their schema markup and analysis features running on every request.

One plugin had a setting buried in its advanced options to disable front-end features that weren't needed — enabling that single toggle dropped its query count from 22 to 6. Read the docs, dig into the settings. The defaults aren't always optimized for production.

Building Your Own Plugin Audit Framework

You don't need a fancy setup to audit plugin performance on your own projects. Here's a lightweight process you can run on any WordPress site:

Step 1: Baseline first. Before installing or activating anything new, record your current query count, load time, and memory usage using Query Monitor. Screenshot it. This is your control.

Step 2: Install one plugin at a time. Never batch-install and then try to diagnose. You'll never isolate the issue.

Step 3: Test on representative pages. Don't just check the homepage. Test a single post, a category archive, a WooCommerce product page if applicable — wherever your real traffic lands.

Step 4: Check for global asset loading. In your browser's Network tab, look for plugin-specific JS and CSS files loading on pages where the plugin has no visible function. That's wasted overhead.

Step 5: Review the plugin's hooks. If you're comfortable in the code, a quick grep for add_action('wp_head' or add_action('wp_footer' in the plugin files will show you what it's injecting everywhere.

Lighter Alternatives Worth Exploring

For every bloated plugin we tested, there was almost always a leaner option that covered the core use case without the performance tax. A few swaps we'd genuinely recommend exploring:

The Bottom Line

Plugins are one of WordPress's greatest strengths — but that ecosystem comes with responsibility on the developer's side. The install count or star rating on WordPress.org won't tell you what a plugin does to your server. Only measurement will.

Make performance auditing a standard part of your project workflow. Run Query Monitor on every new plugin before it goes live. Your clients' users — and their Google rankings — will thank you.

Got a plugin you'd like us to add to the next round of testing? Drop it in the comments below. We're always looking for community nominations for the next audit.

All Articles

Related Articles

Keeping WordPress Core Updated Is Good — But Hackers Stopped Caring About Core Years Ago

Keeping WordPress Core Updated Is Good — But Hackers Stopped Caring About Core Years Ago