Upload one photo to your WordPress media library, and WordPress quietly does a lot more work than you’d expect. Behind the scenes, it doesn’t just save your image — it generates several resized copies of it, each one written to your server’s disk. Do that for a few thousand images, and those “invisible” copies can add up to a surprising amount of wasted storage and slower uploads. Here’s what’s actually happening, and how to stop generating sizes you’ll never use.
What happens every time you upload an image
By default, WordPress core registers a handful of image sizes — thumbnail, medium, medium_large, and large — plus, on modern WordPress versions, two extra large sizes (1536×1536 and 2048×2048) intended for high-resolution (“2x”) screens. Every one of these is generated automatically the moment you upload a new image.
That’s before your theme or plugins get involved. Many themes register their own custom sizes for things like hero banners, blog card thumbnails, or gallery grids. WooCommerce adds sizes for product images, thumbnails, and single-product galleries. Page builders like Elementor register sizes for their own layout widgets. Each of these calls a WordPress function (add_image_size()) behind the scenes to say “generate this size too, please.”
The result: a single uploaded photo can easily turn into six, eight, or more physical files on your server — most of which you’ll never notice, because most of them are never displayed anywhere on your site.
Why this matters more than it seems
A few extra files per image sounds harmless, but the cost compounds in two places:
- Disk space. If your media library has a few thousand images (common for blogs with years of content, or WooCommerce stores with large catalogs), unused sizes can represent a meaningful chunk of your total uploads folder — space you’re paying your host for, and space that makes backups larger and slower.
- Processing time on every upload. Each size WordPress generates requires reading the original image, resizing it, and writing a new file. On shared hosting with limited CPU, uploading a batch of images — or running a bulk import — can slow to a crawl simply because WordPress is generating sizes nobody asked for.
Neither of these is a dramatic, single-image problem. They’re a slow accumulation — the kind of thing that quietly erodes site performance and storage headroom over months and years, especially for content-heavy blogs and stores with large media libraries.
How to find out which sizes your theme actually uses
Before disabling anything, it helps to know which sizes are genuinely in play on your site. A few practical ways to check:
- Inspect your theme’s functions.php or setup files for calls to add_image_size(). Each one tells you a size name and its dimensions.
- View source on key pages (homepage, a blog post, a product page) and look at the <img> tags’ src and srcset attributes — WordPress typically includes the size name in the filename (e.g., photo-800×450.jpg), so you can see which sizes are actually being served to visitors.
- Check your theme or page builder’s documentation for any sizes it registers for specific layout elements, like featured image crops or carousel thumbnails.
- Keep in mind that thumbnail is still used in a lot of admin screens (media library grid, some widgets), so it’s rarely safe to disable even if it’s not visible on the front end.
Once you have a shortlist of sizes that show up in your theme’s templates or in your page source, everything else is a candidate for disabling.
The upside of disabling what you don’t need
Turning off unused sizes doesn’t touch your original uploaded images — WordPress always keeps the full-resolution file. What you’re doing is telling WordPress to stop generating the extra copies you don’t use. The benefits are straightforward:
- Less disk usage going forward, especially noticeable on sites that upload images regularly.
- Faster individual uploads, since WordPress has fewer resize operations to run per image.
- Faster bulk operations — imports, migrations, or plugin-triggered regenerations all finish sooner with fewer sizes to produce.
- Smaller, faster backups, since there’s simply less in your uploads folder to archive.
None of this is a dramatic overnight fix, but on a large or actively growing media library, it’s a genuinely worthwhile bit of housekeeping.
How AWP helps you see and disable unused sizes
Digging through theme files and view-source output to map out every registered image size is doable, but it’s tedious — and easy to get wrong if a plugin registers sizes you didn’t expect. AWP’s Images module includes a Manage Image Sizes panel that does the discovery work for you.
It lists every image size currently registered on your site — the WordPress core defaults, plus anything added by your theme, WooCommerce, Elementor, or other plugins — along with its dimensions and who registered it. From that list, you can simply toggle off the sizes you don’t need. Once disabled, WordPress stops generating those sizes for new uploads, which is exactly the disk-space and processing-time savings described above.
This sits alongside AWP’s broader approach to images: the plugin also handles AVIF conversion and EXIF stripping at upload time, all processed locally on your own server. And if you’re using AWP’s personalized optimization, the AWP Exchange Server separately analyzes your public pages to determine the best image size to serve per device — that’s a distinct, on-demand process from the sizes WordPress generates at upload, but the two work well together: fewer wasted upload-time sizes, plus smarter, right-sized delivery when visitors actually load your pages. As with any personalized optimization step, your images and files never leave your server — only size measurements are used to make that decision.
A gentle caution before you disable anything
Don’t disable a size just because you don’t recognize its name. If your theme quietly relies on a custom size for, say, related-post thumbnails or a mobile carousel, disabling it can leave those spots looking broken or forced to fall back to a larger, heavier image than intended. Take a moment to check your theme and any active page builder before switching sizes off, and when in doubt, leave it enabled — the upload-time savings from one extra size are rarely worth a visibly broken layout.
Cleaning up unused image sizes is a small, low-risk task that pays off steadily over time — less clutter on disk, quicker uploads, and one less thing quietly working against your site’s performance.
