New uploads not being offloaded
If files uploaded to the WordPress media library are not being offloaded to cloud storage, there are four things to check. WP Media Cloud skips an offload silently when any of its preconditions are not met — no error is shown in the media library and the file is saved locally as normal.
Check 1: Is automatic offloading enabled?#
Go to WP Media Cloud > Settings and confirm Offload on Upload is enabled. This setting controls whether new uploads are automatically offloaded. If it is disabled, all new uploads are saved to your server only and will need to be offloaded manually via the bulk migration tool.
Check 2: Are credentials complete?#
WP Media Cloud checks that all required credentials for your configured provider are present before attempting any offload. If any required field is empty, offloading is skipped for every upload without an error.
Go to WP Media Cloud > Health and run the health check. Look at the storage credentials result. A failing credentials check means one or more required fields are empty in your settings.
Go to WP Media Cloud > Settings > Storage, confirm all credential fields for your provider are populated, and run the connection test. A successful connection test confirms credentials are complete and the provider is reachable.
Check 3: Can your server reach the storage provider?#
WP Media Cloud uploads files from your server to your cloud storage bucket on every media upload. If your server cannot make outbound HTTPS connections to the storage provider, the upload fails silently and the file stays on your server.
Go to WP Media Cloud > Health and check the upload test result. If the upload test fails but the credentials check passes, the problem is outbound connectivity from your server.
Common causes of outbound connection failures:
- Your host blocks outbound HTTPS connections on port 443
- A firewall rule prevents connections to the storage provider’s IP range
allow_url_fopenorcurlis disabled in your PHP configuration- The
open_basedirrestriction prevents PHP from reading the uploaded file before sending it
Contact your hosting provider if outbound connections appear to be blocked. Ask them to confirm that your server can make HTTPS requests to your storage provider’s endpoint.
Check 4: Is an image optimizer blocking the offload?#
If EWWW Image Optimizer is active in background mode, WP Media Cloud deliberately skips the immediate offload on upload and waits for EWWW’s background compression job to complete before offloading. This is correct behaviour — the file will be offloaded once EWWW finishes compressing it.
If EWWW’s background queue is stalled, the offload will not happen until the queue processes. Go to Tools > Scheduled Actions to check whether EWWW’s compression jobs are pending or failing. Resolving the queue stall will allow the offload to proceed.
For all other image optimizers — ShortPixel, Imagify, Smush, TinyPNG, Cimo, and Image Optimizer by Elementor — WP Media Cloud offloads immediately on upload and re-offloads after compression completes. A stalled optimizer does not prevent the initial offload.
Check 5: Check the attachment for an offload error#
When an offload fails, WP Media Cloud stores the error message in the _wpmc_offload_error postmeta on the attachment. You can check this via WP-CLI to see exactly what went wrong for a specific upload:
wp post meta get {attachment_id} _wpmc_offload_error
Replace {attachment_id} with the ID of the attachment that failed to offload. The error message from the storage provider API will be stored there if an offload was attempted and failed.
What about the licence?#
An expired licence does not prevent offloading. WP Media Cloud continues to offload files with an expired licence — only update notifications are suspended. If offloading has stopped, the cause is one of the checks above, not a licence issue.