Your WordPress site was working fine yesterday. Today it's a white screen, a critical error message, a broken layout, or a checkout that suddenly stopped working. Nothing you did — except maybe update a plugin. This is one of the most common WordPress problems, and it's almost always caused by a plugin conflict.
The good news: plugin conflicts are one of the easiest WordPress problems to diagnose once you know the process — and in most cases, completely free to fix. In this guide, I'll walk you through the exact step-by-step method I use to isolate a conflicting plugin, based on 14+ years of WordPress development and hundreds of client sites.
What's in this guide
- What Is a WordPress Plugin Conflict?
- Signs You Have a Plugin Conflict
- Before You Start: Backup First
- Step-by-Step: How to Diagnose a Plugin Conflict
- Diagnosing Conflicts on a Live WooCommerce Store
- Common Plugin Conflict Scenarios
- Once You Find the Culprit: How to Fix It
- How to Prevent Plugin Conflicts Going Forward
- DIY vs Hiring a Developer
- Frequently Asked Questions
What Is a WordPress Plugin Conflict?
A plugin conflict happens when two (or more) plugins try to use the same resource in an incompatible way — the same PHP function name, the same JavaScript library version, the same database hook, or the same admin menu slot. WordPress doesn't stop this from happening; it just lets the code collide, and something breaks.
Conflicts can also happen between a plugin and your theme, or between a plugin and your PHP version after a hosting update. The symptoms look identical either way, so the diagnosis process covers both.
Signs You Have a Plugin Conflict
Watch for these symptoms appearing right after installing, updating, or activating a plugin:
- White Screen of Death — a completely blank page, front-end or wp-admin
- "There has been a critical error on this website" message
- A page that loads but with broken layout — missing CSS, elements stacked wrong
- JavaScript features stop working — sliders, popups, add-to-cart buttons, mobile menus
- Admin dashboard menus disappearing or duplicating
- WooCommerce checkout breaking — payment fields not loading, "Place Order" button unresponsive
- 500 Internal Server Error appearing intermittently
- PHP warnings or notices printed at the top of pages (usually in a red/yellow box)
If you've read our guide on the WordPress White Screen of Death and Critical Error fix, you already know the very first troubleshooting step for both of those symptoms is exactly what this guide covers: isolating which plugin is responsible.
Before You Start: Backup First
Even though diagnosing a conflict is low-risk, always take a full backup (files + database) before deactivating anything on a live site. If something goes wrong, you want a fast way back.
If your site is currently completely broken (white screen, can't access wp-admin), you'll need FTP or File Manager access through your hosting control panel to rename plugin folders directly — the steps below cover this too.
Step-by-Step: How to Diagnose a Plugin Conflict
Enable WordPress debug mode so you can see the actual error instead of a generic message.
Add these lines to wp-config.php, just above the line that says /* That's all, stop editing! */:
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );
This writes detailed errors to a log file at /wp-content/debug.log without showing them to site visitors. Open that file and look for the plugin folder name mentioned in the most recent error — that's often your first clue.
Deactivate all plugins at once and check if the problem disappears.
If you can access wp-admin: go to Plugins → Installed Plugins, select all, choose Deactivate from the bulk actions dropdown, and apply.
If you're locked out of wp-admin (white screen everywhere), do this via FTP instead: navigate to /wp-content/ and rename the plugins folder to plugins-disabled. WordPress will now treat every plugin as deactivated without deleting any of them.
Reload your site. If it works normally now, you've confirmed it's a plugin conflict (not a theme or core issue) — move to Step 3. If the site is still broken, the problem is likely your theme or a core file issue, not a plugin.
Reactivate plugins one at a time, checking your site after each one.
If you renamed the folder via FTP, rename it back to plugins first — this restores your plugin list but keeps them all deactivated in the database. Then in wp-admin, activate plugins individually, starting with the one you most recently installed or updated (that's the most likely culprit).
After each activation, reload the site and check the specific page or feature that was broken. The moment the error reappears, you've found the conflicting plugin.
Confirm it's a two-plugin conflict, not a single plugin bug.
Once you've identified the plugin that triggers the error, deactivate every other plugin and activate only that one alone. If the error still happens with just that single plugin active, it's a straightforward bug in that plugin (not a conflict) — check for an update, or look at Step 7 below. If the error only happens when it's active alongside a specific other plugin, you've confirmed a true conflict — reactivate plugins one more time to identify which second plugin triggers it.
Rule out your theme too.
If reactivating all plugins doesn't reproduce the issue but it still happens with your regular theme active, switch temporarily to a default WordPress theme (Twenty Twenty-Four or similar). If the problem disappears, the conflict is actually between a plugin and your theme's code — common with page builders and heavily customized themes.
Diagnosing Conflicts on a Live WooCommerce Store
Deactivating all plugins on an active store risks disabling payment gateways, tax calculation, or shipping plugins your customers are actively using at checkout. For WooCommerce sites, follow this safer approach:
- Do the diagnosis on a staging copy of your site first, not live — most hosts offer one-click staging
- If you must test live, do it during your lowest-traffic hours and keep the outage window as short as possible
- Never deactivate your payment gateway plugin, WooCommerce core, or your caching plugin without checking documentation first — some require a specific reactivation order
- Test checkout with a $0 or test-mode order immediately after each reactivation, not just the page loading
If you don't have a staging environment set up yet, our WooCommerce staging site guide covers exactly how to create one before making changes like this.
Common Plugin Conflict Scenarios
Some conflict patterns come up far more often than others. Here are the ones I see most frequently in client sites:
| Scenario | Typical Cause | Common Fix |
|---|---|---|
| Two caching plugins installed together | Both trying to control the same cache layer (e.g. WP Rocket + LiteSpeed Cache) | Use only one caching plugin; remove the other completely |
| Two SEO plugins active | Duplicate schema/sitemap output, conflicting meta tags | Deactivate and delete one entirely — never run two SEO plugins together |
| Page builder + theme's own builder | Both loading competing CSS/JS frameworks | Pick one builder system; disable the other's front-end scripts |
| Security plugin + backup plugin timing out | Both scanning files simultaneously during scheduled tasks | Stagger scheduled scan/backup times in each plugin's settings |
| WooCommerce checkout breaks after a payment gateway update | Gateway plugin using an outdated WooCommerce hook that changed | Update WooCommerce core and the gateway plugin to matching current versions |
| Popup/slider plugin breaks mobile menu | Conflicting jQuery versions loaded by each plugin | Enable "load jQuery from theme" setting, or contact developer for a jQuery-safe version |
Once You Find the Culprit: How to Fix It
Finding the conflicting plugin is half the job. Here's how to actually resolve it, in order of preference:
Option 1: Update both plugins
Many conflicts are simply outdated code colliding with a newer WordPress core or PHP version. Check Plugins → Installed Plugins for pending updates on both plugins involved and apply them — this alone resolves a large share of conflicts.
Option 2: Check the plugin's support forum or changelog
Search "[plugin name] conflict with [other plugin name]" on the WordPress.org support forum. Known conflicts are usually already documented, often with a specific setting to change or a compatibility patch available.
Option 3: Adjust load order
Some conflicts are resolved simply by changing which plugin loads first. This usually requires a small code snippet using WordPress's plugin load-order filters — this is where a developer becomes useful if you're not comfortable editing PHP.
Option 4: Find a replacement plugin
If neither plugin has been updated recently and no fix exists, look for an actively maintained alternative that does the same job without the conflict.
Option 5: Custom code fix
For business-critical conflicts (like a broken checkout) where no plugin update or replacement solves it, a small custom code snippet can often isolate the conflicting function without needing to remove either plugin. This is the approach we use most often for custom WooCommerce fixes when off-the-shelf solutions run out.
✓ Good signs you can fix this yourself
- You identified the conflict using the steps above
- An update or setting change resolves it
- It's not affecting checkout or payments
- You have a recent backup as a safety net
✗ Signs to bring in a developer
- The conflict requires custom code to fix
- It's affecting live orders or payments
- Deactivating plugins didn't fully resolve it (deeper theme/core issue)
- You're not comfortable with FTP or editing wp-config.php
How to Prevent Plugin Conflicts Going Forward
- Keep your plugin count reasonable — more active plugins means more possible collision points
- Always test updates on staging first, especially for WooCommerce stores
- Never run two plugins that do the same job (two SEO plugins, two caching plugins, two security plugins)
- Read the changelog before updating major plugins — look for "breaking changes" notes
- Remove plugins you're not actively using, don't just deactivate them
- Keep WordPress core, PHP version, and all plugins updated together — mismatched versions are a leading cause of conflicts
DIY vs Hiring a Developer
Most simple plugin conflicts — the ones fixed by an update, a setting change, or removing a duplicate plugin — are entirely manageable yourself using the steps above, usually in 15–30 minutes and at zero cost.
Where it makes sense to bring in a WordPress developer: the conflict is affecting a live WooCommerce checkout, the fix requires custom code, you've tried the steps above without success, or you simply don't have the time to work through the process yourself. Developer-assisted troubleshooting for a plugin conflict typically runs $75–$200 depending on complexity, and includes both the fix and a hardening pass so the same issue doesn't recur after the next update.
Site Broken After a Plugin Update?
I'll diagnose the conflict, fix it, and make sure it doesn't come back after the next update — usually same day.
Get a Free Quote →Frequently Asked Questions
How do I know if it's a plugin conflict or just a bug in one plugin?
Deactivate every plugin except the one you suspect. If the error still happens with only that plugin active, it's a bug within that plugin, not a conflict. If the error only appears when it's active alongside a specific other plugin, that confirms a true conflict between the two.
Is it safe to deactivate all my plugins to test for a conflict?
Yes, deactivating doesn't delete a plugin or its settings — reactivating restores everything exactly as it was. The main risk on a live WooCommerce store is a temporary gap in checkout functionality, which is why we recommend testing on a staging site for active stores.
Can two plugins conflict even if neither has a bug?
Yes. This is the most common type of conflict — both plugins work perfectly on their own, but collide when both try to use the same function name, JavaScript library, or database hook at the same time.
Why did my site break right after a WordPress core update, not a plugin update?
The same diagnosis process still applies — a core update can expose an existing conflict between an outdated plugin and the new WordPress version. Follow the steps above; the plugin causing it usually hasn't been updated in over a year.
How much does it cost to fix a WordPress plugin conflict?
If you can diagnose and fix it yourself using the steps in this guide, it costs nothing beyond your time. Hiring a developer for diagnosis and a fix typically runs $75–$200, depending on whether it requires custom code or just an update/setting change.
Will I lose any content or settings by deactivating a plugin to test?
No. Deactivating a plugin does not delete its data or settings — those remain in your database. The only exception is if you also click "Delete" from the plugins list, which is a separate action from deactivating.
What if deactivating all plugins doesn't fix the problem?
That means the issue isn't a plugin conflict — it's more likely a theme conflict, a core file issue, or a server/PHP version problem. Try switching to a default WordPress theme next; if the issue persists even then, the cause is likely server-side and worth a developer's review.
Can a plugin conflict happen even after months of both plugins working fine together?
Yes — this is actually one of the most common patterns. Both plugins can coexist fine for months, then one of them pushes an update that changes how it hooks into WordPress, and suddenly the conflict appears. This is exactly why testing updates on staging before applying them live matters, even for plugins that have never caused problems before.