Move images, sounds and fonts that older projects keep inside the database out to real files — checked file by file before anything is removed.
Moving Stored Media to Files
Older projects — and anything imported before media went straight to files — can still keep images, sounds and fonts inside the project database as base64 text. That makes the editor slower to open, publishing slower, and backups much bigger. The editor can move them out to real files for you, and it checks every file before it removes anything.
Where to find it#
- Tools → Project Health (or Ctrl/Cmd+K → Project Health). When anything is left, a card at
the top reads "N media rows still stored in the database (X MB)".
- The desktop Studio also does it on its own in the background (see below).
How to move them#
- Open Project Health.
- On the Media stored in the database card, click Move to files. If an earlier run stopped
part-way, the button says Resume and picks up where it stopped.
- Leave the page open while it works. The status line counts files moved and how many are left.
Click Stop after this step to pause; run it again later to continue.
- When a local project finishes, the editor compacts the database and the card shows its size
before → after.
- If some files could not be moved, the card lists the first one and why. Click Move to files
again to retry them.
What each part does#
| Item | What it does |
|---|---|
| N media rows still stored in the database (X MB) | How many media items still hold their bytes inside the database, and roughly how big they are. |
| Move to files / Resume | Moves them in small batches. On a desktop project the files go into your project's media folder; on a hosted project they go to your project's cloud storage. |
| Stop after this step | Finishes the batch in progress and stops. Nothing is half-moved. |
| Move automatically in the background when the desktop Studio opens this project | When on, the desktop Studio moves the rest while you are not using the editor. On by default for local projects, off for hosted projects. |
| Last clean-up: database A → B | The database size before and after the last space reclaim (local projects only). |
Automatic moving in the desktop Studio#
About 20 seconds after you open a local project, the Studio checks for stored media. If any is left and the setting is on, it moves one small batch at a time — only after a few seconds without keyboard or mouse input, and only while the window is visible. Switching project or closing the Studio stops it after the current batch; it continues the next time you open the project.
Gotchas#
- Nothing is deleted until its copy is verified. Each file is read back and its fingerprint
compared with the original. If they differ, the database copy stays and the item is listed as failed.
- Edits win. If you change a media item while it is being moved, that item is left as you edited
it and moved on the next run.
- Shared databases keep their media. A project whose database is shared with other machines (a
Docker or remote database without cloud storage) cannot move media from here — the card says so. A file on one machine's disk would be missing everywhere else.
- Cloud-synced desktop projects keep their media too. When a desktop project syncs to a cloud
copy, the card says media stays in the database and nothing moves, automatically or by hand — otherwise the cloud copy would receive rows pointing at files that only exist on your computer.
- Hosted projects don't run it automatically; click the button. Space is reclaimed by the hosting
database on its own, so there is no before/after size.
- Publishing still works while media is stored in the database. The publish step **Optimize
media** runs this same move, so a publish also makes progress on it.
- For AI tools:
GET /api/ai/media/offloadreports what is left;POSTis a dry run unlessyou send
confirm: true(fields:maxSeconds,maxBatches,reclaim,autoRun). Repeat untildone: true. - There is no feature flag — this is always available.