{"id":118316,"date":"2026-09-17T21:09:56","date_gmt":"2026-09-17T18:09:56","guid":{"rendered":"https:\/\/themeisle.com\/blog\/?p=118316&#038;preview=true&#038;preview_id=118316"},"modified":"2026-09-17T21:09:56","modified_gmt":"2026-09-17T18:09:56","slug":"wordpress-autoloaded-options-bloat","status":"publish","type":"post","link":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/","title":{"rendered":"WordPress Autoloaded Options: Find and Fix wp_options Bloat"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Your WordPress site feels slow, and you&rsquo;ve already done the obvious stuff. Caching plugin? Installed. Images compressed? Done. Yet pages still take a beat too long to start rendering. There&rsquo;s a decent chance the culprit is hiding somewhere most speed guides never look: the <code>wp_options<\/code> table in your database.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here&rsquo;s the short version. On a typical request, WordPress loads every autoloaded option into memory as one batch, using the persistent object cache when available and querying <code>wp_options<\/code> on a cache miss. That&rsquo;s by design. The problem is that plugins you deleted years ago can leave rows behind, still flagged to autoload, so WordPress keeps hauling that dead weight into memory.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p class=\"wp-block-paragraph\">In this guide you&rsquo;ll learn what autoloaded options actually are, how to measure yours with two safe, read-only SQL queries, which options are safe to flip, which ones you should never touch, and what kind of speedup you can honestly expect. Let&rsquo;s open the hood. &#128295;<\/p>\n\n\n    \r\n    <style>\r\n        :root {\r\n        --jtoc-progress-bar-color: #4267cf;\n        }\r\n                    .wpj-jtoc.--jtoc-theme-none.--jtoc-has-custom-styles {\r\n        --jtoc-width: 100%;\n--jtoc-toc-padding: 24px;\n--jtoc-toc-border: 1px solid;\n--jtoc-toc-border-color: #dedede;\n--jtoc-background-color: #f6f7f9;\n--jtoc-header-height: 20px;\n--jtoc-header-margin: 0;\n--jtoc-header-padding: 0;\n--jtoc-title-color: #393939;\n--jtoc-title-font-size: 1.2em;\n--jtoc-title-label-font-weight: 400;\n--jtoc-body-margin: 16px 0 0 0;\n--jtoc-body-padding: 0;\n--jtoc-headings-margin: 10px 0 0 0;\n--jtoc-link-font-size: 1em;\n--jtoc-link-font-weight: 400;\n--jtoc-link-color: #848484;\n--jtoc-link-color-hover: #4a66c8;\n--jtoc-link-color-active: #4a66c8;\n        }\r\n        .--jtoc-the-content{\r\ndisplay:none;\r\n}\r\n.--jtoc-is-active>.wpj-jtoc--item-content>a:before{\r\nmargin-left:3px;\r\n}\r\n.wpj-jtoc--nav>.wpj-jtoc--items li a::before{\r\ncontent:'\\203A';\r\ndisplay:block;\r\nfloat:left;\r\nheight:100%;\r\nfont-weight:700;\r\ncolor:#4267CF;\r\nline-height: 20px;\r\nmargin-right: 3px;\r\n}\r\n.sidebar .wpj-jtoc--toc{\r\nborder:0;\r\npadding:0;\r\n}\r\n.sidebar .wpj-jtoc--header,\r\n.sidebar .wpj-jtoc--body{\r\nbackground:transparent;\r\n}\r\n\r\n.sidebar .--jtoc-is-active>.wpj-jtoc--item-content>a{\r\ntext-decoration:none;\r\n}\r\n.sidebar-left .widget-first{\r\nposition:sticky;\r\ntop:70px;\r\nmargin-bottom:1250px;\r\n}\r\n.sidebar-left{\r\ndisplay:none;\r\nmax-width:300px;\r\nposition:absolute;\r\nleft:-330px;\r\ntop:0;\r\nheight:100%;\r\n}\r\n@media only screen and (max-width: 1900px) {\r\n.single-post .sidebar-left{\r\ndisplay:none !important;\r\n}\r\n.--jtoc-the-content{\r\ndisplay:block;\r\n}\r\n@media only screen and (max-width: 400px) {\r\n.wpj-jtoc--item .wpj-jtoc--item-content{\r\nmargin-top:5px;\r\n}\r\n.wpj-jtoc--header-main .wpj-jtoc--title{\r\nfont-size:1.1em;\r\n}\r\n}    <\/style>\r\n\r\n\r\n    <!-- jtoc progress bar widget -->\r\n    <div class=\"wpj-jtoc--widget-progress --progress-top\">\r\n        <div class=\"wpj-jtoc--widget-progress-bar\"><\/div>\r\n    <\/div>\r\n\r\n<div id=\"wpj-jtoc\" class=\"wpj-jtoc wpj-jtoc--main --jtoc-the-content --jtoc-theme-none --jtoc-title-align-left --jtoc-toggle-icon --jtoc-toggle-position-right --jtoc-toggle-1 --jtoc-header-as-toggle --jtoc-headings-full-row-clickable --jtoc-floating-toc-top --jtoc-floating-has-shadow --jtoc-has-custom-styles --jtoc-is-unfolded\" >\r\n            \r\n    <!-- TOC -->\r\n    <div class=\"wpj-jtoc--toc \">\r\n                            <div class=\"wpj-jtoc--header\">\r\n                <div class=\"wpj-jtoc--header-main\">\r\n                                        <div class=\"wpj-jtoc--title\">\r\n                        <!-- <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-columns-3\"><rect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\"\/><path d=\"M9 3v18\"\/><path d=\"M15 3v18\"\/><\/svg> -->\r\n                        <span class=\"wpj-jtoc--title-label\">Table of contents<\/span>\r\n                    <\/div>\r\n                                                        <\/div>\r\n            <\/div>\r\n                                <div class=\"wpj-jtoc--body\">\r\n                        <nav class=\"wpj-jtoc--nav\">\r\n                <ol class=\"wpj-jtoc--items\"><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#what-are-autoloaded-options\" title=\"What are autoloaded options, exactly? \u2699\ufe0f\" data-numeration=\"1\" >What are autoloaded options, exactly? \u2699\ufe0f<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#back-up-first\" title=\"Before anything else: back up your database\" data-numeration=\"2\" >Before anything else: back up your database<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#step-1-check-autoload-size\" title=\"Step 1: Check how much data WordPress autoloads\" data-numeration=\"3\" >Step 1: Check how much data WordPress autoloads<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#step-2-find-offenders\" title=\"Step 2: Find the biggest offenders\" data-numeration=\"4\" >Step 2: Find the biggest offenders<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#step-3-flip-or-delete\" title=\"Step 3: Flip the safe ones to \u2018no\u2019 (or delete the dead ones)\" data-numeration=\"5\" >Step 3: Flip the safe ones to \u2018no\u2019 (or delete the dead ones)<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#never-touch\" title=\"Options you should never touch \ud83d\udeab\" data-numeration=\"6\" >Options you should never touch \ud83d\udeab<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#realistic-expectations\" title=\"What kind of speedup should you expect?\" data-numeration=\"7\" >What kind of speedup should you expect?<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#wrapping-up\" title=\"Wrapping things up\" data-numeration=\"8\" >Wrapping things up<\/a>\r\n                    <\/div> <\/li><\/ol>            <\/nav>\r\n                                                        <\/div>\r\n            <\/div>\r\n<\/div>\r\n\n\n\n<h2 id=\"what-are-autoloaded-options\" class=\"wp-block-heading joli-heading jtoc-heading\">What are autoloaded options, exactly? &#9881;&#65039;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The <code>wp_options<\/code> table is WordPress&rsquo;s settings drawer. Each row has a name (<code>option_name<\/code>), a value (<code>option_value<\/code>), and an <code>autoload<\/code> flag. When that flag is on, WordPress loads the row into memory at startup on every single request, all autoloaded rows in one query. The core team built it this way because fetching everything at once is faster than running separate queries for your site title, active plugins, timezone, and the rest. The <a href=\"https:\/\/make.wordpress.org\/core\/2024\/06\/18\/options-api-disabling-autoload-for-large-options\/\" target=\"_blank\" rel=\"noreferrer noopener\">official developer note on the Options API changes<\/a> calls this technique &ldquo;autoloading&rdquo; and admits the default behavior led to many options being loaded on every page unnecessarily.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Since WordPress 6.6, the <code>autoload<\/code> column can hold more than the classic <code>yes<\/code> and <code>no<\/code>. New values like <code>on<\/code>, <code>off<\/code>, <code>auto<\/code>, <code>auto-on<\/code>, and <code>auto-off<\/code> let WordPress decide dynamically whether an option deserves the preload treatment. The old <code>yes<\/code>\/<code>no<\/code> values still work and behave like <code>on<\/code>\/<code>off<\/code>. Two more guardrails arrived in the same release: options larger than 150,000 bytes no longer get autoloaded by default, and Site Health (<strong>Tools &rarr; Site Health<\/strong>) now raises a critical warning, &ldquo;Autoloaded options could affect performance,&rdquo; once your autoloaded total passes 800 KB.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So where does the bloat come from? Mostly uninstall residue. You try a plugin, delete it, and its settings rows stay in <code>wp_options<\/code> with autoload still on. Some plugins also stash things that were never meant to load everywhere: debug logs, cached API responses, giant serialized arrays. Repeat that cycle for a few years on an active site and the autoload pile grows from kilobytes into megabytes.<\/p>\n\n\n\n<h2 id=\"back-up-first\" class=\"wp-block-heading joli-heading jtoc-heading\">Before anything else: back up your database<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">&#9888;&#65039; WARNING: Take a full database backup before you change anything in <code>wp_options<\/code>. A wrong edit here can white-screen your site or lock you out of wp-admin. Most hosts offer one-click backups, and phpMyAdmin&rsquo;s Export tab works too. If you have a staging site, practice there first.<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">To be clear about the risk levels: the SELECT queries below only read data, so they&rsquo;re completely safe to run. The UPDATE and DELETE statements near the end are the part where the backup matters. Don&rsquo;t skip it. &#128190;<\/p>\n\n\n\n<h2 id=\"step-1-check-autoload-size\" class=\"wp-block-heading joli-heading jtoc-heading\">Step 1: Check how much data WordPress autoloads<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Open your hosting control panel and launch phpMyAdmin (on cPanel or Plesk it&rsquo;s usually right on the main dashboard; managed hosts have an equivalent database tool). Pick your site&rsquo;s database in the left sidebar, then click the <strong>SQL<\/strong> tab and paste this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>SELECT ROUND(SUM(LENGTH(option_value)) \/ 1024) AS autoloaded_kb\nFROM wp_options\nWHERE autoload IN ('yes', 'on', 'auto-on', 'auto');<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Hit <strong>Go<\/strong> and you&rsquo;ll get one number: the total size of everything WordPress preloads on every page load, in kilobytes. The <code>IN<\/code> list covers all four values that current WordPress counts as autoloaded (that&rsquo;s exactly what the core function <code>wp_autoload_values_to_autoload()<\/code> returns, per the <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/add_option\/\" target=\"_blank\" rel=\"noreferrer noopener\">Options API reference<\/a>). If your site runs something older than WordPress 6.6, a plain <code>WHERE autoload = 'yes'<\/code> is enough.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">One gotcha: if your <code>wp-config.php<\/code> sets a custom <code>$table_prefix<\/code>, swap <code>wp_options<\/code> for your actual table name, like <code>abc123_options<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here&rsquo;s a real result from a nearly fresh WordPress 7.0.2 test install: 69 KB total, spread across 133 autoloaded rows:<\/p>\n\n\n<div class=\"wp-block-image blog-img-std-space\">\n<figure class=\"aligncenter size-full\"><img data-opt-id=642894507  fetchpriority=\"high\" decoding=\"async\" width=\"2088\" height=\"1400\" src=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png\" alt=\"Terminal showing three SQL queries on a local WordPress 7.0.2 database: 133 autoloaded rows totaling 69 KB, with rewrite_rules as the largest option at 33542 bytes\" class=\"wp-image-118847\" srcset=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1610\/h:1080\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 2088w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:300\/h:201\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 300w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1024\/h:687\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 1024w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:768\/h:515\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 768w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1536\/h:1030\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 1536w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1610\/h:1080\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 2048w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:50\/h:34\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 50w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:358\/h:240\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 358w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:592\/h:397\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 592w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:895\/h:600\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 895w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:221\/h:148\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 221w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:291\/h:195\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 291w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:201\/h:135\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 201w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1610\/h:1080\/q:mauto\/f:best\/dpr:2\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/wp-options-autoload-query-result-1.png 2x\" sizes=\"(max-width: 700px) 100vw, 700px\"><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">How do you judge your number? If it&rsquo;s anywhere near or above 800 KB, WordPress itself considers it a critical issue in Site Health. A lean site in the low hundreds of kilobytes (or less, like the test install above) has little to gain here. The sites that win big are the old ones with years of plugin churn, where the total quietly climbed into the megabytes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Not a fan of SQL? Install the free <a href=\"https:\/\/wordpress.org\/plugins\/performance-lab\/\" target=\"_blank\" rel=\"noreferrer noopener\">Performance Lab<\/a> plugin, built by the official WordPress Performance Team. It upgrades the Site Health check with a table of your autoloaded options, so you can review and disable the ones you don&rsquo;t need straight from wp-admin, no queries required. &#128269;<\/p>\n\n\n\n<h2 id=\"step-2-find-offenders\" class=\"wp-block-heading joli-heading jtoc-heading\">Step 2: Find the biggest offenders<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If your total looked chunky, the next query shows which options eat the most space. Same SQL tab, same deal:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>SELECT option_name, LENGTH(option_value) AS bytes\nFROM wp_options\nWHERE autoload IN ('yes', 'on', 'auto-on', 'auto')\nORDER BY bytes DESC\nLIMIT 10;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Reading the results is easier than it looks, because option names usually carry a prefix naming their owner. In the screenshot above, <code>rewrite_rules<\/code> tops the list at around 33 KB. That&rsquo;s core WordPress (it maps your pretty URLs to content) and it belongs there, so leave it alone. The <code>_transient_<\/code> rows are temporary cached data, and the <code>trp_<\/code> entries belong to an installed translation plugin.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">What you&rsquo;re hunting for instead:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Prefixes from plugins you uninstalled ages ago.<\/strong> If the plugin is gone, its rows are pure ballast. Prime cleanup candidates.<\/li>\n\n\n\n<li><strong>Huge values from active plugins that don&rsquo;t need to load everywhere.<\/strong> An import tool&rsquo;s settings or a backup plugin&rsquo;s log have no business loading on your homepage.<\/li>\n\n\n\n<li><strong>A pile of stale transients.<\/strong> Rows starting with <code>_transient_<\/code> are supposed to expire, but the expired ones can linger in the table.<\/li>\n<\/ul>\n\n\n\n<h2 id=\"step-3-flip-or-delete\" class=\"wp-block-heading joli-heading jtoc-heading\">Step 3: Flip the safe ones to &lsquo;no&rsquo; (or delete the dead ones)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Two situations, two different moves:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>The option belongs to a plugin you still use<\/strong>, but it&rsquo;s only needed on admin screens (importers, backup configs, analytics dashboards). Flip its autoload off. The data stays intact; WordPress just stops preloading it. Worst case, that one option costs a single extra query on the screens that actually use it. Fully reversible.<\/li>\n\n\n\n<li><strong>The option belongs to a plugin you deleted.<\/strong> Don&rsquo;t bother flipping it. Delete the row entirely. First double-check on the <strong>Plugins<\/strong> screen that the plugin is really gone, and confirm the prefix matches its name.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">To flip one option, the statement looks like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>UPDATE wp_options SET autoload = 'no' WHERE option_name = 'some_plugin_settings';<\/code><\/pre>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">&#9888;&#65039; CAUTION: Work one row at a time and always match the full, exact <code>option_name<\/code>. Never use <code>LIKE<\/code> wildcards in an UPDATE or DELETE on this table; one sloppy pattern can rewrite hundreds of rows. Reload your site after each change. To undo a flip, run the same statement with <code>'yes'<\/code> instead of <code>'no'<\/code>.<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">And to remove a row from a plugin that&rsquo;s definitely gone:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>DELETE FROM wp_options WHERE option_name = 'long_gone_plugin_settings';<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">For the transient pile, hand-cleaning is tedious. Deleting <code>_transient_<\/code> rows is generally safe because WordPress rebuilds them, but a cleanup plugin such as <a href=\"https:\/\/wordpress.org\/plugins\/wp-optimize\/\" target=\"_blank\" rel=\"noreferrer noopener\">WP-Optimize<\/a> purges the expired ones in one click, which beats eyeballing hundreds of rows. &#129529;<\/p>\n\n\n\n<h2 id=\"never-touch\" class=\"wp-block-heading joli-heading jtoc-heading\">Options you should never touch &#128683;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Some rows in <code>wp_options<\/code> are load-bearing. Flipping or deleting them won&rsquo;t speed anything up; it will break your site. Keep away from:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>siteurl<\/code> and <code>home<\/code>: your site&rsquo;s address. Change these and every page breaks.<\/li>\n\n\n\n<li><code>active_plugins<\/code>: the list of running plugins. Corrupt it and you can deactivate everything at once, sometimes with a white screen as a bonus.<\/li>\n\n\n\n<li><code>wp_user_roles<\/code>: the permission system. Damage it and you can lock yourself out of wp-admin.<\/li>\n\n\n\n<li><code>cron<\/code>, <code>rewrite_rules<\/code>, <code>template<\/code>, <code>stylesheet<\/code>: scheduling, URL routing, and your active theme. All core, all needed on every page.<\/li>\n\n\n\n<li><strong>Anything you can&rsquo;t confidently tie<\/strong> to a specific plugin, theme, or core feature. Unknown name? Leave it.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">One more rule: never hand-edit a serialized <code>option_value<\/code>. Those values look like <code>a:3:{s:4:\"name\";...}<\/code>, and every number in there is a character count. Change one character without updating the counts and the whole value corrupts. If you need to edit a value, use the plugin&rsquo;s own settings screen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A good rule of thumb: when in doubt, flip autoload instead of deleting. When still in doubt, leave the row alone. A few extra kilobytes never hurt anyone; a missing core option definitely will.<\/p>\n\n\n\n<h2 id=\"realistic-expectations\" class=\"wp-block-heading joli-heading jtoc-heading\">What kind of speedup should you expect?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Honest answer: it depends on how bad the bloat is. If your autoloaded total sits in the low hundreds of kilobytes, trimming it saves milliseconds you&rsquo;ll struggle to notice. On an old, plugin-heavy site autoloading megabytes of junk, the win is real, because it applies to every request that boots WordPress: the frontend, wp-admin, and AJAX calls alike. Admin screens in particular can&rsquo;t be papered over with page caching, so a leaner autoload pile makes the whole dashboard snappier too.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">What this fix won&rsquo;t do is just as important. Autoload cleanup does nothing for render-blocking JavaScript, oversized images, unoptimized fonts, or a slow host. If your bottleneck lives on the front end (and it often does), start with these <a href=\"https:\/\/themeisle.com\/blog\/speed-up-wordpress-quick-wins\/\">five quick wins to speed up WordPress<\/a> first, then come back here for the database hygiene.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Think of it like cleaning out a junk drawer: satisfying, occasionally eye-opening, and worth doing after any big plugin clear-out. Just don&rsquo;t expect it to fix a problem that was never in the drawer. &#128516;<\/p>\n\n\n\n<h2 id=\"wrapping-up\" class=\"wp-block-heading joli-heading jtoc-heading\">Wrapping things up<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Autoloaded options are one of those invisible taxes on every page load, and now you know how to audit yours:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>&#9989; Back up the database before touching anything.<\/li>\n\n\n\n<li>&#9989; Measure your autoload total with one safe SELECT (or the Performance Lab plugin).<\/li>\n\n\n\n<li>&#9989; List the biggest rows and identify them by prefix.<\/li>\n\n\n\n<li>&#9989; Flip admin-only options to <code>'no'<\/code>; delete rows from plugins you&rsquo;ve uninstalled.<\/li>\n\n\n\n<li>&#9989; Never touch core options like <code>siteurl<\/code>, <code>active_plugins<\/code>, or <code>wp_user_roles<\/code>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Have you checked your autoloaded size yet? What number did you find, and did anything surprising show up in your top ten? Let us know in the comments below! &#127881;<\/p>\n\n\n<style>.ticss-d144f107 strong{font-weight: 700;\n    letter-spacing: -0.2px;\n    line-height: 1.2;\n    display: inline-block;}<\/style>\n\n\n<div class=\"wp-block-columns speed-guide has-white-color has-text-color has-background has-link-color wp-elements-2f81f6c5526477b5b4d52d1ca4513949 is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\" style=\"background-color:#4267cf\">\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<figure class=\"wp-block-image size-medium\"><img data-opt-id=30701221  fetchpriority=\"high\" decoding=\"async\" width=\"300\" height=\"300\" src=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:300\/h:300\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png\" alt=\"speed guide\" class=\"wp-image-113040\" srcset=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:300\/h:300\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 300w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1024\/h:1024\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 1024w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:150\/h:150\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 150w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:768\/h:768\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 768w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:50\/h:50\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 50w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:240\/h:240\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 240w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:397\/h:397\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 397w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:600\/h:600\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 600w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:148\/h:148\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 148w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:195\/h:195\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 195w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:135\/h:135\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 135w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1080\/h:1080\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 1200w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1080\/h:1080\/q:mauto\/f:best\/dpr:2\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 2x\" sizes=\"(max-width: 300px) 100vw, 300px\"><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p class=\"has-text-align-center ticss-58e79f2f wp-block-paragraph\" style=\"font-size:14px\"><strong>FREE GUIDE<\/strong><\/p>\n\n\n\n<p class=\"ticss-d144f107 wp-block-paragraph\" style=\"font-size:25px\"><strong>4 Essential Steps to Speed Up Your&nbsp;WordPress Website<\/strong><\/p>\n\n\n\n<p class=\"ticss-3b627beb wp-block-paragraph\">Follow the simple steps in our 4-part mini series and reduce your loading times by 50-80%.&nbsp;&#128640;<\/p>\n\n\n<p><\/p><div class=\"frm_forms  with_frm_style frm_style_themeisle\" id=\"frm_form_4_container\" data-token=\"23f3c90f3319fb428cdf760285c966cc\">\n<form enctype=\"multipart\/form-data\" method=\"post\" class=\"frm-show-form  frm_pro_form \" id=\"form_site-speed-guide-below-post\" data-token=\"23f3c90f3319fb428cdf760285c966cc\">\n<div class=\"frm_form_fields \">\n<fieldset>\n<legend class=\"frm_screen_reader\">Site Speed Guide - Below Post<\/legend>\r\n\r\n<div class=\"frm_fields_container\">\n<input type=\"hidden\" name=\"frm_action\" value=\"create\">\n<input type=\"hidden\" name=\"form_id\" value=\"4\">\n<input type=\"hidden\" name=\"frm_hide_fields_4\" id=\"frm_hide_fields_4\" value=\"\">\n<input type=\"hidden\" name=\"form_key\" value=\"site-speed-guide-below-post\">\n<input type=\"hidden\" name=\"item_meta[0]\" value=\"\">\n<input type=\"hidden\" id=\"frm_submit_entry_4\" name=\"frm_submit_entry_4\" value=\"30bbd40a59\"><input type=\"hidden\" name=\"_wp_http_referer\" value=\"\/blog\/wp-json\/wp\/v2\/posts\/118316\">\t\t<input type=\"hidden\" name=\"item_meta[18]\" id=\"field_6px6q2\" value=\"\/blog\/wp-json\/wp\/v2\/posts\/118316\" data-frmval=\"\/blog\/wp-json\/wp\/v2\/posts\/118316\">\n\t\t<div id=\"frm_field_15_container\" class=\"frm_form_field form-field  frm_required_field frm_none_container\">\r\n\t<label for=\"field_6px6q\" id=\"field_6px6q_label\" class=\"frm_primary_label\">Your Email\r\n\t\t<span class=\"frm_required\" aria-hidden=\"true\">*<\/span>\r\n\t<\/label>\r\n\t<input type=\"email\" id=\"field_6px6q\" name=\"item_meta[15]\" value=\"\" autocomplete=\"email\" placeholder=\"your@email.com\" data-reqmsg=\"Your Email cannot be blank.\" aria-required=\"true\" data-invmsg=\"Your Email is invalid\" aria-invalid=\"false\">\r\n\t\r\n\t\r\n<\/div>\n<div id=\"frm_field_17_container\" class=\"frm_form_field form-field  frm_none_container vertical_radio\">\r\n\t<div id=\"field_6px6q3_label\" class=\"frm_primary_label\">Subscribe to our newsletter\r\n\t\t<span class=\"frm_required\" aria-hidden=\"true\"><\/span>\r\n\t<\/div>\r\n\t<div class=\"frm_opt_container\" aria-labelledby=\"field_6px6q3_label\" role=\"group\">\t\t<div class=\"frm_checkbox\" id=\"frm_checkbox_17-0\">\t\t\t<label for=\"field_6px6q3-0\">\n\t\t\t<input type=\"checkbox\" name=\"item_meta[17][]\" id=\"field_6px6q3-0\" value=\"true\" data-invmsg=\"Subscribe to our newsletter is invalid\"> Subscribe to our newsletter<\/label><\/div>\n<\/div>\r\n\t\r\n\t\r\n<\/div>\n<div id=\"frm_field_14_container\" class=\"frm_form_field form-field \">\r\n\t<div class=\"frm_submit frm_flex\">\r\n<button class=\"frm_button_submit frm_final_submit\" type=\"submit\" formnovalidate=\"formnovalidate\">FREE ACCESS<\/button>\r\n\r\n\r\n\r\n<\/div>\r\n<\/div>\n\t<input type=\"hidden\" name=\"item_key\" value=\"\">\n\t\t\t<div id=\"frm_field_24_container\">\n\t\t\t<label for=\"field_x0lpx\">\n\t\t\t\tIf you are human, leave this field blank.\t\t\t<\/label>\n\t\t\t<input id=\"field_x0lpx\" type=\"text\" class=\"frm_form_field form-field frm_verify\" name=\"item_meta[24]\" value=\"\">\n\t\t<\/div>\n\t\t<input name=\"frm_state\" type=\"hidden\" value=\"tGKtIG19U6wyYcew8uBttTjk20r59h5Lhv8WFMgCz7MkdKCs\/l0h48RQnQG\/UFbR\"><\/div>\n<\/fieldset>\n<\/div>\n\n<p style=\"display: none !important;\" class=\"akismet-fields-container\" data-prefix=\"ak_\"><label>&Delta;<textarea name=\"ak_hp_textarea\" cols=\"45\" rows=\"8\" maxlength=\"100\"><\/textarea><\/label><input type=\"hidden\" id=\"ak_js_1\" name=\"ak_js\" value=\"118\"><script>\ndocument.getElementById( \"ak_js_1\" ).setAttribute( \"value\", ( new Date() ).getTime() );\n<\/script>\n<\/p><\/form>\n<\/div>\n\n<\/div>\n<\/div>\n\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"Every page load makes WordPress reread all autoloaded wp_options rows, even junk from deleted plugins. Check yours with one safe SQL query and clean it up.","protected":false},"author":34,"featured_media":118846,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_stopmodifiedupdate":false,"_modified_date":"","_has_post_settings":[],"_themeisle_gutenberg_block_has_review":false,"footnotes":""},"categories":[272],"tags":[],"hashtags":[],"class_list":["post-118316","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress-tutorials"],"wppr_data":{"cwp_meta_box_check":"No"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.8 (Yoast SEO v28.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>WordPress Autoloaded Options: Find and Fix wp_options Bloat<\/title>\n<meta name=\"description\" content=\"Every page load makes WordPress reread all autoloaded wp_options rows, even junk from deleted plugins. Check yours with one safe SQL query and clean it up.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"WordPress Autoloaded Options: Find and Fix wp_options Bloat\" \/>\n<meta property=\"og:description\" content=\"Every page load makes WordPress reread all autoloaded wp_options rows, even junk from deleted plugins. Check yours with one safe SQL query and clean it up.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/\" \/>\n<meta property=\"og:site_name\" content=\"Themeisle Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-17T18:09:56+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1920\/h:960\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/WordPress-Autoloaded-Options.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2180\" \/>\n\t<meta property=\"og:image:height\" content=\"1090\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Themeisle Editorial\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ThemeIsle\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Themeisle Editorial\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/\"},\"author\":{\"name\":\"Themeisle Editorial\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#\\\/schema\\\/person\\\/844b0a2dc66556309f9a5ae28ae87ffe\"},\"headline\":\"WordPress Autoloaded Options: Find and Fix wp_options Bloat\",\"datePublished\":\"2026-09-17T18:09:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/\"},\"wordCount\":1599,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2026\\/08\\/WordPress-Autoloaded-Options.jpg\",\"articleSection\":[\"WordPress Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/\",\"url\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/\",\"name\":\"WordPress Autoloaded Options: Find and Fix wp_options Bloat\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2026\\/08\\/WordPress-Autoloaded-Options.jpg\",\"datePublished\":\"2026-09-17T18:09:56+00:00\",\"description\":\"Every page load makes WordPress reread all autoloaded wp_options rows, even junk from deleted plugins. Check yours with one safe SQL query and clean it up.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/#primaryimage\",\"url\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2026\\/08\\/WordPress-Autoloaded-Options.jpg\",\"contentUrl\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2026\\/08\\/WordPress-Autoloaded-Options.jpg\",\"width\":2180,\"height\":1090,\"caption\":\"WordPress Autoloaded Options\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-autoloaded-options-bloat\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"WordPress Autoloaded Options: Find and Fix wp_options Bloat\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/\",\"name\":\"Themeisle Blog\",\"description\":\"WordPress Tutorials and Reviews for Beginners and Advanced\",\"publisher\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#organization\",\"name\":\"VertiStudio\",\"alternateName\":\"Vertigo Studio SA\",\"url\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2024\\/02\\/VertiStudio_logo1.png\",\"contentUrl\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2024\\/02\\/VertiStudio_logo1.png\",\"width\":718,\"height\":156,\"caption\":\"VertiStudio\"},\"image\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#\\\/schema\\\/person\\\/844b0a2dc66556309f9a5ae28ae87ffe\",\"name\":\"Themeisle Editorial\",\"description\":\"We\\\\'re the crew behind Themeisle Blog, where we eat, sleep, and breathe WordPress, website building, and all things blogging. Under the leadership of Karol K, our team is composed of WordPress wizards, web design junkies, and blogging enthusiasts. Between us, we\\\\'ve got a boatload of experience (like, 50+ years worth!) in making the digital world more accessible and fun.\",\"sameAs\":[\"https:\\\/\\\/themeisle.com\\\/blog\\\/\",\"https:\\\/\\\/x.com\\\/ThemeIsle\",\"https:\\\/\\\/www.youtube.com\\\/@ThemeIsle\"],\"url\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/author\\\/editorial\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"WordPress Autoloaded Options: Find and Fix wp_options Bloat","description":"Every page load makes WordPress reread all autoloaded wp_options rows, even junk from deleted plugins. Check yours with one safe SQL query and clean it up.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/","og_locale":"en_US","og_type":"article","og_title":"WordPress Autoloaded Options: Find and Fix wp_options Bloat","og_description":"Every page load makes WordPress reread all autoloaded wp_options rows, even junk from deleted plugins. Check yours with one safe SQL query and clean it up.","og_url":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/","og_site_name":"Themeisle Blog","article_published_time":"2026-09-17T18:09:56+00:00","og_image":[{"width":2180,"height":1090,"url":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1920\/h:960\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/WordPress-Autoloaded-Options.jpg","type":"image\/jpeg"}],"author":"Themeisle Editorial","twitter_card":"summary_large_image","twitter_creator":"@ThemeIsle","twitter_misc":{"Written by":"Themeisle Editorial","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/#article","isPartOf":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/"},"author":{"name":"Themeisle Editorial","@id":"https:\/\/themeisle.com\/blog\/#\/schema\/person\/844b0a2dc66556309f9a5ae28ae87ffe"},"headline":"WordPress Autoloaded Options: Find and Fix wp_options Bloat","datePublished":"2026-09-17T18:09:56+00:00","mainEntityOfPage":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/"},"wordCount":1599,"commentCount":0,"publisher":{"@id":"https:\/\/themeisle.com\/blog\/#organization"},"image":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/#primaryimage"},"thumbnailUrl":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/WordPress-Autoloaded-Options.jpg","articleSection":["WordPress Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/","url":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/","name":"WordPress Autoloaded Options: Find and Fix wp_options Bloat","isPartOf":{"@id":"https:\/\/themeisle.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/#primaryimage"},"image":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/#primaryimage"},"thumbnailUrl":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/WordPress-Autoloaded-Options.jpg","datePublished":"2026-09-17T18:09:56+00:00","description":"Every page load makes WordPress reread all autoloaded wp_options rows, even junk from deleted plugins. Check yours with one safe SQL query and clean it up.","breadcrumb":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/#primaryimage","url":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/WordPress-Autoloaded-Options.jpg","contentUrl":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/WordPress-Autoloaded-Options.jpg","width":2180,"height":1090,"caption":"WordPress Autoloaded Options"},{"@type":"BreadcrumbList","@id":"https:\/\/themeisle.com\/blog\/wordpress-autoloaded-options-bloat\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog","item":"https:\/\/themeisle.com\/blog\/"},{"@type":"ListItem","position":2,"name":"WordPress Autoloaded Options: Find and Fix wp_options Bloat"}]},{"@type":"WebSite","@id":"https:\/\/themeisle.com\/blog\/#website","url":"https:\/\/themeisle.com\/blog\/","name":"Themeisle Blog","description":"WordPress Tutorials and Reviews for Beginners and Advanced","publisher":{"@id":"https:\/\/themeisle.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/themeisle.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/themeisle.com\/blog\/#organization","name":"VertiStudio","alternateName":"Vertigo Studio SA","url":"https:\/\/themeisle.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/themeisle.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2024\/02\/VertiStudio_logo1.png","contentUrl":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2024\/02\/VertiStudio_logo1.png","width":718,"height":156,"caption":"VertiStudio"},"image":{"@id":"https:\/\/themeisle.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/themeisle.com\/blog\/#\/schema\/person\/844b0a2dc66556309f9a5ae28ae87ffe","name":"Themeisle Editorial","description":"We\\'re the crew behind Themeisle Blog, where we eat, sleep, and breathe WordPress, website building, and all things blogging. Under the leadership of Karol K, our team is composed of WordPress wizards, web design junkies, and blogging enthusiasts. Between us, we\\'ve got a boatload of experience (like, 50+ years worth!) in making the digital world more accessible and fun.","sameAs":["https:\/\/themeisle.com\/blog\/","https:\/\/x.com\/ThemeIsle","https:\/\/www.youtube.com\/@ThemeIsle"],"url":"https:\/\/themeisle.com\/blog\/author\/editorial\/"}]}},"_links":{"self":[{"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/posts\/118316","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/users\/34"}],"replies":[{"embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/comments?post=118316"}],"version-history":[{"count":4,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/posts\/118316\/revisions"}],"predecessor-version":[{"id":118848,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/posts\/118316\/revisions\/118848"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/media\/118846"}],"wp:attachment":[{"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/media?parent=118316"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/categories?post=118316"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/tags?post=118316"},{"taxonomy":"hashtags","embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/hashtags?post=118316"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}