Screenshotify
Help · Save and load

Saving and loading projects.

TL;DR. Auto-save runs every 600 ms to localStorage — refresh the page and you keep your work. Signed-in users also get cloud-save. Export as JSON for full portability.

Three storage layers

Screenshotify saves your work in three places, all at once when applicable:

How to load a project

On a signed-in browser, the most recent cloud project loads on open. To switch projects: click the project name in the header → "Projects" → pick one. From a JSON file: click the project name → "Load from JSON" → pick the file.

If you're not signed in, only the most recent browser-local project is restored on open. Previous projects in this browser aren't accessible — sign in for project history.

Multiple projects in parallel

Open Screenshotify in multiple browser tabs and each gets its own working state. Auto-save still runs per tab; the last write wins. For real parallel work (e.g., variant A vs variant B side by side for ASO testing), sign in and create two separate cloud projects.

What's actually in the JSON

A Project JSON contains: panel definitions, layer arrays, the global background, language list, active language, project name, autosave setting, export-formats list, plus inline data-URLs for any uploaded screenshots. Average size for a 5-panel carousel with 5 screenshots: 5–15 MB (screenshots dominate). Compresses to ~30% of that with gzip.

Undo and redo

500-step history per session. Cmd/Ctrl+Z to undo, Cmd/Ctrl+Shift+Z to redo. History resets when you load a different project or refresh the page (auto-save preserves the current state but not the history).

Common questions

I refreshed and lost everything.

Browser localStorage can clear if you used private/incognito mode, or if the browser ran out of storage quota (the Safari aggressive 7-day partitioned-storage policy is a common culprit). Sign in for cloud-side recovery, or export JSON regularly during long sessions.

Can I share a project with a collaborator?

Export as JSON, share the file via Drive / Notion / Slack. Drop the JSON into their editor → "Load from JSON". For real-time collaboration we're not built that way yet.

Why is cloud sync optional?

Because signing up is friction. The editor works fully without an account. Cloud sync exists for users who want it; nobody is forced to create one to use the product.

Open the editor →