Backups and restoring
With Settings → Keep original images on (the default), BytCrush copies every file byte for byte before it changes anything. That covers the main image and every size WordPress generated. If a copy can't be made, the image isn't touched at all and is marked as failed: Could not back up photo.jpg, so nothing was changed.
Where the originals are
In a folder inside your uploads folder, named bytcrush-backups- followed by a random code that is unique to your site:
wp-content/uploads/bytcrush-backups-a1b2c3d4e5f6/2026/04/photo.jpg
wp-content/uploads/bytcrush-backups-a1b2c3d4e5f6/2026/04/photo-300x200.jpg
- The folder mirrors your uploads folder, so each original sits at the same relative path as the live file.
- The exact folder name is shown under Keep original images on the Settings screen.
- The random name keeps the originals, which still contain camera and GPS metadata, from being guessed. That matters on Nginx, which ignores
.htaccessfiles. - The folder also gets an
.htaccessfile that denies web access on Apache and LiteSpeed, and an emptyindex.php. - Files that live outside the uploads folder are backed up under
external/inside it.
The first copy of a file is the true original and is never overwritten. Optimizing an image again doesn't replace its backup with an already-compressed version.
WebP and AVIF copies are made from the backed-up original when there is one, not from the compressed file, so quality isn't lost twice.
The dashboard's Originals kept counter shows how much space the backups take. When you start a bulk run, BytCrush estimates the space the remaining originals will need and warns you if the disk looks too small: Backing up the remaining images needs roughly … but only … is free.
Restore one image
- Go to Media → Library (list view) and find the image, or open it in the attachment details window.
- In the BytCrush panel, click Restore original and confirm.
BytCrush:
- copies the original of the main file and of every size back into place;
- deletes the image's WebP and AVIF copies;
- puts back the original width and height in WordPress if the image had been resized;
- deletes the backup copies, since the originals are live again;
- marks the image as Not optimized.
Restore original only appears when the main file has a backup. If an image has no backup at all, restoring only removes its WebP/AVIF copies: No backup was kept for this image, so only the WebP/AVIF copies were removed.
To optimize it again later, click Optimize now. With backups on, a new backup is made first.
Restore every image
- Go to BytCrush → Dashboard and scroll to Restore all originals.
- Click Restore all and confirm.
This does the same as Restore original for every image BytCrush has processed, including failed and skipped ones. A background run in progress is stopped first. The dashboard shows Restoring originals… with a progress bar, then Restored N images to their originals. Keep the tab open until it's done.
Afterwards every image counts as not optimized. New uploads are still optimized automatically if that setting is on, but your existing images stay as they are until you click Optimize all images again.
Re-optimizing with different settings
Re-optimize in the Media Library restores the original first (when there is a backup), then optimizes again with the current settings. Use it after changing the compression level, so the new level is applied to the original rather than to an already-compressed file.
Turning backups off
If you switch Keep original images off:
- images optimized from then on have no original to restore;
- backups made before stay where they are and can still be restored;
- the dashboard says Backups are turned off.
Only do this if you have your own full backup of the uploads folder.
When an image is deleted or replaced
- Deleting an image from the Media Library also deletes its backups and its WebP/AVIF copies.
- Replacing the file at the same address, for example with a media-replace plugin, discards the old image's backups and copies, because they belong to the previous file. The new file is optimized like a new upload when Optimize new uploads automatically is on.
Deleting the plugin
Deactivating BytCrush doesn't touch your images. It removes the server rewrite rules from uploads/.htaccess and stops a background run. Your optimized images, their WebP/AVIF copies and the backups all stay.
Deleting the plugin from the Plugins screen always removes the rewrite rules and the background-run state. What else happens depends on Settings → Delete all data when uninstalling:
| Off (default) | On | |
|---|---|---|
| Optimized images | Stay optimized | Stay optimized |
| Backed-up originals | Kept in the backup folder | Deleted |
| WebP/AVIF copies | Kept | Deleted |
| Settings and statistics | Kept | Deleted |
Deleting the plugin never puts the originals back. If you want your original files live again, run Restore all first, then delete the plugin.
With the option off, you can delete the plugin and reinstall it later: your settings, statistics and backups are still there. The backup folder can also be removed by hand at any time if you no longer need the originals.