Data Retention
Unseenr retains data based on your plan's retention period. Older data is automatically deleted.
Event Retention by Plan
| Plan | Retention Period |
|---|---|
| Free | 7 days |
| Starter | 30 days |
| Pro | 90 days |
| Business | 180 days |
| Scale | 365 days |
| Platform | 365 days |
What Gets Cleaned Up
The worker runs a daily cleanup job at 03:00 UTC that deletes:
- Error events (IssueEventSample) older than the retention period
- Issues with zero remaining events after cleanup
- Session replays older than the retention period (including S3 storage)
- Monitor checks older than the retention period
- Audit logs older than 365 days (all plans)
Usage Data
Redis Counters
| Key | Purpose | TTL |
|---|---|---|
event_quota:{orgId} |
Real-time quota enforcement | 35 days |
usage:{orgId}:{YYYY-MM} |
Monthly billing counter | 60 days |
replay_quota:{orgId} |
Replay quota enforcement | 35 days |
Redis counters auto-expire via TTL. No manual cleanup required.
Database Snapshots
The Organization.eventCount and replayCount fields in PostgreSQL are synced from Redis periodically. These reset on billing cycle reset (every 30 days at 00:05 UTC).
Billing Records
Unseenr does not store invoices or payment records directly. All billing documentation is managed by Stripe:
- Stripe stores invoices, metered usage records, and payment intents permanently
- Unseenr retains Stripe Customer IDs and Subscription IDs in the database
- Audit logs for billing-relevant actions (plan changes, cancellations) are retained in the AuditLog table
This satisfies the legal retention requirement (10 years for invoices under German tax law) through Stripe as the payment processor.
Data Export
For GDPR/DSGVO compliance, organization owners can request a data export. Exported data includes all error events, logs, and replay metadata within the retention period. The export is logged as an DATA_EXPORTED audit event.
Custom Retention
Enterprise plans (Scale, Platform) can request custom retention periods through the admin override system. Contact support for custom configurations.