Every image you upload generates several resized thumbnail versions based on whatever sizes your theme and plugins currently register, and over the life of a site those registered sizes change — a previous theme wanted a size the current one never uses, an image was removed from every post but its file and thumbnails remain — leaving genuinely orphaned files quietly accumulating in your uploads directory indefinitely. None of this happens through any mistake on your part — it’s simply an artefact of how WordPress generates thumbnails automatically based on whatever sizes are currently registered, with no automatic process to go back and clean up sizes a previous configuration once needed but the current one doesn’t.
Why the Media Library’s own view isn’t enough
The Media Library displays every file regardless of whether anything on the site still uses it, so confirming a file is genuinely unreferenced means checking actual content usage in the database, not what’s visible in that screen.
What’s worth knowing beforehand is roughly how many themes the site has used over its lifetime, and whether you’ve done any significant content pruning, since both increase how much genuinely orphaned media is realistically there to find. A site that’s undergone a significant redesign, rather than an incremental visual refresh, tends to carry noticeably more of this than one that’s evolved gradually, since a redesign often changes image size requirements all at once rather than one at a time. Neither pattern is better or worse, just a different starting point for roughly how much accumulated residue is realistically waiting to be found. Either way, the process for finding and confirming it stays the same. Nothing about the underlying method changes based on how the site got to its current state.
Orphaned media cleanup & thumbnail regeneration
Media files with no post referencing them anymore, and thumbnail sizes never generated or left behind by an old theme. We clean up both properly.
- Full backup taken before we start
- If we can’t fix it, you get your money back
- We never ask for your own password
This or something else?
| You want genuinely unreferenced media files and stale thumbnails cleaned up | This fix covers it |
| You have obvious duplicate files you want identified and removed | Duplicate media detection & removal, a different service |
| An image you know is actually in use is showing as broken | Broken or missing image restoration, a different fix |
| You want unused thumbnail sizes deregistered going forward, not just cleaned up now | Unused thumbnail size removal & regeneration, a related but distinct service |
| You’re not sure whether this is even a meaningful amount of storage | This fix covers it; we confirm the scale before doing anything |
What we do
- Scan the media library and cross-reference every file against actual content usage
- Identify files with no post, page, product, or widget referencing them anywhere
- Identify thumbnail sizes generated for sizes no longer registered by the current theme
- Confirm each candidate is genuinely unreferenced before removing anything
- Remove confirmed orphaned files and stale thumbnails, keeping a full record
- Report the space recovered, confirm nothing currently in use was affected, and flag anything left in place due to unclear usage
What is included
- A full cross-reference of media files against actual current usage
- Removal of confirmed orphaned files and stale, unused thumbnail sizes
- Verification that nothing currently in use was affected
- A written report of what was removed, the storage space recovered, and anything deliberately left in place
Not included
- Removing files that are referenced anywhere, even rarely, without your explicit sign-off
- Deregistering thumbnail sizes for all future uploads going forward, which is a separate service
- Detecting and removing duplicate media files that are still actively referenced
- Ongoing media cleanup as you continue adding and removing content
Questions about this fix
How do you know a file is safe to remove rather than just hard to find?
We cross-reference against actual database usage rather than relying on the Media Library's own display, and anything genuinely ambiguous gets flagged to you rather than removed outright.
Will this free up meaningful storage space?
It depends on your site's history, but a site with several past themes or significant content pruning often has more accumulated orphaned media than expected.
What if a file is referenced somewhere unusual, like a custom field?
That's specifically what the cross-reference step is designed to catch, since custom fields and widgets don't always show up in an obvious content search.
Does this include regenerating thumbnails for sizes I do still need?
If a currently-needed size is missing or needs regenerating, we can include that, though the core focus here is removing what's genuinely no longer needed.
Will this affect my backups?
Older backups taken before this cleanup will still contain the removed files, which is expected — this only affects what's currently stored on the live site going forward.
Related fixes
If this is the second time this year
A bad update breaking the site is a symptom of updates not being tested first. Care plans run every update on a staging clone before it reaches your live site, which is the actual fix for this happening again.
Your access, your rules
Create a separate admin account for us and delete it when we are done. For anything else, we get in touch and agree a method — never a form field on this site, never by reply to an email.
We back up first, always
Before anything is touched we take a full backup and keep it for 30 days. If a fix goes wrong, we put the site back exactly as it was.
If it is not what you bought
If the problem turns out smaller than what you ordered, we refund the difference. If it is bigger, we stop and send a quote before doing any extra work.
If we cannot fix it
You get back what we received. Diagnosis is on us — you only pay when the problem is actually solved. The payment processor takes its fee before the money reaches us, so we never hold it and it is not ours to return. That is true here as everywhere else.
If it comes back
Reply within seven days of delivery and we put it back on the bench at no cost. The fix is not finished until it holds.
What we are responsible for
If something goes wrong with a fix, our responsibility is limited to what you paid for it. We take a full backup first so mistakes can be undone, and we tell you before doing anything outside what you bought.