How to Choose a WordPress Media Offload Plugin
To choose a WordPress media offload plugin, first make sure it supports your storage provider and your budget. Then test it on a staging copy with a small batch: check that every image size arrives, see how it reports a failure, and bring your files back once. Feature lists won't show you those things, but a short test will.
We make Offloft, so we aren't neutral. These tests work on any plugin, including ours.
What should you check first?
These narrow the list before you install anything:
| Question | Why it matters |
|---|---|
| Does it support your provider? | Check the provider by name, and whether "S3-compatible" covers yours |
| Can it use your own bucket? | Some services bundle storage, so your files and bill stay with them |
| Can it use your own domain? | Your image addresses stay the same if you change provider later |
| Does it handle your existing library? | Some tools only offload new uploads, or limit bulk moves to a paid plan |
| Who charges what? | The plugin's price is separate from storage, requests and download fees |
| Does it fit your files? | Public images are different from private downloads and protected video |
How do you test a plugin properly?
Use a staging copy with a fresh backup, and a batch of 10 to 20 items. Include a large image, a PDF and, if you use them, a video and a WebP file.
- Count the files. One image becomes several files. Compare what's in your uploads folder with what's in the bucket.
- Open a page on a phone-sized screen. Smaller screens load smaller sizes, which is where missing thumbnails show up.
- Inspect the image addresses. Check
srcandsrcset, so you know every size points where it should. - Add a size after the upload. Change a theme's image size or regenerate thumbnails, then see whether the new files arrive.
How does it behave when something fails?
A test where nothing goes wrong tells you little, so cause a failure on purpose:
- Delete one thumbnail from the bucket. Does anything tell you? Does the page break, or fall back to your server?
- Use a wrong key, then start an upload. Does the plugin stop and explain it, or look as if it worked?
- Interrupt a bulk move. Pause it or restart the server partway. Does it carry on where it stopped?
- Look for the error yourself. Can you tell which file failed and why, without reading a server log?
Can you get your files back?
This is the test people skip, and the one you'll care about most later.
- Bring everything back to your server, using the plugin's own tool.
- Turn the plugin off, clear your caches, and open your pages.
- Check your database. Search a post's content for your cloud address. If the plugin saved those addresses into your posts, ask how it undoes that.
If the plugin can remove local copies, repeat this after it has removed them. Note how much disk space you'd need to bring them back.
What should you check for your kind of site?
- Shops: product galleries, cart thumbnails, order emails and any protected downloads.
- Page builders: images set as backgrounds, which can be saved inside generated CSS.
- Image optimizers: whether the optimized version or the original gets uploaded, and whether WebP or AVIF copies go too.
- Agencies: WP-CLI support, settings you can copy between sites, and how the license handles client sites.
How does Offloft do on these tests?
Run them and see, because your site is the test that counts. Offloft is free with no file limit, works with your own bucket and domain, checks each file and size before using it, and has a way to bring everything back. It keeps your local files unless you use Offloft Pro to remove them, and it's built for public media rather than private downloads.