Why is the editor not saving automatically?
Browser storage limits, service worker conflicts, and offline mode are the usual causes. Diagnose and fix autosave failures here.
You've been writing for 45 minutes and you just realized the 'Saved' badge in the top-right corner hasn't updated in a while. Or you close the tab and come back to find your last several paragraphs are gone. Autosave failures are rare but they happen — here's how to understand why and what to do about it.
How VeloCMS autosave works
The editor autosaves to the server (PocketBase) 2 seconds after you stop typing. You'll see the badge in the editor header cycle through 'Unsaved', 'Saving...', and 'Saved' as you work. If the badge sits on 'Unsaved' even after you've stopped typing for a while, autosave has stalled.
Most common cause: offline or poor connectivity
Autosave requires an active internet connection — it saves to the server, not your local disk. If your connection drops, the editor continues to work locally but can't sync changes to the server. The badge will show 'Unsaved' until a save succeeds. The editor doesn't retry on its own when you come back online — type any character (which restarts the 2-second autosave) or click Save Draft to push the accumulated changes to the server.
VeloCMS does not use a local IndexedDB or localStorage fallback for autosave. All autosaves go directly to PocketBase. This is a conscious design choice — local storage has per-origin size limits and can be cleared by the browser, making it unreliable for long-form content. The trade-off is that offline writing doesn't persist across tab closes.
Service worker conflicts
If you have browser extensions that install service workers (some ad blockers, VPNs, and privacy tools do this), they can intercept network requests from the editor and drop them. If autosave worked before and suddenly stopped after installing a browser extension, disable extensions one by one in an incognito window to isolate the culprit.
- Open Chrome DevTools → Application → Service Workers.
- If you see service workers not from velocms.org listed as 'Activated and running', a third-party service worker is active.
- Click 'Unregister' on any non-VeloCMS service worker and reload the editor.
- If autosave works after this, the extension that registered that service worker is the culprit. Disable it for velocms.org.
The manual save fallback
The Save Draft button in the editor header triggers an immediate save outside the autosave cycle. This is your safety net. If you're about to close the tab and the badge shows 'Unsaved', click Save Draft first and wait for the badge to say 'Saved' before navigating away.
If Save Draft succeeds but autosave keeps failing, the likely cause is a network instability that resolves itself between your manual saves. Check your connection and try writing on a different network to confirm.
If content was actually lost
If you lost content and need to recover it: in Admin → Posts, find the affected post and look at the 'Last updated' timestamp. If the timestamp matches your last known save, the content is there. For content that was saved at some earlier point, the post's Revisions tab keeps the last 10 saved versions with a word-count delta per version and a Restore button. But if the post shows an older timestamp and no revision covers it, content written after that point was never saved to the server — without a local copy, it cannot be recovered. For future protection, clicking Save Draft during long writing sessions is a good habit.