Title: Nota Cleanup – Database &amp; Site Optimizer
Author: wpnota
Published: <strong>جولای 9, 2026</strong>
Last modified: جولای 11, 2026

---

Search plugins

![](https://ps.w.org/nota-cleanup/assets/banner-772x250.png?rev=3602227)

![](https://ps.w.org/nota-cleanup/assets/icon-128x128.png?rev=3601406)

# Nota Cleanup – Database & Site Optimizer

 By [wpnota](https://profiles.wordpress.org/wpnota/)

[Download](https://downloads.wordpress.org/plugin/nota-cleanup.1.1.0.zip)

 * [Details](https://azb.wordpress.org/plugins/nota-cleanup/#description)
 * [Reviews](https://azb.wordpress.org/plugins/nota-cleanup/#reviews)
 *  [Installation](https://azb.wordpress.org/plugins/nota-cleanup/#installation)
 * [Development](https://azb.wordpress.org/plugins/nota-cleanup/#developers)

 [Support](https://wordpress.org/support/plugin/nota-cleanup/)

## Description

Nota Cleanup scans your database first — read-only, nothing is touched — and
 shows
you exactly what can be cleaned, category by category, each labeled by risk level.
You choose what to remove; conservative defaults keep risky categories unchecked,
so a single click can never surprise you.

The cleanup engine is built for shared hosting: work runs in small
 time-budgeted
batches chained in the background, so it never hits your server’s execution time
limit, no matter how large your tables are. A stuck job can always be resumed with
one click, and every run is logged.

#### What it cleans

 * Expired transients (including site transients)
 * Orphaned post meta, comment meta, term relationships and user meta
 * Spam and trashed comments, trackbacks and pingbacks
 * oEmbed caches
 * Post revisions — with a “keep the most recent N” option
 * Auto-drafts older than 7 days
 * Old Action Scheduler entries (WooCommerce and other background tasks)
 * Expired WooCommerce sessions
 * Old WooCommerce logs (configurable retention window)
 * Trashed posts and pages (high risk — never selected by default)

#### Row-by-row review for the riskier categories

Trashed posts/pages and orphaned user meta can be expanded to show the exact
 rows
found — titles, dates, and the offending meta — so you can hand-pick which ones 
to delete instead of only ever cleaning the whole category at once. Paginated for
large sites, with a one-click “select all” for when you really do want everything.

#### Autoloaded options report (unique)

The report most cleaners don’t give you: the 10 largest autoloaded options
 and 
the total autoload size — the data loaded into memory on EVERY page view, the sneakiest
performance killer on shared hosting. Report-only by design: deleting an option 
can break the plugin that owns it, so we tell you what to ask your developer instead
of handing you a footgun.

#### Unused options report — with optional cleanup

A scanner that goes further than the autoload report: it searches the literal
 source
of every active and inactive plugin and theme for each non-core option name, then
splits what it finds into two tiers. “No reference found in any installed code” 
is the strongest signal — flagged options are shown with a truncated, color-coded
preview of their stored value so you can recognize them at a glance, and only this
tier can be selected and deleted directly, behind a confirmation step that recommends
a backup first (with a one-click link to our free Nota Backup & Restore plugin).“
Found only in an inactive plugin” stays report-only, since reactivating that plugin
would put the option back to use.

This is a heuristic, not proof: a plugin that builds an option name
 dynamically(
prefix + variable at runtime) can never appear as a literal string match, so it 
can be missed even though the option is genuinely still in use. The scan warns about
this limitation before you delete anything, and deletion is scoped only to the strongest-
signal tier for that reason.

#### Table health

A dedicated Tables tab shows the size, storage engine, and overhead of every
 table
in your database, sorted so the most reclaimable table is always at the top. Optimize
any single table with one click — no bulk “optimize everything” button, because 
a large table can briefly lock during an optimize and that should always be a deliberate,
one-table-at-a-time choice.

#### Weekly automatic cleanup

Optionally run the low-risk categories automatically every week. Off by
 default—
you turn it on only if you want it.

#### Honest engineering notes

 * Deletions use direct SQL for speed; other plugins’ per-row delete hooks
    are 
   not fired. Linked data (meta, comments, term relationships) is removed in the
   same run, so nothing is left dangling.
 * Term relationships are only cleaned for taxonomies registered to post
    types —
   unknown plugin taxonomies are left alone.
 * If your site uses an external object cache (Redis/Memcached), transients
    live
   there, not in the database; the plugin detects this and tells you, instead of
   silently doing nothing.
 * On some MySQL/MariaDB setups, InnoDB reports table overhead as a shared
    figure
   rather than a true per-table number. When we detect this, the Tables tab shows“
   N/A” instead of a misleading number — Optimize still works normally.

#### Safety, honestly

The scan is always read-only. Before any cleanup runs, you see exact row
 counts
and confirm; high-risk categories are never pre-selected. If you’d like a safety
net first, the confirmation screen offers one-click access to our free Nota Backup&
Restore plugin — no pressure, just a shortcut if you want it.

## Screenshots

[⌊Read-only scan with risk-tiered categories — conservative defaults, one
click 
to clean the ones you choose.⌉⌊Read-only scan with risk-tiered categories — conservative
defaults, one
click to clean the ones you choose.⌉[

Read-only scan with risk-tiered categories — conservative defaults, one click to
clean the ones you choose.

[⌊The autoload options report: the largest options loaded into memory on
every page
view.⌉⌊The autoload options report: the largest options loaded into memory on
every
page view.⌉[

The autoload options report: the largest options loaded into memory on every page
view.

[⌊Table health: size, engine, and overhead per table, with one-click
Optimize.⌉⌊
Table health: size, engine, and overhead per table, with one-click
Optimize.⌉[

Table health: size, engine, and overhead per table, with one-click Optimize.

[⌊Cleanup history log: every run, what it touched, and when.⌉⌊Cleanup history log:
every run, what it touched, and when.⌉[

Cleanup history log: every run, what it touched, and when.

[⌊Settings: weekly automatic low-risk cleanup and revision retention.⌉⌊Settings:
weekly automatic low-risk cleanup and revision retention.⌉[

Settings: weekly automatic low-risk cleanup and revision retention.

## Installation

 1. Upload the plugin files to `/wp-content/plugins/nota-cleanup`, or install it directly
    through the Plugins screen in your WordPress admin.
 2. Activate the plugin through the ‘Plugins’ screen.
 3. Go to **Tools  Nota Cleanup** (or click “Cleanup” under the plugin’s own row on
    the Plugins screen) to run your first scan.

## FAQ

### Is it safe to use?

Yes. Scanning never modifies anything. Cleaning shows you exact counts and
 requires
confirmation; high-risk categories (like trashed posts) are never pre-selected. 
Every run is logged with a timestamp, category, and row count so you can see exactly
what happened. We still recommend a backup before any cleanup — the confirmation
dialog offers one-click access to our free Nota Backup & Restore plugin if you’d
like one.

### Will it time out on my cheap shared hosting?

No — that’s the entire point of the plugin. Work happens in small batches
 inside
a time budget derived from your server’s own execution time limit, chained together
in the background. If a batch is somehow interrupted, a “Resume” option picks up
right where it left off.

### Does it delete my trashed posts and pages?

Only if you explicitly select that category — it is off by default and
 clearly 
marked as high risk, since it’s the one category that can’t be undone by rescanning.

### Does it work with an external object cache (Redis, Memcached)?

Yes, but transients are automatically excluded from the scan on those
 setups, since
transients live in the object cache rather than the database there — deleting database
rows wouldn’t do anything. The plugin detects this and tells you.

### Does it support multisite?

The plugin activates and runs per-site, cleaning that site’s own tables. It
 does
not currently offer a network-wide dashboard for cleaning every site at once.

### Will this conflict with other cleanup or optimization plugins?

Nota Cleanup only ever touches its own settings, log, and scheduled events on
 uninstall—
it doesn’t modify how other plugins store or cache data. Running it alongside another
cleanup plugin is safe, though you may see overlapping categories (like transients
or revisions) reported by both.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Nota Cleanup – Database & Site Optimizer” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ wpnota ](https://profiles.wordpress.org/wpnota/)

[Translate “Nota Cleanup – Database & Site Optimizer” into your language.](https://translate.wordpress.org/projects/wp-plugins/nota-cleanup)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/nota-cleanup/), check
out the [SVN repository](https://plugins.svn.wordpress.org/nota-cleanup/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/nota-cleanup/) by
[RSS](https://plugins.trac.wordpress.org/log/nota-cleanup/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.1.0

 * New: row-by-row review for Trashed posts/pages and Orphaned user meta —
    expand
   a category to see the actual rows found and delete a hand-picked subset instead
   of the whole category. Paginated, with a “select all” shortcut for large sets.
 * New: WooCommerce cleanup — expired sessions and old logs, with a
    configurable
   log retention window.
 * New: Unused options report — scans installed plugin/theme code for
    references
   to each non-core wp_options row, split into a “no reference found” tier and a
   weaker “found only in an inactive plugin” tier, each with a color-coded value
   preview.
 * New: optional one-click delete for the strongest-signal (“no reference
    found”)
   tier of the unused options report, behind a backup-nudged confirmation modal —
   the weaker tier stays report-only.

#### 1.0.0

 * Initial release: risk-tiered scanner, timeout-free chained cleanup engine,
    autoload
   options report, per-table size/engine/overhead report with one-click Optimize,
   weekly automatic cleanup, and a full cleanup history log.

## Meta

 *  Version **1.1.0**
 *  Last updated **19 ساعاتلار ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.8 or higher **
 *  Tested up to **7.0.1**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/nota-cleanup/)
 * Tags
 * [cleanup](https://azb.wordpress.org/plugins/tags/cleanup/)[database](https://azb.wordpress.org/plugins/tags/database/)
   [Optimize](https://azb.wordpress.org/plugins/tags/optimize/)[revisions](https://azb.wordpress.org/plugins/tags/revisions/)
   [transients](https://azb.wordpress.org/plugins/tags/transients/)
 *  [Advanced View](https://azb.wordpress.org/plugins/nota-cleanup/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/nota-cleanup/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/nota-cleanup/reviews/)

## Contributors

 *   [ wpnota ](https://profiles.wordpress.org/wpnota/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/nota-cleanup/)