We built Offloft to prove your media arrived.
Offloft is a WordPress plugin made by Eritson Studios. It offloads your media from your hosting to cloud storage you own, keeps your bucket in sync, and checks every file and image size before your site uses it. With Pro, it also removes the local copies, so you get that hosting storage back.
- No secrets in the code
- Lint and static analysis
- Dependency audit
- Unit tests, also on PHP 8.1
- Integration tests on real S3 storage
- Browser tests, with accessibility
- Clean install, Plugin Check, uninstall
Why Offloft exists
Moving media off a WordPress server solves a real problem, and it can quietly cause new ones. We wanted the first without the second.
Media shouldn't decide your hosting plan.
Images, video and PDFs keep growing, and hosting plans run out of room. Offloft offloads them to storage built for files, on your own account. Pro then removes the local copies once they are verified, which frees up hosting storage and can lower your bill if your plan depends on it.
An upload isn't proof.
An upload can finish while a thumbnail is missing, and a large file can stop partway. Offloft checks each copy in your bucket, including every image size. Your site keeps using the local file until that check passes.
Leaving should be easy.
Your files sit in your own bucket. Normal offloading doesn't change your database, and one action brings everything back to your server, on Free and Pro, even after a license ends.
What we decided from the start
A few decisions shaped the whole plugin. Each one made it harder to build, and easier to trust.
Check first, then serve.
A cloud copy gets used only after it has been checked in your bucket. Everything else in Offloft follows from this rule, so it is in the free plugin.
Leave the database alone.
Media addresses change as pages are shown, so normal offloading doesn't rewrite your posts. For addresses saved in old content, there's an optional tool with a preview and undo.
Your bucket, your keys.
Media goes only to the bucket you connect. Keys are stored encrypted in your own database. The free plugin sends us no data, and Pro talks to Freemius only to manage your license.
Keep the core free.
The free plugin has the full offload workflow, with no file limit and no trial. Pro pays for time saved: automatic setup, scheduled audits, repair, alerts and removal of local copies.
Say what happened, in plain words.
An issue tells you what went wrong, what it affects and what fixes it. Where Offloft can fix it, there's a button. Where it can't, it says what to do.
Remove nothing until it is safe.
Pro removes a local copy only if you turn that on, after every file of that item is verified and a waiting period has passed. If WordPress needs a removed file, it comes back by itself.
Tested against what real sites go through.
Uploads time out, servers restart and storage providers have bad days. We put Offloft through each of these on purpose, and it has to end with your files verified in your bucket, or with a clear message telling you what to do.
- Automated PHP tests
- 2,300+
- Browser tests
- 65
- Failure scenarios
- 12
| When this happens | What Offloft does |
|---|---|
| Uploads keep timing out during a bulk offload | Retries until every file is verified, and leaves no stray copies in your bucket |
| Your storage provider returns errors for a while | Carries on when the provider recovers, until every file is verified |
| Your keys stop working in the middle of a job | Pauses the job, then resumes once the keys are fixed |
| The server kills the process in the middle of a batch | Resumes without uploading any file twice |
| The power goes out during an upload | Recovers the upload |
| The internet drops during a bulk offload | Resumes where it stopped |
| Your server clock is two hours slow | Works out the difference and corrects for it |
| WP-Cron is off, and nothing runs the queue | Tells you work has stalled, and Run now gets it going again |
| An image optimizer writes a WebP after the upload | Syncs the new file to your bucket |
| Thumbnails are regenerated with a new size | Uploads the new size |
| A file changes on your server after it was offloaded | Finds it when you verify everything, and syncs it again |
| A filename uses non-English characters | Handles it from upload to delivery |
Integration tests run against real S3-compatible storage, not only stand-ins. Browser tests include an accessibility sweep of every screen. Unit tests also run on PHP 8.1, the oldest version we support. The release check then does a clean install, runs Plugin Check, turns Pro on and off, and uninstalls.
Refined on real Cloudflare and AWS accounts
We also run Offloft Pro's automatic setup on real provider accounts, because that's where you'll use it. These details came from those runs.
It knows slow from unreachable.
If a provider is slow to answer, Offloft retries the read and tells you it's slow, so you aren't sent checking a network that works fine.
It tidies up after itself.
Automatic setup removes its own temporary key and says so. The key your site needs has a name that tells you to keep it, so the two can't be confused.
It finds the real cause on AWS.
New AWS accounts can have a rule above the account that makes permissions look missing. Offloft tells that apart from a missing policy, and gives advice that fits.
Who makes it
Offloft is made by Eritson Studios, an IT solutions and software engineering studio. We've worked with businesses around the world, and we pride ourselves on being problem solvers.
Offloft came from that habit. We listed the ways moving media to the cloud can go wrong, and built the plugin to handle each one.
Where Offloft is today
Offloft 0.1.0 is out now, with the full offload workflow in the free plugin, and automatic setup, scheduled audits, repair, alerts and removal of local copies in Pro. It works with Cloudflare R2, Amazon S3 and any S3-compatible storage.
See it on your own site: try it on a staging copy, using the tests we suggest for any offload plugin. Every release is listed in the changelog.
Need help?
Start with the troubleshooting pages, or email support@offloft.com.
Found a security issue?
Email security@offloft.com. See how Offloft handles your data.
Fact sheet
| Name | Offloft |
|---|---|
| What it is | A WordPress plugin that offloads media to cloud storage and verifies every file before the site uses it |
| Price | Free; Offloft Pro from $59/year |
| Storage | Cloudflare R2, Amazon S3, Wasabi, Backblaze B2, DigitalOcean Spaces, Akamai (Linode), Scaleway, Vultr, MinIO, any S3-compatible |
| Requirements | WordPress 6.5+, PHP 8.1+ with cURL |
| License | GPL-2.0-or-later |
| Made by | Eritson Studios |
| Current version | 0.1.0 |
| Download | Download page |
| Website | https://www.offloft.com |
| Contact | support@offloft.com |
Your media, in your bucket, checked.
Install Offloft free. Setup takes five steps, and nothing moves until the connection test passes.