Why 7-day log retention isn't enough
"The customer says they never got the password reset email." It's one of the most common support tickets in any SaaS product, and how fast you can answer it depends entirely on how long your email provider keeps logs.
The math of a 7-day window
A lot of entry-tier plans cap log retention at 3–7 days. That sounds reasonable until you do the math on when support tickets actually arrive: a customer who didn't get an invoice email might not notice, or complain, for weeks. By the time it reaches an engineer, the log that would explain it is already gone, and "we don't know why" becomes the only honest answer.
What a useful log actually contains
- Full delivery timeline: queued, sent, delivered, opened, bounced, complained
- The raw SMTP response code, not a paraphrased summary
- Search by recipient, subject, domain, or status, not just a message ID you have to already know
90 days as a baseline, not an upsell
Retention is cheap to provide and expensive to lack. Storing 90 days of structured event data costs a rounding error compared to what it costs in support time, and in trust, to tell a paying customer "we can't check that anymore." It's worth treating as a baseline feature on every tier rather than a premium add-on reserved for the top of the pricing page.
A realistic debugging timeline
Walk through where the days actually go on a real ticket. A customer misses a shipping notification and doesn't notice until they're checking order status a week later; that's day 7 before the ticket is even filed. Support triages it and escalates to engineering two days after that; day 9. Engineering gets to it during the next sprint's bug triage; day 12 to 14. On a 7-day retention window, the log is gone before the ticket is even escalated, let alone investigated. This isn't an edge case, it's closer to the median path a real support ticket takes through a small team's queue.
The gap compounds for anything involving a billing cycle: a customer disputing a receipt email from last month's invoice run is asking about something 30+ days old by definition. A provider whose longest retention tier caps at 30 days can't answer that question at all, regardless of how good its log search UI is.
Retention versus searchability: two separate features
Keeping 90 days of raw event data and being able to actually find the relevant message inside it are different engineering problems, and a provider can solve one without the other. A log store that only supports lookup by exact message ID is technically retaining 90 days of data, but useless for a support ticket that only has a customer email address and an approximate date. Confirm you can search by recipient, subject line, sending domain, and delivery status, not just an ID you'd need to already have on hand.
This is also where structured event data earns its cost over a raw SMTP transcript. A parsed timeline (queued, sent, delivered, opened, bounced, complained, each with a timestamp) answers "what happened and when" directly. A raw log dump requires a human to reconstruct that sequence by hand, which is slower exactly when speed matters most: a customer waiting on a support reply.