Finds unused images
Flags media library files that no post, page, builder layout, widget, gallery, srcset, CSS background or setting references. Featured images, site logos and icons are recognized and protected.
Safe Media Cleaner finds unused images, orphaned files, duplicates and missing files in your media library and uploads folder. Selected files move to a protected Recycle Bin first, so you can review everything, restore with one click, and permanently delete only when you are sure.
Downloads come straight from api.devdome.com over HTTPS, and WordPress
updates the plugin from the same place. It is not listed on WordPress.org, so it carries
no wordpress.org review or rating. The figures above were read from the live release on .
We do not publish a checksum. These files are re-published whenever the plugin ships, so a hash printed here would quietly go out of date, and a checksum that does not match is worse than none.
Install & setup Changelog Data & privacy Support Report a security issue
Every flagged file is labelled Safe to remove, Needs manual review, or Protected, with the reason shown. Nothing uncertain is ever selected for you.
Flags media library files that no post, page, builder layout, widget, gallery, srcset, CSS background or setting references. Featured images, site logos and icons are recognized and protected.
Detects files sitting in the uploads folder with no Media Library record, and library entries whose original file is missing from disk, so both directions of drift get cleaned up.
Finds identical copies of the same image and suggests which one to keep. Duplicates are never deleted automatically, you choose.
Cleanups move files to a protected local Recycle Bin instead of deleting them. Each file is re-checked the moment before it moves, and recent uploads plus WooCommerce, builder and theme images are protected by default.
Any cleanup batch can be put back exactly where it was, verified file by file with checksums. Optional ZIP backups of your media can be created, downloaded and restored before cleaning.
Scans run in small resumable background batches to keep memory use low, and can be paused and resumed. Review results in a grid or list with search, filters, size sorting and CSV export.
The whole flow is review first, delete last. Nothing permanent happens until you have seen the results and checked your site.
Scan the Media Library and uploads folder in background batches. The scanner checks posts, builders, WooCommerce, custom fields, SEO plugins, CSS and responsive image references.
Search, filter and sort every flagged file. Each result shows its thumbnail, size, status and the exact reason it was flagged, so you decide with full context.
Move selected files to the Recycle Bin, check your site, and either restore anything you need with one click or confirm permanent deletion when you are ready.
Scanning, review, the Recycle Bin, backups, scheduled scans, CSV export and WP-CLI are free with no limits. An optional free DevDome account adds media monitoring across your sites.
| Free$0 / mo | Paid plansfrom $49 / mo | |
|---|---|---|
| Unused, orphaned, duplicate and missing file scans | ||
| Recycle Bin with one click restore | ||
| ZIP media backups | ||
| Scheduled scans and WP-CLI commands | ||
| Media growth dashboard across sites | Free DevDome account | Included |
| Email alerts when unused media grows | Free DevDome account | Included |
| Support | Priority on Business and up |
No scanner can guarantee every custom or hard-coded reference. Safe Media Cleaner checks common WordPress locations, 11 page builders, WooCommerce, custom fields, SEO plugins, CSS and responsive images, then re-checks each file immediately before moving it. Anything uncertain is marked Needs manual review and never selected automatically.
Yes. Cleanups move files to the Recycle Bin instead of deleting them, and any batch can be restored to its original locations with one click, verified by checksums.
Unused images have a Media Library record but no detected reference on the site. Orphaned files exist in the uploads folder without any Media Library record at all.
No. Scans run in small background batches to limit memory use and timeout risk, and large scans can be paused and resumed without starting over.
No. Scanning, review, cleanup, the Recycle Bin, backups and restore all work without an account. A free account is only needed for the optional media monitoring dashboard and email alerts.
Yes. Each site in the network keeps its own scans, Recycle Bin, backups and settings.
Everything you need before you install, with no account required.
Download the ZIP from this page, then in WordPress go to Plugins, Add New, Upload Plugin, choose the file and activate it.
No account and no key: it runs entirely on your own site.
Open Media, Safe Media Cleaner and run a scan. Every file is labelled Safe to remove, Needs manual review or Protected, and each card says WHY it got that label.
Nothing is ever selected for you when it is uncertain. Recent uploads, WooCommerce product images, page-builder and theme/customizer images, and anything referenced in a setting are protected by default.
Optional: take a full ZIP backup of your images before the first clean. You can download it or restore it later, and restored files are re-registered in the Media Library for you.
Only your own site: the media library, the uploads folder and the references it finds in posts, pages, builder layouts, widgets and options. Nothing is sent to DevDome or anywhere else.
Deleted files go to a Recycle Bin first and are removed for good only when you confirm it yourself. Every batch can be restored, verified file by file with checksums.
Immediately before a file moves, the plugin re-checks that it is still unused - an image you used a minute ago stays where it is.
The plugin checks api.devdome.com for a newer version and WordPress then shows "Update available" on the Plugins screen, exactly as it does for any other plugin. Updates are delivered from DevDome, not from WordPress.org.
The update check runs only in wp-admin and on WP-Cron. It never runs on a page a visitor is looking at.
Deactivate and delete it from the Plugins screen. Empty the Recycle Bin first if you want the files it holds permanently gone, or restore them if you want them back.
Uninstalling removes its own tables and settings. It never deletes media on its way out.
An image you expected to be flagged is marked Protected: that is deliberate. The card states the rule that protected it - a recent upload, a product image, a builder reference or a setting.
You deleted something you needed: open the Recycle Bin and restore that batch. It goes back to its original path and stays registered in the Media Library.
A scan on a very large library takes a while: it runs in batches, so leave the screen open until it reports it is finished.
Read from the live release feed, so it always describes the version you can download today.
Install free from WordPress.org and reclaim disk space today. Everything lands in the Recycle Bin first, so nothing is ever one click from gone.