Look inside the database before blaming the host

WordPress database cleanup

A WordPress database cleanup shouldn't be a button that makes things disappear.. This tool shows you where the space went - expired transients, the largest tables, options loaded on every request - and deletes only what is safe to delete.

How it works

Optimise WordPress database. An audit that shows, rather than rummages

The page has three parts. Two are read-only and exist to give you a picture; the third is the only one that touches anything, and it deals with the most harmless data there is.

Expired transients

  • Transients are temporary caches: when they expire WordPress doesn't always remove them, so they sit in the options table taking up space.
  • The page counts the expired and orphaned ones and cleans them in one click, after an explicit confirmation.
  • When there's nothing to clean it says so, rather than showing a button that would do nothing.

The ten largest tables

  • Name, row count and size on disk, ordered by weight.
  • It's the fastest way to discover that a long-removed plugin left a few hundred megabytes behind.
  • Informational only: this tool never deletes a table. That's a choice, not an omission.

The heaviest autoloaded options

  • These are the options WordPress loads on every single request, even when nothing will use them — one of the most common causes of site-wide slowness.
  • The table lists them with their size, so leftovers from removed plugins stand out.
  • Core options are marked as protected and have no delete button; if one is attempted anyway, the operation is refused.
  • For everything else deletion exists but goes through two confirmations, the second of which shows the exact name of the option you are about to remove.

Check WordPress database size, table by table

A single number tells you almost nothing: knowing your database is 480 MB doesn’t say whether that’s your content or an abandoned plugin’s leftovers. The page lists the ten largest tables with their row count and size on disk, ordered by weight, so the answer takes one glance instead of a session in phpMyAdmin.

It’s usually enough to spot the culprit. A log table from a plugin you removed two years ago, a statistics table nobody has looked at since launch, a queue that stopped being emptied — these are the entries that turn a database from tidy into unwieldy, and they never announce themselves. What the list won’t do is delete them for you: from the size alone there is no way to tell an orphaned table from one your shop still writes to every hour.

The advice is written in the page itself, not just here: big entries left by removed plugins should be reviewed, not deleted blindly. And before any cleanup, take a backup.

The same screen also holds the migration tool: a serialization-aware search and replace with a mandatory preview.

Read the documentation

WordPress database cleanup screenshot
WordPress database cleanup: expired transients to clean, the ten largest tables.

Frequently asked

WordPress database cleanup, WordPress autoloaded options:
what is worth doing, and what isn’t

Five answers on what takes up space, what actually slows a site down, and why this tool deletes so little.

How often does a WordPress database cleanup actually need doing?

Less often than the plugins offering it as a weekly routine would suggest. A tidy database isn’t a goal in itself: it matters only when something is slowing the site down or taking up space out of all proportion.

The sensible approach is to look rather than clean on a schedule. The page shows three lists — expired transients, the ten largest tables, and the heaviest options loaded on every request — and from those you can tell whether there is anything to do. On most sites the answer is no.

What are expired transients, and why do they stay behind?

Transients are temporary caches that plugins store in the options table with an expiry date. When they expire WordPress doesn’t always remove them: they sit there as dead rows, and on a site with many plugins they can run into the thousands.

They are also the only thing this tool genuinely deletes, after an explicit confirmation. It is the safest database operation there is, because whoever wrote that data already declared it disposable. When there is nothing to clean the page says so, rather than showing a button that would do nothing.

What are WordPress autoloaded options, and why do they matter more than big tables?

They are the options WordPress loads into memory on every single request, even when no line of code will use them — the default behaviour of the WordPress Options API. A five-hundred-megabyte table nobody queries costs less in load time than two megabytes of autoloaded options left behind by a plugin you removed.

That’s why the list of heaviest options is the first place to look when a site is slow for no obvious reason. The table shows them with their size, so leftovers stand out on their own.

Why can’t I delete the largest tables from here?

Because that’s a decision, not a missing feature. A large table might belong to a plugin you uninstalled — in which case it can go — or it might hold your orders, your statistics, or the data of a form you still use. From the list alone you cannot reliably tell, and a tool that let you drop it with one click would be the fastest way to lose data.

The list is informational on purpose: it tells you where to look, and you remove things knowing what you are removing. Core WordPress options are marked as protected and have no delete button at all; everything else takes two confirmations, and the second one shows the exact name.

Can optimising a WordPress database break the site?

Yes, and that is precisely why this tool does less than others. Plugins that optimise blindly — emptying revisions, trash, orphaned metadata and unknown tables in one pass — are a common cause of sites that stop working after maintenance, and the damage usually surfaces days later.

Take a backup before any cleanup. It is the only undo that exists once you write to a database, and the module is part of the same suite.

Shopping Basket