Free-tier database lifecycle
Free-tier databases are meant for evaluation and small projects, so they have an automatic lifecycle: they expire, get suspended, and are eventually purged unless you upgrade. Paid databases never expire. This page documents the exact timeline and how to keep a database running.
One free database per organization
Section titled “One free database per organization”Each organization may have exactly one free-tier database. Attempting to create a second free database while one already exists is rejected.
The timeline
Section titled “The timeline”A free database is created with lifecycleStage = active and expiresAt = created + 30 days. From there the worker-driven lifecycle is:
| Day | Event | State |
|---|---|---|
| 0 | Free database created | active, running, expiresAt = +30 days |
| 30 | Expiry → suspend | Database is suspended (status: stopped); it stops accepting connections |
| 44 | Purge (14 days after suspend) | Database is permanently purged |
In short: 30 days active → suspend → 14-day grace → purge.
- At 30 days the database is suspended — the cluster is stopped and it no longer serves traffic.
- 14 days after suspension (day 44) the database is permanently purged. This is not recoverable.
What a purge leaves behind
Section titled “What a purge leaves behind”A purged database keeps a tombstone row (lifecycleStage = purged, status: deleting) for bookkeeping, but that row is excluded from every read path — it does not appear in list results and its detail endpoint returns 404. From your perspective the database is gone.
Keeping a database
Section titled “Keeping a database”To keep a free database running past 30 days, upgrade it to a paid tier before it is purged. On upgrade:
- Paid databases never expire — the expiry clock is removed.
- You gain scheduled backups, no suspend/purge lifecycle, and access to multi-zone HA (
replicaset) and metrics.
Upgrade by changing the tier from free-tier to any paid tier (standard-tier and up). A paid tier requires an active paid plan.
Downgrading re-arms the clock
Section titled “Downgrading re-arms the clock”Downgrading a paid database back to free-tier re-arms the 30-day lifecycle — a fresh 30-day expiry is set and the suspend → purge timeline starts again. Because of this, a downgrade to free requires an explicit confirmDowngradeToFree: true acknowledgement. The downgrade is a compute-only downscale that keeps the existing disk (Kubernetes cannot shrink a PVC). See Tiers & scaling.
Other free-tier constraints
Section titled “Other free-tier constraints”- Single-zone only. A free database is
standalone(Single Zone, 1 replica). Multi-zone HA (replicaset) requires a paid tier. - Backup retention on free is capped at 7 days. See Backups & restore.
- Connection limit on free is 50 concurrent connections. See Tiers & scaling.
Notifications
Section titled “Notifications”The lifecycle is worker-driven, and expiry/suspension is surfaced to you (in-app and by email) so you have the chance to upgrade before a purge. Upgrade to a paid tier at any point before the purge to keep the database.
Related
Section titled “Related”- Databases overview
- Tiers & scaling — upgrade to keep, or downgrade (re-arms the clock).
- Backups & restore — retention differs by plan.
- Plans & limits — the free-plan database limit.