Skip to main content
InMotion Cloud
BLOG · STORAGE

Object Storage for WordPress Uploads

Moving WordPress media to object storage is the first step to running a site on more than one server. Why it matters and how to move existing files.

Published November 5, 2026 by Danish Rumane

5 Minutes to Read

Two web servers loading images from one shared object storage bucket.

If you want to run a WordPress site on more than one web server, the first thing that gets in the way is usually the uploads folder. Every image, PDF and video your editors upload lands in wp-content/uploads on the server they happened to be using. Add a second server and half your visitors start seeing broken images.

Moving those files to object storage fixes that, and it is a change you can make without rebuilding the site. This guide covers why it matters, how to move existing media safely and what to watch on costs. If your team shares files beyond WordPress, our piece on private cloud file storage for distributed teams covers that side.


Why uploads hold you back

WordPress assumes it runs on one server. When someone uploads an image, it is written to the local disk and the database records its path. That works perfectly until there are two servers.

With two web servers, the file exists only on the server that received the upload. Requests that reach the other server get a missing file.

With backups, uploads are often the largest part of the site, and they grow every week. Copying them between servers or into backups takes longer every month.

With rebuilds, a new server is not ready until the uploads have been copied onto it, which can take hours on a large site.

Object storage moves the files somewhere every server can reach, so the web servers themselves hold only code and configuration.

Comparison of uploads stored on one web server's disk, causing broken images on the second server, and uploads stored in shared object storage that both servers can reach.

Media stored on one server can go missing when requests reach another. Shared storage removes that dependency.


What object storage is

Object storage keeps files as objects in a bucket, reached over HTTP rather than mounted as a disk. Most providers offer an S3-compatible interface, the same programming interface Amazon S3 uses, so tools built for one generally work with others.

For WordPress, that means:

  • Files are stored once and served to every web server, or directly to visitors.
  • Capacity grows as you add files, without resizing a disk.
  • It works well with a CDN, so images can be served from locations near your visitors.

It is not a drop-in replacement for a normal disk. You cannot run a database on it, and software that expects a local folder needs a plugin or adapter to use it.


How to move WordPress uploads to object storage

1. Create a bucket and an access key. Give the key access to that bucket only, not your whole storage account.

2. Install an offload plugin. Several WordPress plugins send new uploads to S3-compatible storage and rewrite media URLs to point at the bucket or a CDN. Choose one that is actively maintained and supports your provider.

3. Test on staging first. Upload a few files, check they appear in the bucket, and check pages load them correctly.

4. Copy existing media. Most offload plugins can move the existing library, or you can copy the uploads folder with a command-line tool and then let the plugin update the database records.

5. Check the URLs. Browse your busiest pages and older posts. Look for broken images, mixed content warnings and image sizes generated by your theme.

6. Keep the local copy until you are sure. Leave the original uploads folder in place for a few weeks, and back it up, before removing it from the servers.

Six-step process for moving WordPress uploads to object storage, from creating a bucket to keeping the local copy until the move is verified.

Test the move, verify existing media and keep the original files until the offload is proven.

If you are planning a move to infrastructure built for more than one server, our pricing page shows what each InMotion Cloud Virtual Private Cloud plan includes.


What to watch on costs

Object storage is usually cheap to store in. The surprises come from moving data out of it.

Data transfer out. Many providers charge every time a file is downloaded, which on a busy site can cost more than the storage itself. Read up on egress fees before choosing a provider, and put a CDN in front to reduce how often files are fetched.

Request charges. Some providers bill per thousand requests. Image-heavy pages with many thumbnails add up.

Minimum storage periods. Some storage classes charge for a minimum duration even if you delete files sooner. Our guide to deletion fees explains how that works.


The quick check

Answer three questions about each WordPress site you would like to run on more than one server:

  • Where do your uploads live? If the answer is "on the web server", start here.
  • Do any plugins store sessions or cache files on disk? Those need a shared store too.
  • Do all servers use the same database and the same security keys in wp-config.php? If not, logins will break between servers.

If any answer is "on this one server", a second web server will not help yet.

Three-point readiness checklist for running WordPress on two servers, covering uploads, plugin sessions and cache, and shared database and security keys.

Check uploads, plugin state and database settings, then test the complete site across both servers.


Where InMotion Cloud fits

On InMotion Cloud, your WordPress servers run as virtual machines in a private environment with fixed monthly pricing that covers data transfer, so serving media from your own servers does not create a per-download bill. Our engineers can help you plan the move to shared storage and the steps that follow it.


Summary

Uploads on a server's local disk are the first thing that stops a WordPress site running on more than one server. Moving them to object storage lets every server serve every file, shrinks backups and makes new servers quicker to build. Test on staging, copy existing media, check URLs carefully, and keep the local copy until you are sure.

Planning to run WordPress on more than one server?

InMotion Cloud engineers will look at how your site stores files today and plan the move with you.


Frequently asked questions

Why move WordPress uploads to object storage? So every web server can reach the same files. It is the first step to running a site on more than one server, and it also makes backups and rebuilds faster.

Will moving uploads break my existing images? It can if URLs are not updated. Most offload plugins rewrite URLs for existing media; check older posts and theme image sizes after the move.

Can I use a CDN with object storage? Yes, and it is usually a good idea. A CDN serves images from locations near your visitors and reduces data transfer from the bucket.

Is object storage the same as a shared network drive? No. Object storage is reached over HTTP through an interface such as S3, not mounted like a disk, so WordPress needs a plugin to use it.


Danish Rumane writes about hosting and cloud technology with a focus on what it means for businesses. His perspective draws on more than a decade in marketing, building brands and creating content across industries.

Share this Article
RELATED RESOURCES

Let’s map your infrastructure to the right plan

A free 30-minute call with our cloud team. We review your current environment and show you exactly what a move to InMotion Cloud would look like: timeline, architecture, and cost.

Compare plans