How long data is kept
Retention of every kind of record Assetli stores, what happens when you delete something, and what still exists in backups afterwards.
Last updated: September 16, 2026
Retention periods below are taken from the database indexes and constants in the code on the date above. Where a period is not controlled by the application, the table says so.
Your content
| Data | Kept |
|---|---|
| Accounts, transactions, investments, properties, vehicles, valuables, budgets, goals, subscriptions, loans, utility readings | Until you delete the record, or your account |
| Uploaded files (statements, photos, documents) | Until you delete them, or your account; the file is removed from object storage, not only unlinked |
| In-app AI conversations | Until you delete them |
| Saved property checks | Until you delete them |
| Property checks run without an account | Not saved to any account; the result is cached for 7 days by a fingerprint of the listing text |
| Notifications | 30 days |
| Saved calculator plans | Until you delete them |
Security and access records
| Data | Kept |
|---|---|
| Sign-in session (cookie) | 7 days |
| OAuth access token (MCP, mobile) | 1 hour |
| OAuth refresh token | 60 days, replaced on every refresh; all tokens of a connector are revoked immediately when you remove it |
| OAuth authorisation code | 10 minutes, single use |
| Google Sheets add-on tokens | 1 hour access, 30 days refresh |
| MCP audit log (write calls only) | 365 days |
| Email verification link | 24 hours |
| Password reset link | 60 minutes |
| Failed sign-in attempts | Counted within a 15-minute window; a lockout lasts 15 minutes |
| Rate-limit counters | 24 hours |
| Two-factor secret and backup codes | Until you disable two-factor authentication or delete the account |
Operational records
| Data | Kept |
|---|---|
| Database backup | Made daily, encrypted with AES-256, kept 30 days on GitHub |
| Hosting request logs and function output (Vercel) | Per the Vercel plan; not controlled by the application |
| AI usage counters (budget, operations) | Reset monthly |
| Payment records | Held by Stripe under its own rules |
Deleting your account
Settings → Delete account removes, in one operation: the user record, every profile, and every record keyed to you in every collection, including records owned through a shared-expense group or a Family Legacy contact, failed sign-in attempts keyed to your email, and every file in object storage. The confirmation phrase is required.
Two things survive that deletion for a limited time and are outside our live database:
- Backups. A daily backup taken before the deletion still contains your data until it expires, at most 30 days. Backups are encrypted and used only to restore the whole database after a failure.
- Payment records at Stripe, under Stripe’s own retention obligations.
Emails already sent cannot be recalled from Resend or from your inbox.
Exporting your data
Settings → Export data produces a file with every record you own across all collections, excluding authentication secrets and transient logs. You can export as often as you like.