,

How to fix slow WordPress media uploads at scale

Slow wordpress media uploads waste editor time and often hide a deeper hosting problem. Here is how to diagnose and fix the cause.

Fibre optic cables for data transfer

Slow WordPress media uploads are not just an annoyance for editors. They cost real time across a content team, they trigger PHP timeouts on shared hosting, and they often hide a deeper hosting problem. This guide breaks down why uploads get slow and the fastest way to fix it without changing host.

What slow uploads actually look like

Editors see a progress bar that crawls. The browser hangs. PHP times out. Sometimes the file appears in the library with a broken thumbnail. Sometimes it does not appear at all and the same upload has to be tried twice.

On a busy editorial team this adds up to hours of lost time every week. It also makes editors avoid uploading at all, which leads to fewer images per article and weaker storytelling.

Why slow wordpress media uploads happen

Three reasons cover most cases. The PHP upload_max_filesize is too low. The hosting plan has slow disk. Or image regeneration on upload is generating ten image sizes synchronously while you wait.

The first two are configuration. The third is structural. WordPress generates several variants of every image to power srcset. That regeneration is expensive and happens during the upload request by default.

Configuration fixes

Raise upload_max_filesize and post_max_size in php.ini or via your host control panel. Increase max_execution_time. Make sure memory_limit is high enough to fit the largest image you upload, multiplied by two.

If your host blocks these changes, raise it with support. Most managed hosts will adjust on request.

Offload the work to where it belongs

The real fix on a busy site is to take the file off the origin as soon as it lands. With a media offload plugin in place, the upload flow is: file lands on origin, plugin streams it to S3, image variants generate asynchronously or on demand, and the editor moves on. Defyn Media Offload handles this flow and survives PHP timeouts because the heavy work happens in the background.

Combined with a host that has decent IO, the Defyn Media Offload plugin turns a thirty second upload into a five second one.

For bulk imports, use the CLI

If you have hundreds of images to import, the WordPress admin uploader is the wrong tool. Use WP-CLI to import in batches that survive SSH disconnects. The plugin supports resumable bulk migration via the CLI, which is the safe way to move thousands of files.

Once the bulk is done, day to day uploads through the admin go fast because the heavy regeneration is decoupled from the upload request.

Frequently asked questions

Why are my slow wordpress media uploads only slow for big files?

Because PHP variants like upload_max_filesize gate large uploads. Small files slip under the limit. Large ones hit it and stall.

Does a CDN fix upload speed?

No. A CDN speeds up delivery to readers, not uploads from editors. Upload speed is about the origin and the plugin pipeline.

Will offloading slow uploads further?

Briefly during the initial sync, then not at all. After setup, uploads are usually faster because heavy regeneration moves to a background process.

What about video?

Video is the worst case. Always offload video to object storage with a CDN. The browser uploader is fine. The origin is the bottleneck.

Claire Smith Avatar
Sponsored Loved this story? Defyn turns articles like this into the websites your competitors wish they had. Talk to us → defyn.com.au