If you’ve ever inspected a WordPress site’s page source, you’ve likely spotted a small file called jquery-migrate.min.js loading on nearly every page, whether it’s actually needed or not. It’s a leftover compatibility layer from an era of jQuery development that most modern WordPress sites have already moved past.
What jQuery Migrate Actually Does
jQuery Migrate is a compatibility layer. When jQuery updates to a new major version, some older functions get removed or changed, and jQuery Migrate intercepts calls to those deprecated functions and makes them work anyway, logging console warnings about the outdated code being used. In short, it exists so that JavaScript written for older versions of jQuery keeps functioning even after jQuery’s own developers deliberately removed the underlying APIs it depended on.
Why WordPress Started Including It
WordPress began bundling jQuery Migrate with WordPress 3.6, specifically to smooth the transition from older jQuery 1.x code to newer jQuery 3.x versions. When WordPress 5.6 shipped with jQuery 3.5 in December 2020, the update risked breaking older plugins still relying on deprecated jQuery patterns, so WordPress included jQuery Migrate as a safety net to prevent those plugins from failing outright.
Who Actually Still Needs It
In practice, jQuery Migrate exists specifically for themes and plugins carrying older dependencies that haven’t been updated to match current jQuery standards — it helps that older code continue talking to newer jQuery versions. If your theme and plugins are reasonably up to date, this compatibility script does essentially nothing except add extra weight to every page load. Page builders in particular tend to lag behind on jQuery updates, so sites running tools like Divi, Elementor, Thrive Architect, or Visual Composer are generally advised to leave jQuery Migrate enabled rather than risk breaking builder functionality.
The Performance Cost
The file itself is small, around 10 KB minified, but it loads as a direct dependency of jQuery, which means it’s render-blocking — it has to be downloaded and parsed before jQuery itself can execute. On a site with a genuinely current theme and plugins, that’s 10 KB of JavaScript being loaded and parsed on every single page for functionality nothing actually calls anymore.
It Also Masks Outdated Code
Beyond the performance cost, jQuery Migrate has a subtler downside: it silently fixes deprecated code instead of letting it visibly break. That might sound helpful on the surface, but it means a site could be running plugins with seriously outdated JavaScript without the site owner ever realizing it. Removing jQuery Migrate forces those underlying issues to surface, making it easier to identify which plugins genuinely need updating.
Is jQuery Migrate Still Enabled by Default?
Notably, jquery-migrate.min.js is no longer enabled by default starting with WordPress 5.5 and higher — themes and plugins have to explicitly request it as a dependency for it to load. Despite this, it remains common to see it still loading on many sites, since a large number of themes and plugins continue to declare it as a dependency out of caution.
The Bigger Picture: Is jQuery Itself Still Necessary?
Looking more broadly, every problem jQuery originally solved is now handled natively by modern browsers. jQuery 3.7 weighs 87KB uncompressed (30KB gzipped), and loading it adds real measurable cost — on mid-range mobile devices, it can add 150-300ms to Total Blocking Time, and its event delegation system adds overhead that measurably worsens Interaction to Next Paint scores. Current WordPress tooling has largely moved past jQuery too: block themes render without it, and the modern block editor scaffold builds on React rather than jQuery. WordPress core still bundles jQuery 3.7.1 for backward compatibility, but on greenfield projects, there’s no real technical reason to add jQuery in 2026. Its relevance today survives mainly in maintenance work — legacy themes with dozens of jQuery-dependent plugins, page builders that hard-require it, or admin-only scripts where jQuery is already loaded regardless.
How to Check and Remove It Safely
You can confirm whether jQuery Migrate is loading on your site by viewing your page source and searching for “jquery-migrate,” or by checking the Chrome DevTools console for related warnings. If your theme and plugins are current and you’re not running a page builder with known jQuery lag, removing it is generally safe and can be done through a small code snippet or a dedicated plugin, which typically works by removing jquery-migrate from jQuery’s own dependency list and deregistering it entirely so nothing can load it standalone. Most tools that offer this cleanly limit the change to the front end only, leaving the WordPress admin area untouched.
Join The Discussion
jQuery Migrate is one of those quiet, easy-to-overlook files that many WordPress sites carry around without ever needing it. Have you checked whether your site still loads jquery-migrate.min.js, and did removing it cause any unexpected breakage with your theme or plugins? Share your experiences, questions, or troubleshooting tips below.