Last updated: March 2026
All files are stored on Cloudflare R2 with no expiration date. There is no retention limit while the account is active. Unlike WeTransfer (3 days), files on TrazaLab never disappear.
This is not a minor difference. In dental lab workflows, cases are routinely revisited months or years after completion — shade references for adjacent teeth, design files for opposing restorations, clinical notes for warranty cases. Every file uploaded to TrazaLab remains linked to its case permanently. The STL scan from 18 months ago is exactly where you left it.
Cloudflare R2 provides built-in redundancy through automatic multi-region replication. Files are stored across multiple geographic locations without any configuration required from TrazaLab users.
This means there is no single point of failure for stored data. If one data center experiences an outage, the replicated copies in other locations remain accessible. The replication is handled at the infrastructure level — it is not dependent on TrazaLab's application code.
Database records (case metadata, Rx fields, audit logs, message history) are backed up independently of file storage. Database backups run on a regular schedule with point-in-time recovery capability.
Recovery Time Objective (RTO): The target is to restore service access within 4 hours of a significant outage. For file storage (Cloudflare R2), recovery is typically faster because the infrastructure handles failover automatically.
Recovery Point Objective (RPO): For files, the RPO is effectively zero — files are replicated immediately upon upload. For database records, the RPO target is under 1 hour, based on backup frequency.
These are design targets, not SLA guarantees. We disclose them transparently because we believe labs evaluating our platform deserve concrete numbers, not vague reassurances.
If TrazaLab experiences an outage, here is exactly what happens:
Files remain safe. Cloudflare R2 storage operates independently of the TrazaLab application. An application outage does not affect stored files.
WhatsApp notifications pause. Status change notifications will queue and be delivered once service is restored. No notifications are lost.
Uploads in progress resume. TrazaLab uses tus.io for resumable uploads. If an upload is interrupted by an outage, it continues from where it stopped once the service returns — no need to re-upload the entire file.
Your workflow continues. TrazaLab is a coordination layer, not a production tool. If the platform is temporarily unavailable, your lab, clinic, and scanner continue to operate. Cases in progress are not affected because all data is already stored.
The account owner can export all cases, files, photos, and history at any time. No lock-in, no permission required, no egress fees (Cloudflare R2: $0 egress).
This is a deliberate architectural decision. Many SaaS platforms charge egress fees or make data export difficult to discourage leaving. We chose Cloudflare R2 specifically because it charges $0 for data egress. If you want to leave TrazaLab, you take everything with you at no cost.
Export includes: all case records, Digital Rx data, chat messages, file attachments, shade photos, STL scans, audit logs, and approval history. The export format is structured for readability and portability.
Clinical data belongs to the surgeon/clinic. TrazaLab is the custodian, not the owner. The surgeon holds the master key: they decide who has access, who can view, and who cannot.
This principle is enforced technically, not just legally. The doctor can revoke any user's access instantly. The doctor can export all data at any time. The doctor can delete their account and all associated data. TrazaLab cannot access clinical data without explicit authorization from the account owner.
When an account is closed, the account owner has 14 days to export all data. After the 14-day window, all associated data — files, messages, Rx records, audit logs — is permanently deleted from all storage locations. This deletion is irreversible.
We do not retain clinical data after account closure for analytics, training, or any other purpose. When we say deleted, we mean deleted.
Storage: $0.015/GB/month (Cloudflare R2). A lab handling 200 cases: ~$1.40/month. AES-256 encryption included. Cost of a lost case: $0.
To put this in perspective: the average cost of a single shade remake (materials + chair time + lab time) ranges from $400 to $800. The annual storage cost for a busy lab's entire case archive is less than the cost of one remake. The math is straightforward.