Enterprise customers can configure custom retention periods. Custom retention may affect pricing. Contact [email protected] for details.
Quick Reference
| Category | Description |
|---|---|
| By Subscription Tier | Artifacts, test results, test details, analytics |
| By Data Category | Accounts, sessions, API keys, tokens, billing, audit logs |
| Automated Cleanup | Scheduled jobs and cascade deletion |
| GDPR Data Rights | Export, deletion, portability |
Retention by Subscription Tier
All test-related data (artifacts, results, details, analytics) follows the same retention period per tier.| Tier | Retention Period |
|---|---|
| Free | 14 days |
| Pro | 90 days |
| Team | 365 days |
| Enterprise | Custom |
- Artifacts: Screenshots, videos, Playwright traces, console output
- Test Results: Run metadata, test case results, pass/fail status, error details, flaky test data
- Test Details: Execution steps, annotations, attachment metadata
- Analytics & Reports: Aggregated metrics, trend data, flakiness rates, performance analytics
Retention by Data Category
| Data Category | Retention Period | Notes |
|---|---|---|
| User accounts | Until deletion | Soft-deleted on account deletion request |
| Organization data | Until deletion | Retained while organization is active |
| API keys | 30 days after expiry | Marked inactive, cleaned up periodically |
| Sessions | 7 days | Cleaned up daily |
| Verification tokens | 1 hour | Email verification and password reset tokens |
| Integration tokens | Until revoked | OAuth tokens for third-party integrations |
| Billing records | Per legal requirements | Payment and invoice records |
| Git metadata | Matches test run retention | Commits and PR data tied to test run lifecycle |
| Source attribution | Matches user account | UTM and ad tracking data stored with user profile |
| Audit logs | 12 months | Security and compliance audit trail |
Automated Cleanup
TestDino runs scheduled jobs to enforce retention policies.| Job | Schedule | Action |
|---|---|---|
| Data retention cleanup | Daily, 3:00 AM UTC | Deletes expired test runs, suites, cases, and artifacts |
| Session cleanup | Daily | Removes expired sessions (older than 7 days) |
| API key cleanup | Every 5 minutes | Marks expired API keys as inactive |
| External access cleanup | Daily, 3:00 AM UTC | Removes expired external member access and invitations |
| Incomplete shard cleanup | Every 5 minutes | Recovers or marks orphaned shards after 10-minute timeout |
| Orphaned run cleanup | Daily | Deletes test runs stuck in pending/running for 24+ hours |
Cascade Deletion
When a test run expires and is deleted:- Test run record is deleted from MongoDB
- Associated test suites are cascade deleted
- Associated test cases are cascade deleted
- Artifacts (screenshots, videos, traces) are deleted from Azure Blob Storage
- Cached analytics referencing the run are invalidated
GDPR Data Rights
Data Export
Users can request a full export of personal data:- User profile information
- Organization memberships
- Project data
- Test run history
- Settings and preferences
Account Deletion
Users can request account deletion:- Account is soft-deleted (
isDeletedflag set) - Personal data is anonymized per compliance requirements
- Associated data is removed or anonymized per the retention schedule
- Deletion is irreversible after processing
Data Portability
Test results and analytics can be exported via the TestDino API for migration or backup.Important Notes
- Retention periods start from the creation date (e.g., test run completion date for results)
- Data may be deleted at any point after the period expires. Deletion does not occur on the exact expiry date.
- Upgrading your plan does not restore data already deleted under a previous plan’s retention policy
- Enterprise custom retention periods may affect subscription pricing