Skip to main content
GrN.dk

Main navigation

  • Articles
  • Cases
  • Contact
  • Your Digital Project Manager
  • About Greg Nowak
  • Services
  • Portfolio
  • Container
    • Excel Freelancer
    • Kubuntu - tips and tricks
    • Linux Apache MySQL and PHP
    • News
    • Image Gallery
User account menu
  • Log in

Join my community / free newsletter — sign up here

Breadcrumb

  1. Home

WordPress Autoloaded Options: What the Site Health Warning Misses

Illustrated infographic summarizing: WordPress Autoloaded Options: What the Site Health Warning Misses

Site Health is useful because it flags autoloaded options, but for operators it is only the start of the job. The real question is not whether WordPress can warn you. It is whether your site is loading data on every request that does not need to be there, and whether you can fix it safely without breaking plugin behavior, admin workflows, or client handover.

That matters because autoloaded options sit in the normal request path. Core loads that set early through wp_load_alloptions(), so a bloated autoload set becomes a tax on ordinary page handling, not just an admin-only problem. For agency teams and operations leads, this is why the issue keeps surfacing as slow frontend responses, spiky resource use, and vague "the server feels heavy" complaints.

What the warning actually means

The current Site Health check counts both the number and total size of autoloaded options. In current core docs, it marks the issue as critical when the total autoloaded size reaches the default limit of 800000 bytes. That is a sensible alert threshold, not a diagnosis. A site can exceed it because of one oversized option, a few badly scoped settings arrays, or a pile of stale rows left behind by retired plugins and themes.

That distinction matters commercially. A warning tells you there is likely waste in the request path. It does not tell you which option is safe to remove, which one should remain autoloaded, or whether the durable fix belongs in code, data cleanup, or both.

What changed in modern WordPress

WordPress 6.6 changed the default $autoload parameter for add_option() and update_option() from implicit yes to null. In practical terms, core now expects clearer intent: use true when an option must be available on essentially every request, false when it should not be loaded globally, and null when WordPress can apply its own heuristics.

That same change introduced a default size guardrail. If an option is saved without explicit autoload true and the value is larger than 150000 bytes, WordPress will not autoload it by default. Newer database values such as on, off, auto, auto-on, and auto-off were added to support that behavior, while legacy yes and no remain readable for backward compatibility.

Then WordPress 6.7 formally deprecated passing yes and no into these APIs. Core did not rewrite old rows during upgrade, so mixed states are normal on long-lived sites. Any custom SQL that only checks autoload = 'yes' is now incomplete.

Why the fix is still hands-on work

The remediation is not "turn the warning off" or "set a higher limit." The current Site Health threshold can be filtered with site_status_autoloaded_options_size_limit, and the 150 KB autoload heuristic can be altered with wp_max_autoloaded_option_size. Both are operational levers. Neither removes unnecessary weight from production requests.

What usually needs real judgment is classification:

  • Which options are genuinely needed across the frontend, login flow, checkout, or shared middleware on nearly every request?
  • Which options are only used on narrow admin screens, import jobs, scheduled tasks, or one feature path?
  • Which rows belong to plugins or themes that are no longer active?
  • Which large values exist because code is storing too much in one option instead of using a more appropriate data model?

That is why this remains paid performance work. You are not just chasing a green dashboard. You are deciding what can be safely changed on a live business system.

What safe remediation looks like

A good cleanup starts with inventory, not deletion. Pull the largest autoloaded rows, map each one to its owner, and confirm whether the owning code still exists. On inherited sites, the dangerous cases are usually abandoned plugins, overgrown option arrays, or custom code that never set explicit autoload intent.

From there, the implementation path is usually one of three moves:

  • Patch the save logic so future writes use explicit booleans and match modern WordPress behavior.
  • Change the autoload flag for active options that are valid but wrongly scoped.
  • Remove stale options after confirming they are no longer read by production code.

One technical detail matters here: update_option() can only change the autoload value of an existing option when the option value itself also changes. If you only need to flip the autoload flag, the current core API for that job is wp_set_option_autoload_values(), which updates autoload values without rewriting the option payload and handles the related cache refresh.

update_option( 'my_option', $value, false );

wp_set_option_autoload_values( array(
    'legacy_plugin_setting' => false,
) );

That is safer than raw SQL on most projects, especially now that WordPress uses newer autoload states internally.

What to tell stakeholders

For business owners, the plain-English version is simple: autoload bloat is not a cosmetic Site Health issue. It is a recurring performance cost hidden inside normal page handling. For operations leads, it is a reliability and maintainability issue because bad autoload decisions keep resurfacing after plugin updates, migrations, or agency handoffs. For agencies, it is a client trust issue: the dashboard warns, but the real value is in fixing the cause without collateral damage.

If your site is over the limit, the right question is not "How do we suppress the warning?" It is "Which options truly belong in the startup path, which ones do not, and how do we lock that in so the problem does not come back next quarter?"

That is the difference between a one-off database tweak and a proper remediation plan. The best outcome is a lighter request path, cleaner ownership of settings data, and code that follows current WordPress conventions instead of legacy habits.

Need help making the fix stick?

If you need someone to audit the autoload set, trace ownership, and turn the warning into a safe remediation plan, Greg can help with the technical cleanup and the operational handoff. The goal is not just to quiet Site Health. It is to leave the site faster, clearer, and less fragile than before.

Need help with this kind of work?

Need a WordPress autoload audit and a safe remediation plan? Talk to Greg. Get in touch with Greg.

Sources

  • Options API: Disabling autoload for large options
  • WP_Site_Health::get_test_autoloaded_options()
  • update_option()
  • wp_set_option_autoload_values()
  • wp_load_alloptions()
Last modified
2026-08-05

Tags

  • wordpress
  • Performance
  • database
  • Troubleshooting

Review Greg on Google

Greg Nowak Google Reviews

 

Illustrated infographic summarizing: AI Agents Need a Spending Brake, Not Just a Billing Dashboard
AI Agents Need a Spending Brake, Not Just a Billing Dashboard
2026-08-08

AI agent costs can climb inside a single workflow. Runtime budgets, loop detection, outcome metrics, and safe handoffs keep that spending under control.

Illustrated infographic summarizing: Drupal 12 Slipped to December. Drupal 10 Still Runs Out of Road
Drupal 12 Slipped to December. Drupal 10 Still Runs Out of Road
2026-08-07

Drupal 12 arrives as Drupal 10 support ends in December 2026. Moving to Drupal 11.3+ first keeps two mandatory upgrades manageable.

Illustrated infographic summarizing: EU OpenAI Residency Is a Migration Project, Not a Dashboard Toggle
EU OpenAI Residency Is a Migration Project, Not a Dashboard Toggle
2026-08-05

An EU-resident OpenAI API setup needs a new project, regional routing, dependency and state migration, compatibility testing, and clear governance evidence.

Illustrated infographic summarizing: AI Images Need a Chain of Custody, Not Just a Disclosure Label
AI Images Need a Chain of Custody, Not Just a Disclosure Label
2026-08-04

AI image labels are only the endpoint. Learn how to test C2PA credentials through editing, CMS, CDN and agency handoffs while preserving evidence.

Illustrated infographic summarizing: MCP Just Went Stateless: Audit the Integrations Behind Your AI Tools
MCP Just Went Stateless: Audit the Integrations Behind Your AI Tools
2026-08-03

The 28 July 2026 MCP release removes protocol sessions and changes discovery, tasks, caching, OAuth and tracing. A practical guide to auditing the move.

Illustrated infographic summarizing: SEO Trends for 2026: What Actually Changed Since 2024
SEO Trends for 2026: What Actually Changed Since 2024
2026-08-03

A practical guide to what changed in SEO between 2024 and 2026, from AI and multimodal search to Core Web Vitals, privacy and local visibility.

Illustrated infographic summarizing: INP and Green SEO Share a Backlog: Cut the Work Every Visit Repeats
INP and Green SEO Share a Backlog: Cut the Work Every Visit Repeats
2026-08-03

INP and sustainable web work often expose the same waste. Use field data, profiling, caching and performance budgets to build one practical backlog.

Illustrated infographic summarizing: AI crawler policy now has verbs: separate search, RAG, and training
AI crawler policy now has verbs: separate search, RAG, and training
2026-08-02

AI crawler rules now need separate decisions for search, RAG, and training, backed by practical testing across robots.txt, CDNs, WAFs, and CMS controls.

Illustrated infographic summarizing: WordPress Supports Old PHP; Your Production Server Shouldn’t
WordPress Supports Old PHP; Your Production Server Shouldn’t
2026-08-01

WordPress still runs on legacy PHP, but compatibility is not a security policy. Build and test your upgrade path before PHP 8.2 support ends.

Illustrated infographic summarizing: The AI-built tool your team relies on needs an owner
The AI-built tool your team relies on needs an owner
2026-07-31

AI-built internal tools can become business-critical before anyone owns them. Here is how to secure, review, monitor, and retire them without blocking useful work.

More articles
RSS feed

Footer

  • All articles
  • Contact

GrN.dk web platforms, web optimization, data analysis, data handling and logistics.