Your site has a heavy backpack. Every single page load — for every visitor — WordPress reads all autoloaded options from the database. When this data exceeds 1.2MB, it becomes a measurable drag on performance.
Why This Matters
WordPress stores settings in the wp_options table with an autoload flag. Options marked autoload = yes are loaded into memory on every page request, whether that page needs them or not.
Common culprits:
- Transient data from plugins that didn't clean up after themselves
- Plugin settings stored as large serialized arrays
- Widget data that grew over time
- Deleted plugin leftovers — options remain in the database after uninstallation
How to Diagnose
Run this SQL query to find the heaviest autoloaded options:
SELECT option_name, LENGTH(option_value) AS size
FROM wp_options
WHERE autoload = 'yes'
ORDER BY size DESC
LIMIT 20;You can run this via:
- phpMyAdmin (available in most hosting panels)
- Adminer or WP-CLI
- A plugin like WP-Optimize or Advanced Database Cleaner
How to Fix It
Step 1: Identify Safe-to-Remove Options
Look at the results of the query above. Common safe removals:
| Option Name Pattern | Source | Safe to Delete? |
|---|---|---|
_transient_* |
Expired caching data | Yes |
_site_transient_* |
Expired network data | Yes |
| Options from deleted plugins | Plugin leftovers | Yes |
widget_* (unused) |
Old widget settings | Check first |
theme_mods_* (old theme) |
Settings from previous themes | Usually yes |
Step 2: Clean Transients
The safest first step — remove expired transients using WP-CLI:
wp transient delete --expiredOr use WP-Optimize plugin → Database → Clean transients.
Step 3: Set Bloated Options to Not Autoload
For options you can't delete (active plugin settings), change them from autoloaded to lazy-loaded:
UPDATE wp_options SET autoload = 'no' WHERE option_name = 'heavy_option_name';Be careful: Some options need autoloading to work. Test your site after each change.
Step 4: Clean Up Deleted Plugin Data
If the top results include options from plugins you no longer use, delete them:
DELETE FROM wp_options WHERE option_name LIKE '%old_plugin_prefix_%';What to Watch For
- Always back up your database before running DELETE queries.
- A healthy autoload size is under 800KB. Under 500KB is excellent.
- After cleaning, verify your site works correctly — check frontend, admin, and any forms/checkout processes.
- Some plugins (like WooCommerce) legitimately need large autoloaded options. Don't delete those.
- Consider running this cleanup quarterly as part of regular site maintenance.