Offloading should never be a one-way door. Bring Back downloads your media from the cloud to its original place on your server, checks that every file arrived, and then serves it locally again.
You can bring back a single attachment, a set number, or your whole library.
Verified downloads
An attachment only switches back to local URLs once every file is safely on disk.
Cloud copy kept
By default your cloud files stay in the bucket as a backup.
Disk check first
A preflight shows how much space the restore needs before it starts.
Any provider
Each attachment restores from the provider it was offloaded to, even if you switched providers since.
Before you deactivate or remove OmniOffloader while using Smart Local Cleanup or Full Cloud Migration. Those policies deleted local files, so without Bring Back your site would point at files that are no longer on the server.
You want to stop using cloud storage, or move to a different host.
You need local originals for image editing or regenerating thumbnails after a Full Cloud Migration.
Open OmniOffloader → Bring Back. The page shows Total Library Media, Offloaded (Ready to Restore) and Already Local.
Check the preflight (see below). It shows the estimated download size and the free space on your server.
Choose how much to restore:
All Offloaded Media: every cloud attachment.
Custom Amount: a set number, from presets (5, 10, 25, 50, 100, 250, 500; only those below the number of offloaded attachments are shown) or any number you type.
Under Restore Safety & Storage Options, choose what happens to the cloud files:
Keep Cloud Copies (Recommended): files are downloaded and served locally. The originals stay in your bucket as a backup.
Delete from Cloud After Restore (Reclaim Storage): cloud files are deleted permanently, but only after the download is 100% verified on your server.
Click Start Bring Back. The button shows the batch size, for example Start Bring Back (50 of 800). With Delete from Cloud After Restore, confirm the deletion first.
Follow the progress bar and activity log. You can leave the page; the job keeps running in the background. Click Cancel to stop.
Before you start, Bring Back estimates what the restore needs. The totals are kept up to date as your media changes, so they show at once, however large your library is:
Estimated download: only the files that are actually missing from your server. Files your retention policy kept on the server are not downloaded again. For a custom amount, it shows the estimate for that batch and for the full library.
Free disk space: what the server reports right now.
Space left in your hosting plan (cPanel hosting): read from cPanel’s own quota record, for example “9.3 GB of 10 GB”, together with when cPanel last updated it.
If the free space may not be enough, you see a warning: “Free up space before starting.”
Bring Back watches for the server refusing to save a file (“Disk quota exceeded”, “No space left on device”). When that happens, the run stops right away with a clear out of disk space message, instead of failing download after download.
Nothing is lost. Attachments that were not brought back stay in the cloud and keep working. Free up space, then start Bring Back again; it continues with what is left.
Media Library list view: use the Bring Back row action on any offloaded attachment.
Attachment edit screen: use the Bring Back button in the OmniOffloader box.
Media Library bulk actions: select several attachments and choose Bring Back to Server.
These keep the cloud copy. The one exception: picked in the Media Library while a bulk Bring Back that deletes cloud copies is running, they join that run and follow its choice. To delete cloud copies after restoring, use the Bring Back page with Delete from Cloud After Restore, or wp omnioffloader restore --delete-cloud. See Media Library.
Atomic writes. Each file is downloaded to a temporary file first and moved into place only when it is complete. A half-downloaded file never replaces a good one.
Verified before switching. URLs only switch back to local once every file of the attachment is on disk.
Cloud deletion is opt-in. Deleting cloud files is off by default. When on, a cloud file is only deleted after the local copy is verified. A file that is not on the server afterwards, such as the original kept from an image edit, stays in the cloud.
Confined to uploads. Restores never write outside your WordPress uploads folder.
Partial downloads cleaned up. If the server stops a restore mid-file, the leftover temporary file is removed.
One job at a time. Bring Back never runs together with Bulk Offload, a retention update or a move to the current folder. A single-item offload or Bring Back is refused while any bulk job (offload, Bring Back, retention update or move, from the admin or WP-CLI) is running.
Files that are still on your server are checked against the cloud with one request per attachment. Missing files download side by side, following your Transfer Speed setting.
Why WP-CLI is the better choice for a big library:
No browser needed. Nothing depends on an open tab or on WordPress’s background requests, which some hosts slow down or block.
No web time limits. A web request is stopped after 30 to 60 seconds on most hosts. A terminal command is not.
Easy to follow. A progress bar, or a log file you can check from anywhere, plus wp omnioffloader status with the speed and time left.
Safe to stop and continue. Media that is already back on the server is skipped, so running the same command again picks up where it stopped.
Stops cleanly when the disk fills up, with how much space it needs, instead of failing file after file.
Before a big Bring Back, check that the server has room: the Bring Back page shows the estimated download and the free disk space.
See what would be restored. Nothing is downloaded:
Terminal window
wpomnioffloaderrestore--all--dry-run
Try a small batch first, and check a few images on your site:
Terminal window
wpomnioffloaderrestore--all--limit=500
Restore the rest in the background. It keeps running after you close the terminal and writes its progress to restore.log in your home folder. Cloud copies are kept:
Watch it with tail -f ~/restore.log (Ctrl+C only stops watching), or wp omnioffloader status for the speed and time left.
Stop it at any time with wp omnioffloader stop. Run the command from step 3 again to continue.
To delete the cloud copies too, add --delete-cloud --yes. Each attachment’s cloud files are deleted only after all of them are verified on the server, and this can’t be undone, so keep the cloud copies until you have checked your site. See Deleting cloud copies.
In Safe mode, Bring Back is turned off and hidden. To download media from the cloud to a copy of your site, turn on Allow Bring Back on a copy (download only) in Settings. The cloud copy is then always kept, even if “delete from cloud” is requested.