-->
Explore Firestore's Point-in-Time Recovery (PITR) and see how Fuego enables you to navigate document history, view diffs, and restore data visually with ease.
When dealing with critical production data, the ability to recover from mistakes—like accidental deletions or unwanted overwrites—is essential. Firestore’s Point-in-Time Recovery (PITR) feature provides this capability by allowing you to restore data to a specific moment in the past. But while powerful, using PITR effectively from the Firebase CLI or Console comes with several limitations.
In this post, we’ll walk through:
PITR lets you recover data by reading the state of your Firestore documents as they were at a specific timestamp within the last 7 days. Firestore stores every change to a document during this retention period, making it possible to:
However, there are important constraints:
PITR is disabled by default, when enabled, it incurs additional storage costs
You must manage timestamps and read times manually via the API or Firebase CLI
The Firebase Console offers no UI to navigate historical document states
When PITR is enabled, Firestore stores document changes every second for the first hour, then every minute for up to 7 days.
When PITR is disabled, Firestore retains a 1-hour recovery window, storing document snapshots once per minute.
Snapshots are only created when a document changes. If multiple changes occur in the same second (within the first hour) or the same minute (after the first hour), only the last version within that interval is retained.
Fuego provides a complete graphical interface for working with PITR in Firestore. Whether you’re restoring a single document or reviewing the state of your entire database at a specific time, Fuego streamlines the entire process.
To recover a specific document, just right-click it and select “Point in time recovery”. You’ll see a full diff viewer that lets you:
This view uses a familiar editor experience (inspired by VS Code) to highlight what changed and when. You can confidently choose which version to restore without writing a single line of code.
Fuego also supports PITR at scale using read time-based queries. Just set a read time using the clock icon in the toolbar, and Fuego will load documents as they were at that timestamp.
You can:
If you decide to restore the results of the query:
🔔 Note: When restoring based on read time, documents that didn’t exist at that point in time are not modified.
Feature | Firebase Console | Fuego UI |
---|---|---|
Browse document history | ❌ | ✅ |
Visual diff between versions | ❌ | ✅ |
Restore individual documents | ❌ | ✅ (1-click) |
Restore multiple documents via query | ❌ | ✅ |
See what changed at read time | ❌ | ✅ |
No scripting required | N.A. | ✅ |
Fuego turns a complex CLI-driven recovery flow into a safe, visual experience that saves time and reduces risk.
If you rely on Firestore in production, integrating PITR into your workflow is a must—and using Fuego makes it easy.