Slow WordPress sites have higher bounce rates and fewer conversions. The Perfmatters plugin was created by web performance geeks to speed up your site!

Plugin Version: 2.6.9
 
WordPress plugin Perfmatters

Plugin Features

The main path that plugin helps velocity over thine website online is by means of disabling things as would possibly now not stand old of your site. For example, by means of non-appearance emojis load about every individual page concerning thy site. If you don’t use them, it is honestly slowing it down. By disabling it, the script no longer masses yet then it reduces you standard range on HTTP requests or your page size. Another full-size optimization is in conformity with government you publish revisions. These may rapidly admit over you database yet slow below your site. By limiting them ye can ensure a fast or abrupt database.

As you execute parley below, the entirety is a one-click toggle. There is additionally a on hand tooltip subsequent in imitation of every some as links in conformity with our knowledgebase thesis over the optimization. This path thou can analyze greater about where such does or why thou might need disable such yet leave such enabled.

The Perfmatters plugin additionally now has a Scripts Manager built in. This lets in ye after disable scripts concerning a by post/page basis. This is entirely powerful and be able extensively extend the speed regarding you WordPress web sites (especially thine homepage).

Specifications:

Release date: 06-09-2017
Last updated: 07-10-2026
Type: Paid
License: GPL 
Subject: Core Enhancements
Compatibility: W5.x W6.x
Includes: Plugin
Language packs: English
Developer: ForgeMedia

Rating:
4.5446428571429 1 1 1 1 1 (224 Votes)

Download by subscription!

You need to log in on the site and purchase a club subscription!

Share with your friends!

 

A Practical Guide to Configuring Perfmatters to Speed Up WordPress

Think of Perfmatters not as a "make my site fast" button, but as a set of precise controls for WordPress: disable what you do not need, unload unnecessary files from pages, carefully defer scripts, prepare critical images, and clean up accumulated data. In this guide, we will look at how to approach configuration without putting the public-facing site at risk, what to check after each step, and where the plugin's most useful modes are located.

Perfmatters guide cover with a WordPress optimization map
The overall workflow is simple: measure first, then apply targeted settings and verify the outcome on real pages.

This guide is intended for a site owner, webmaster, or developer who already has access to the admin dashboard and wants to use Perfmatters thoughtfully. We will not cover purchasing, payment, or license activation. The focus here is different: how to prepare, which settings to enable first, how to work with Script Manager, when to use Remove Unused CSS and Delay JavaScript, and how to avoid breaking forms, carts, menus, or analytics.

The main idea is straightforward: speeding up a site with Perfmatters should be done in stages. If you enable everything at once, it becomes hard to tell which setting helped and which one caused a conflict. It is far more reliable to move from safe switches to more aggressive features, clearing cache and testing the page as a guest after each stage.

What problem the plugin solves and where it is most useful

Perfmatters belongs to the class of performance optimization plugins, but its role is different from that of a traditional caching plugin. It should not replace your entire caching stack at the hosting, CDN, or dedicated cache-plugin level. Its strength is controlling unnecessary code and WordPress behavior at the page level: disabling unneeded core features, managing CSS and JavaScript, serving fonts locally, running analytics locally, preloading resources, lazy loading, cleaning up the database, and using Script Manager.

This approach matters most on sites where the problem is not just a slow server. Often, a page is slow because a contact form loads its files on the homepage, a slider is enqueued on every post, WooCommerce adds requests even on informational pages, or the theme or page builder outputs a large amount of unused CSS. Perfmatters helps you do more than just "compress everything" - it lets you address the root cause more directly.

How it differs from a caching plugin

A caching plugin usually creates a static copy of the page, handles browser caching, minification, cache preloading, and sometimes image optimization. Perfmatters works alongside that kind of tool and covers different tasks: disabling an unnecessary request here, preventing a specific file from loading on a particular URL there, or delaying script execution until user interaction.

That is why a useful setup often looks like this: server-side or plugin-based caching handles fast page delivery, while Perfmatters makes sure the visitor's browser receives fewer unnecessary resources. The important part is avoiding duplicate functionality in two places. If CSS minification is already enabled in another tool, do not turn on the same minification again without testing.

Where the impact is usually more noticeable

The biggest gains usually show up on sites with many plugins, page builders, advertising and analytics scripts, WooCommerce, forms, tables, maps, popups, and social widgets. The more conditional features are loaded "just in case," the more value there is in unloading them selectively.

On a minimal blog with a lightweight theme, solid hosting, and two plugins, the effect may be more modest. That is not a weakness of the product. It simply means there is already very little unnecessary code, and the main bottleneck may be images, the server, third-party ads, or a poorly built theme.

Who Perfmatters is a good fit for, and when a different approach makes more sense

The plugin is a strong fit for users who are willing to test the site after making changes. It does not require programming for basic use, but many of its features affect how CSS, JavaScript, and plugins load. That means the user needs to understand that a fast page is not a good result if the form, menu, or shopping cart no longer works.

Good use cases

  • A content site or blog where forms, tables, widgets, and social buttons are only needed on some pages.
  • A site built with Elementor, Divi, Bricks, GeneratePress, Kadence, or a similar stack where CSS, fonts, and scripts need careful tuning.
  • A WooCommerce store that needs to reduce load on regular pages without breaking the cart, product page, or checkout.
  • An agency or freelancer site where the same baseline settings need to be reused across multiple projects, with exceptions tested separately.
  • A project with a large number of third-party scripts where analytics, pixels, ads, or chat should not block the above-the-fold experience.

When the plugin may be unnecessary

Perfmatters will not solve bad hosting, oversized source images, theme errors, or an excessive amount of third-party advertising. It is also not a substitute for a sound site architecture. If the homepage is built from a massive page-builder layout, dozens of videos, and unoptimized images, the content and template need to be cleaned up first.

It is also not a good idea to use Perfmatters as the only tool for a fully cached store or a high-traffic site if there is no proper page cache on the server. In that case, the plugin helps in the browser, but it does not address server response time, HTML caching, or CDN delivery.

What to check before installation and first-time setup

Before using any optimization plugin, you need a baseline. Without one, you will not know whether the site actually got faster, and you will not be able to roll back a questionable change quickly. Preparation takes less time than trying to figure out why the menu broke after enabling a few aggressive options.

Capture your baseline metrics

Select 3 to 5 representative URLs: the homepage, a blog post, a page with a form, an important landing page, and, if you run a store, a product page or cart page. Test them in PageSpeed Insights, Chrome DevTools, or GTmetrix. Do not chase a single score. Look at LCP, CLS, request count, CSS/JS size, third-party domains, and resources that are loading on pages where they are not needed.

It is helpful to save screenshots or at least note which warnings appear repeatedly. If "Reduce unused CSS" shows up across all pages, that is one kind of issue. If the problem comes from third-party analytics, you need a different approach. If LCP is being held back by a hero image, start by checking critical image preloading and lazy loading, not Script Manager.

Prepare a safe environment

  • Create a backup of the site and database, especially if you plan to use database cleanup.
  • If you have a staging site, repeat the settings there first.
  • Make sure you can clear the theme cache, cache plugin, server cache, and CDN.
  • Check which features are already enabled in another optimization plugin so you do not duplicate minification, delay JS, or CSS removal.
  • For WooCommerce, prepare a list of critical pages in advance: product, cart, checkout, and account.

Practical rule: enable one group of settings at a time, test the site as a guest, clear cache, and only then move on to the next group. It is slower on day one, but much faster when you need to diagnose a problem.

Installation and initial checks in the admin dashboard

After installing the ZIP file through Plugins and Add New, the main settings are located under Settings and Perfmatters. In this guide, we are not focused on how you obtain the file, but on the first steps after the plugin menu appears in the WordPress admin area.

Your first pass through the interface

Open the settings page and review the sections: general toggles, resource handling, lazy loading, CSS, JavaScript, fonts, analytics, CDN, database, tools, and Script Manager. Do not enable everything at once. On the first pass, the goal is different - understand where each optimization category lives and which sections overlap with the caching plugin you already have installed.

  1. Make sure the admin area opens without errors and that settings can be saved.
  2. Enable only safe baseline toggles that do not affect critical site functionality.
  3. Clear cache and open the homepage in a private browser window.
  4. Check the menu, search, contact form, mobile navigation, and interactive blocks.
  5. Run another speed test for one URL, but do not draw conclusions from a single run.

Why you should not start with aggressive options

Delay all scripts, Remove Unused CSS with original stylesheet removal, MU Mode, and bulk plugin unloading through Script Manager can deliver strong results, but they are also the features most likely to require exclusions. Start with functions that are easier to test and roll back. Then move on to page-level optimization where you can clearly see real unnecessary resources.

Your post-installation settings map: a safe order for enabling features

The Perfmatters documentation includes recommended starting settings, but in practice it is easier to think in layers. Each layer addresses a different part of page loading. This order helps you avoid chaos because you always know exactly what you are checking after you save.

Perfmatters settings map after installation
It is best to enable settings in layers: general toggles, resources, CSS and JavaScript, fonts, images, and then targeted rules in Script Manager.

Layer 1: core WordPress toggles

In the general settings, you can disable WordPress features that a specific site does not need: extra built-in elements, certain WooCommerce features, some core scripts, Heartbeat behavior, and other small sources of overhead. Not every toggle is mandatory. For example, if the site relies on emoji, embeds, or the REST API for a real feature, there is no reason to disable them.

A good approach is to enable only what you understand. If a setting sounds like "disable a feature," ask yourself who on the site actually uses it. If nobody does, enabling it is safer. If you are unsure, leave it off until you can run a separate test.

Layer 2: lazy loading and critical images

Lazy loading helps prevent images, iframes, and videos from loading before the user needs them. But above-the-fold content requires the opposite logic: the main image, logo, or large hero block should appear quickly. That is why it makes sense to combine lazy loading with critical image preloading. Perfmatters includes a setting in its documentation for the number of leading images that can be preloaded automatically.

For a typical page, 2 to 3 critical images are often enough. More is not always better, because the browser sets its own priorities, and extra preloads can end up competing with CSS and fonts. After enabling this, check the waterfall: the important image should move higher, while images below the fold should not load immediately.

Layer 3: CSS and JavaScript

Minification, deferred loading, unused CSS removal, and exclusions all need testing. If you are already using WP Rocket, LiteSpeed Cache, FlyingPress, Autoptimize, or a server-side optimizer, first decide exactly where each function will be enabled. The same optimization enabled in two plugins often creates a conflict instead of a speed boost.

For CSS, start with a mode that preserves a fallback. For JavaScript, use exclusions if menus, sliders, forms, map widgets, the cart, or analytics stop working. The more heavily the site depends on a page builder, the more carefully you need to test interactive elements.

What to leave to the cache plugin and what to hand off to Perfmatters

If the site already has a full-featured caching plugin, split responsibilities up front. Page caching, cache preloading, exclusion rules for logged-in users, and automatic cache clearing after content updates usually belong with the cache plugin or hosting. Perfmatters is better suited for the areas that require precise control over unnecessary code: Script Manager, local fonts, local analytics, critical images, disabling unnecessary WordPress features, and targeted CSS/JS exclusions.

This division of responsibility reduces the number of problematic overlaps. For example, if the caching plugin is already minifying CSS and Perfmatters is also removing unused CSS, do not enable another CSS combine step on top of that. In modern setups, file combining often brings little benefit and can interfere with accurate used CSS generation. It is better to identify the specific file slowing the page down and solve the problem with an exclusion or by disabling the resource at the URL level.

Which settings not to touch without a clear reason

Some toggles look harmless but depend on the theme and plugins in use. Removing jQuery Migrate, aggressive Delay all scripts, fully removing original stylesheets, disabling the REST API, or applying deep MU Mode rules should only be done once you understand that the site has no feature depending on them. That does not mean the settings are bad. It means they require a control scenario: a page, a user action, an expected result, and a rollback path.

Layer 4: fonts, analytics, and CDN

Local Google Fonts can eliminate unnecessary requests to a third-party domain and give you more control over caching. Local analytics can serve the analytics file from your own server or CDN, but it is important not to load Google Analytics twice. CDN rewrite is useful if you actually serve static files from a CDN URL and understand which directories are being rewritten.

Script Manager: targeted resource unloading without blind optimization

Script Manager is one of the most product-specific features in Perfmatters. It does not open as a regular settings page, but on a specific front-end page through the admin bar or the ?perfmatters parameter. That makes sense: you see the files for the exact URL you are optimizing.

The interface groups resources by plugin and theme. You can leave a file enabled, disable it on the current URL, disable it globally with an exception for a specific page, or apply the rule to post types, archives, users, or devices. That level of control is especially useful for forms, maps, tables, social buttons, and widgets that are not needed on every page.

An example of the unload logic

Suppose Contact Form 7 is only used on the contact page, but its CSS and JavaScript still load on the homepage and in blog posts. In Script Manager, you can open the homepage, find the Contact Form 7 group, disable it globally, and add an exception for the contact page. After saving, the homepage stops loading unnecessary files, while the form continues working where it is actually needed.

What to check after creating the rule

  • On the page where the resource is disabled, the file should disappear from the source code or the Network panel.
  • On the exception page, the form, map, table, or widget should work exactly as before.
  • After clearing cache, the rule should still apply for a guest visitor, not just for the administrator.
  • Global View should not contain outdated or random rules that are difficult to explain.

Testing Mode and Global View

Testing Mode limits the configuration to logged-in administrators. That is useful when you are not yet sure which files can be disabled. You test the changes yourself first, then turn off Testing Mode and apply the rules to all visitors. Global View shows the rules already created across the site and helps you keep track of what has been disabled on individual pages.

MU Mode and why it requires caution

MU Mode expands what Script Manager can do: it can disable not only enqueued CSS and JavaScript, but also deeper plugin behavior, including requests, hooks, and inline code. That is powerful, but the risk is higher. If regular Script Manager disables a file, MU Mode can effectively prevent the plugin from running on the page at all.

Use MU Mode only after testing. The Perfmatters documentation specifically warns that existing plugin-level disables begin to behave more broadly. Enable Testing Mode first, verify critical pages, and keep the emergency path in mind through the ?perfmatters&mu_mode=off parameter, which lets you open a page without MU settings taking effect.

Remove Unused CSS and Delay JavaScript without breaking the interface

These two features often produce visible gains in PageSpeed Insights, but they require more attention than ordinary toggles. They interfere with the order in which resources load, which means they can affect above-the-fold content, dropdown menus, sliders, forms, videos, maps, product filters, or the cart.

Configuration diagram for Remove Unused CSS and Delay JavaScript in Perfmatters
The CSS and JavaScript workflow should be built around verification: enable it, clear cache, open the page as a guest, add exclusions, and test again.

How to approach Remove Unused CSS

This feature analyzes the styles that are actually used and lets you avoid sending unnecessary CSS to visitors. The settings include a used CSS processing method and behavior for the original stylesheets. A gentler option keeps a fallback through delay or async behavior, while a more aggressive one removes the original styles and more often requires exclusions.

For most sites, it is more reasonable to start with an external used CSS file and fallback behavior that does not cut everything off at once. If part of the design disappears after enabling it, do not disable the entire plugin right away. Open the specific page first, identify the broken block, and add an exclusion for the selector or stylesheet. The Perfmatters documentation separately lists common exclusions for blocks, comments, page builders, and dynamic styles.

Also make sure to check pages where content changes more often than usual: search, catalog filters, review pages, archive pages, dynamic builder blocks, AJAX results, and pages where the theme generates CSS on the fly. In those areas, speed test results are not the only thing that matters. Visual stability matters too: the blocks should look the same on the first load, after refreshing the page, at mobile widths, and after clearing cache.

When to clear used CSS

After a design change, theme update, CSS edit, page-builder change, or the addition of a new block, clear used CSS and every cache layer. If only one page has changed, you can clear used CSS at the individual post or page level instead of doing it globally. It is best to test in a private window, because an administrator session may show a different set of resources.

How to approach Delay JavaScript

Delay JavaScript postpones script execution until user interaction. Perfmatters offers two approaches: delay only specific scripts, or try to delay everything and then add exclusions. The first option takes more time to configure, but it is more predictable. The second is more aggressive and useful when you need to quickly remove the impact of third-party scripts, but it requires careful testing.

Start with analytics, pixels, advertising scripts, iframes, chat tools, and widgets that are not needed for the above-the-fold experience. If navigation, a slider, a form, search, or the cart breaks, add an exclusion by filename or a unique inline-script string. Perfmatters includes quick exclusions for common solutions, but you still need to test the actual site.

For a commercial site, keep a short "do not delay without separate testing" list: checkout, form validation, anti-spam, payment elements, login, mini-cart, catalog search, and any scripts that affect lead submission or order completion. That is not a ban on optimization. It is a reasonable risk boundary. Start with a gentler setup, then add delay selectively where it does not change functionality.

Do not blindly delay everything you see in Network. Some scripts are responsible for accessibility, the mobile menu, form validation, shipping geolocation, or the cart. If a feature affects a purchase or form submission, test first and make it permanent only after that.

Fonts, images, analytics, and the database as separate performance layers

WordPress performance is not just about CSS and JavaScript. Perfmatters also covers several related areas that often go overlooked: local delivery of Google Fonts, local analytics, preloads, lazy loading, and database cleanup. You do not have to enable all of them, but you should understand what each one does.

Local Google Fonts

The Local Google Fonts feature finds Google Fonts links, downloads the files locally, and creates a local stylesheet in the Perfmatters cache directory. This reduces requests to a third-party domain and gives you control over caching. After enabling it, open the page as a guest, inspect the source code, and make sure the fonts are actually loading locally.

If the theme adds fonts in a nonstandard way, such as through @import, automatic detection may not work in every case. In that situation, it is better to review the loading waterfall than to assume everything is working just because the toggle is enabled.

Local analytics

Local Analytics can serve the Google Analytics file from your own server or CDN. That helps performance, but there is one important risk: do not load the same tracking setup in two different ways. If Site Kit, MonsterInsights, the theme, or custom code is already inserting GA4, configure only one insertion source. Otherwise, your analytics data may become inaccurate.

Resource preloading

Preload is meant for resources that need to arrive early: a font, a hero image, critical CSS, or another important file. But preload is not a universal speed booster. If the URL is rewritten through a CDN, uses a query string, or the file is combined by another plugin, you may accidentally load the same resource twice. Always verify that the URL in the source code matches what you see in the Network panel.

Database cleanup

The Database section removes revisions, auto-drafts, spam, transients, and optimizes tables. The documentation explicitly warns that these actions are irreversible. That is why a backup is required before cleanup. For regular maintenance, you can use a schedule, but do not enable aggressive cleanup unless you understand exactly what is being removed.

Practical scenario: unload the homepage while keeping the contact form intact

The easiest way to learn Perfmatters is to take one real page and work through the whole process from measurement to verification. Below is an example for a service business website: the contact form exists only on the contact page, the homepage has a hero image, several service sections, and analytics. The goal is to speed up the homepage without breaking the form.

Practical example of using Perfmatters on a WordPress homepage
This hands-on workflow follows a simple path: identify the unnecessary resource, apply a rule, verify the exception, and compare the result.

Goal

Reduce the number of unnecessary requests on the homepage, delay nonessential third-party scripts, preload the above-the-fold image, and keep the contact form working only on its own page.

Preparation

  • Use the homepage and contact page as your two control points.
  • Capture the baseline loading waterfall and the list of form-related files.
  • Enable Testing Mode in Script Manager if the site is already getting traffic.
  • Check which caching plugin is responsible for minification and page caching.

Configuration steps

  1. Enable Script Manager in the Perfmatters settings under the Tools section.
  2. Open the homepage on the front end and launch Script Manager from the admin bar.
  3. Find the resources belonging to the contact form, map, or any other plugin that is not used on the homepage.
  4. Disable them globally and add an exception for the contact page or the relevant post type.
  5. In the lazy loading settings, enable handling for images and iframes, but exclude above-the-fold elements if they end up being delayed.
  6. Enable preloading for 1 to 3 critical images, then verify that the hero image moves higher in the waterfall.
  7. For analytics, use Delay JavaScript or Local Analytics, but make sure the tracking code is not being inserted twice.
  8. Clear the Perfmatters cache, the cache plugin, the server cache, and the CDN cache if one is in use.

Verifying the result

Open the homepage as a guest and check the menu, hero, slider, buttons, popup blocks, and any interactive elements. Then open the contact page and submit a test inquiry. If the form no longer works, temporarily re-enable the resource or add an exclusion specifically for the form page.

A common nuance that gets missed

Sometimes a resource looks unnecessary on the homepage, but the theme uses it for the mobile menu or an animation. That is why disabling something by plugin name alone is not always enough. First look at what changed visually, then check the browser console. If JavaScript errors appear in the console, restore the last file you disabled and create a more precise rule.

How to validate the result: not just PageSpeed, but real site behavior

After configuring Perfmatters, you cannot rely on a single green score. A synthetic test is useful, but the real site still needs to behave properly: forms submit, menus open, products can be added to the cart, images do not jump around, analytics receives events, and the admin area does not become unpredictable.

Mini validation checklist

  • Open the site in a private window as a logged-out visitor.
  • Check the homepage, a post, a page with a form, the search page, a product page, and checkout if WooCommerce is installed.
  • Compare Network before and after to confirm that the resources you disabled are actually gone.
  • Check the browser console for JavaScript errors.
  • Test at mobile width, because some menus and sticky elements only break there.
  • Repeat the test after clearing every cache layer.

Which metrics to watch

LCP shows how quickly the main above-the-fold element appears. CLS helps you catch layout shifts. INP reflects interaction responsiveness. Request count and total page size show how much you have actually unloaded from the URL. But all of those numbers need to be tied back to specific actions: what you enabled, what you disabled, which resource disappeared, and which image started loading sooner.

If PageSpeed improves after enabling a feature but the form stops submitting in a real browser, that setting cannot be considered successful. In that case, add an exclusion or roll back the last feature. The real value of Perfmatters is precision, not the maximum number of enabled switches.

How to keep a change log

For a small site, a simple document is enough: configuration date, URL, enabled feature, what was tested, which exclusions were added, and what result was observed. For an agency project, it is better to keep that log alongside the site's technical documentation. A few months later, it helps you understand why a specific file is excluded on the contact page, why used CSS is disabled on search, or why WooCommerce pages are kept out of aggressive optimization.

This log becomes especially useful after updates to the theme, page builder, and WooCommerce. If behavior changes, you do not have to start the investigation from scratch. First review the latest Perfmatters rules, then check whether file handles, selectors, or the path to dynamic CSS have changed. That turns optimization into a managed configuration instead of a pile of forgotten toggles.

Useful targeted improvements for advanced configuration

In most cases, the interface is enough. But Perfmatters also includes documented filters for developers and administrators who need fine-grained control over specific features. Do not add code at any cost just for performance. First make sure the issue cannot be solved through the interface or an exclusion rule.

Example: disable Remove Unused CSS on the search page

Search pages often contain a dynamic set of results. If the search layout becomes unstable after enabling Remove Unused CSS, you can disable that feature only there by using a documented filter. Add the code through a child theme, Code Snippets, or the code snippets manager in Perfmatters. Do not modify WordPress core, the theme, or the plugin itself.

add_filter('perfmatters_remove_unused_css', function($enabled) {
    if (is_search()) {
        return false;
    }

    return $enabled;
});

After adding it, open the search page as a guest, clear cache, and inspect the source code. If the issue is gone, leave a short description on the snippet so it is clear later why it exists. To roll it back, simply disable the snippet and clear cache again.

When it is better not to use code

If you cannot explain which filter will run and where the problem actually is, do not add PHP. For most conflicts, interface-level exclusions are enough at first: exclude the page from Delay JavaScript, add a CSS selector to Remove Unused CSS, keep the form file from being delayed, disable a rule in Script Manager, or restore fallback behavior for the original stylesheets.

Common issues after configuration and how to diagnose them

Problems with optimization plugins almost always come down to one of three causes: a resource was disabled in the wrong place, a script ran too late, or CSS was removed or delayed without the exclusion it needed. What follows is not a universal list of every WordPress error, but a practical diagnostic guide specifically for Perfmatters scenarios.

Diagnostic diagram of Perfmatters issues after configuration
Start with the symptom and work backward to the last change: CSS, JS, Script Manager, MU Mode, cache, or the database.

The styling is gone or the above-the-fold area looks broken

Symptom: some blocks lose their styling, the mobile menu looks wrong, the hero section changes height, or product cards lose their formatting.

Likely cause: Remove Unused CSS removed a required selector, the original stylesheet is being delayed too aggressively, or the theme's dynamic CSS was not excluded.

What to check: temporarily disable Remove Unused CSS for the affected page, clear cache, and see whether the design comes back. If it does, start adding exclusions for the stylesheet or selectors. For page builders, check dynamic CSS files in /uploads/, /cache/, or the theme directory.

When to roll it back: if the page is critical for sales or lead generation, it is better to disable the feature temporarily on that URL and come back to exclusions later.

The menu, slider, form, or button stops working

Symptom: the element is visible but does not respond to clicks, the form does not submit, the dropdown menu does not open, or the slider freezes.

Likely cause: Delay JavaScript delayed a script that is needed before the first interaction, or Script Manager disabled a file on a page where it is actually required.

What to check: open the browser console, temporarily disable Delay JavaScript on that page, then restore it and add an exclusion for the specific file or inline string. If the issue appeared after using Script Manager, restore the last disabled resource and test the page again.

Script Manager redirects to the homepage or does not open

Symptom: when you try to open Script Manager, the site redirects to the homepage or the interface is unavailable.

Likely cause: a conflict with redirect rules, an SEO plugin, or a setting that strips URL parameters. The official Perfmatters documentation describes a case involving ugly URL redirects in Yoast SEO.

What to check: open Script Manager from the admin bar, then try the URL with ?perfmatters. If the redirect keeps happening, temporarily disable the conflicting redirect feature and test again.

MU Mode shows a warning or breaks the page

Symptom: you see a warning about the MU plugin file, a version mismatch, or the page loses important functionality after a plugin is disabled.

Likely cause: the server could not write the file to mu-plugins, the file is outdated, or the rule disabled the plugin more deeply than expected.

What to check: first turn off MU Mode and save the settings. For emergency access, use the ?perfmatters&mu_mode=off parameter. Then verify directory permissions through your normal site administration workflow or contact your hosting provider. Do not enable MU Mode on a live site without Testing Mode.

WooCommerce stops updating the cart

Symptom: the mini-cart does not update, the item count is wrong, or checkout behaves unpredictably.

Likely cause: cart fragments were disabled, cart-fragments.min.js was delayed, or Script Manager removed a WooCommerce resource from a page where it is required.

What to check: go through the customer flow: product page, add to cart, cart, and checkout. If the issue only appears with an empty cart or only in a theme with a mini-cart, check the Disable Cart Fragmentation setting and the option to delay cart fragments as a gentler alternative.

Required drafts or data disappeared after database cleanup

Symptom: you cannot restore an old revision, auto-drafts are gone, or transients you expected to see have been removed.

Likely cause: database cleanup removes data permanently, and that is normal behavior for this kind of operation.

What to check: before running cleanup again, create a backup and choose items carefully. For scheduled maintenance, include only the data types the site genuinely does not need.

Questions to answer before putting the configuration into regular use

Can Perfmatters be used together with a caching plugin?

Yes. The official site positions the plugin as compatible with caching plugins. But it is better not to enable the same functions in two places. Decide where minification lives, where delay JS lives, where lazy loading lives, and which tool is responsible for page caching.

Which settings should be enabled first?

Start with safe toggles, lazy loading, local fonts, and targeted Script Manager rules in Testing Mode. Leave Remove Unused CSS, Delay all scripts, and MU Mode for the second stage, once you already have baseline measurements and a clear list of critical pages.

Do you need Perfmatters if WP Rocket or LiteSpeed Cache is already installed?

It can still be useful as an additional layer of targeted unloading, especially through Script Manager. But if your current stack already covers all your needs and the site is stable, do not add the plugin just to squeeze in one more optimization layer.

What should you do if the form stops working after enabling Delay JavaScript?

Disable delay on that page or add an exclusion for the form scripts. After that, clear cache and submit a test inquiry as a guest. If the form is business-critical, do not leave it under aggressive delay without verification.

Can Remove Unused CSS be enabled on WooCommerce checkout?

You can test it, but carefully. Checkout, cart, and account are critical pages where dynamic styles and scripts are common. If visual issues appear, exclude the page from Remove Unused CSS or add precise exclusions.

Why did the PageSpeed score improve while the site still feels slow?

A synthetic score does not always reflect the real experience. Check TTFB, image sizes, third-party scripts, hosting, CDN, caching behavior, and actual user interactions. Perfmatters reduces unnecessary load, but it does not fix every possible cause of a slow site.

Is it worth using code snippets inside Perfmatters?

Yes, if you understand what the snippet does and can verify the result. The snippets manager in Perfmatters supports PHP, CSS, JS, and HTML, along with load conditions and safe mode. But random code from the internet without a trustworthy source is still a bad idea.

When Perfmatters is the right choice

Perfmatters is a strong fit for a site whose performance issues come from unnecessary resources, unused CSS, early loading of third-party scripts, sloppy plugins, and a lack of control at the individual page level. It is especially valuable when you are willing to configure the site not with one blanket switch, but through a clear sequence: measure, enable, verify, add an exclusion, and test again.

Before using it as part of your ongoing setup, make sure you have tested the key URLs, are not duplicating features from the caching plugin, know how to clear every cache layer, and understand which Script Manager rules have already been created. If this guide has helped you build a safe optimization plan, you can download the Perfmatters package and move on to testing it on a staging copy or rolling it out carefully in stages on the live site.

The best result comes not from enabling the highest possible number of features, but from having a clean configuration where every setting has a reason behind it. That is when the plugin stops being just another layer of magic and becomes a controlled tool for speeding up WordPress.

By OceanTheme.org Editorial Team

 

You are not logged in to post comments.