Back to all posts

Why analytics retention is 90 days, not 30 or forever.

Thirty days is too short. Forever is a liability nobody asked for. The reasoning behind AIVA's 90-day default — and why it's fully exportable regardless.

NI
Nisha Iyer
Engineering

Every customer eventually asks the same two questions about analytics data, usually in the same conversation: "why isn't it longer?" and, from someone else on the same call, "why do you keep it at all?" Ninety days is the number we landed on, and it wasn't arbitrary — it's the smallest window that's still long enough to be useful, and the largest one we felt comfortable defaulting to without a customer explicitly asking for more. I own the analytics side of AIVA's engineering, which means I've sat through both versions of this question often enough to want the reasoning written down once, properly, instead of re-explained from scratch each time.

Why not 30 days

Thirty days sounds tidy — a month, easy to reason about — but it's too short for the questions business owners actually ask their analytics for. "Is call volume up compared to last month" needs at least two full months of history sitting side by side, and a 30-day window can never show you that comparison, because by the time month two is complete, month one has already aged out. "Are Saturdays always our busiest day, or was that a one-off" needs several weeks of pattern before you can trust it, and a single month often isn't enough to tell a real pattern apart from a coincidence. A lot of small businesses also run in cycles longer than a calendar month — a clinic's flu season, a salon's wedding season lead-up — and thirty days will, for a meaningful chunk of the year, cut that story off before it resolves into something you could act on.

We tried 30 days internally for a few weeks during design, looking at our own dashboards under that constraint before we ever shipped it to a customer. It felt like reading a book with the last chapter missing every time — you could see enough to know something was happening, never enough to say what it meant with any confidence.

Why not forever

The case for "just keep everything" sounds like the customer-friendly answer, and it's the one we get asked for most, usually from someone assuming a longer window is strictly better with no downside attached. It's also the wrong default, for reasons that have nothing to do with storage cost, even though that's real too and not the point.

Data you're not looking at isn't safely sitting in a vault — it's sitting in a system that's now a bigger target, for a benefit almost nobody uses. When we looked at how far back customers actually scrolled in the analytics dashboard, usage dropped off sharply past the two-month mark and was close to zero past three. Keeping data nobody's looking at, indefinitely, by default, is a liability with no corresponding upside for the average customer — every extra month of retention is an extra month of exposure surface for information that's basically never getting opened again. It's also the same principle now written into Indian law directly: the Digital Personal Data Protection Act, administered by the Ministry of Electronics and IT, builds storage limitation into its core obligations rather than treating indefinite retention as a neutral default. We'd have landed on a 90-day window on the storage-limitation logic alone, even without a law pointing the same direction.

"Fully exportable" is doing a lot of work in that sentence. Ninety days is our default retention, not a ceiling on what you can keep. Export your analytics whenever you want and hold onto it for as long as your own business needs — we just don't think we should be the one storing it forever by default.

The window is also enforced automatically rather than as a manual housekeeping task someone has to remember to run. There's no cleanup script a person kicks off, no ticket that says "purge data older than Q1" sitting in someone's queue behind higher-priority work. It's a rolling 90 days maintained by the system itself, continuously, which matters more than it sounds like it should — a retention policy that depends on a human remembering to enforce it is really just a retention policy that eventually fails quietly, on a day nobody's watching closely enough to notice. Making it automatic was as much about not trusting our own future selves to keep up with a manual process as it was about the number 90 specifically. We'd rather the system be correct by default than correct because someone remembered.

That same instinct — default to the option that doesn't rely on someone remembering to act — runs through how we think about security more broadly, not just this one setting.

What we considered instead of a single flat number

Before settling on one default for every customer, we seriously considered tiered retention — a longer window for customers on higher-usage plans, the way some analytics products handle it, on the theory that a business paying for more volume probably also wants more history. We scoped it far enough to see what it would actually require: a retention field per account, migration logic for anyone who changed plans mid-quarter, and a genuinely confusing answer to "how long is my data kept" that depended on which plan you happened to be on that month.

We dropped it, at least for now, because it solved a problem export already solves more simply. A customer who wants more than 90 days of history can already get it by exporting on a schedule, without us maintaining a second retention tier and a matrix of edge cases for people who change plans. Tiered retention isn't ruled out permanently, but "everyone gets the same clear default, and export covers anyone who wants more" was the simpler answer, and simpler was worth more to us than the marginal convenience of not having to click export once a quarter.

Why ninety, specifically

Ninety days is a full quarter — the unit most small businesses already think in, even if they don't call it that. It's long enough to compare "this month vs. last month" with a full month of buffer on either side, long enough to see a slow trend rather than a blip, and short enough that we're not defaulting to storing a year of conversation-adjacent data for a business that logs in twice a month. It also lines up naturally with how intent categorization and resolution-rate trends are actually read — a quarter is close to the shortest window where a category that's quietly underperforming has enough data points to be visible rather than noise.

It also matches how we think about our own responsibility here. AIVA sees a lot of conversations — booking requests, questions, sometimes frustrated ones, the kind covered in more depth in how we handle data privacy generally. The right default isn't "keep it all in case it's useful someday." It's "keep enough to be genuinely useful, make it trivial to export if you want more, and don't hold onto the rest out of inertia."

What we'd change it to, if anything

We revisit this number periodically, and we've talked about a longer default for customers who explicitly want year-over-year comparisons — the salon that wants to compare this wedding season to last year's. For now, export makes that possible without changing the default for everyone else, which is also exactly the same conclusion we reached when we looked at tiering by plan: the flexible answer beats a more complicated default every time we've actually sat down and compared them. Ninety days for the dashboard. However long you want for what you download — we've written separately about what export actually gives you and why we think of the data as yours, not ours, if the ownership question matters more to you than the specific number does.

If you want to see what that dashboard actually shows before deciding whether 90 days is enough for how you'd use it, the analytics platform page walks through it, or get started and look at your own data directly.

Share
NI
Written by
Nisha Iyer
Engineering

FAQ

Common questions.

Thirty days is too short to see real patterns — month-over-month comparisons and seasonal trends need more runway than that. Keeping everything forever by default is a liability with no matching benefit for most customers, since dashboard usage drops off sharply after about two months. Ninety days is the window that stays useful without defaulting to indefinite storage.

Yes. Ninety days is our default retention, not a ceiling. Export your analytics whenever you want and keep it for as long as your business needs — we just don't store it indefinitely by default.

It rolls off a continuously moving 90-day window rather than disappearing all at once — there's no single deletion event to miss, but there's also no separate backup sitting behind the window. If you want a permanent copy, export before it ages out.

It's consistent with data minimization principles that show up across privacy frameworks — keeping only what's genuinely useful, for only as long as it's useful, rather than everything indefinitely by default. It's one part of AIVA's broader approach to data handling, alongside what's documented on the security page.

We've considered tiered retention by plan and decided against it for now — it adds real configuration complexity for a benefit export already covers. It's not permanently off the table, but export is the answer today for anyone who wants more than 90 days.

The analytics dashboard's rolling history — the trends, comparisons, and breakdowns built from conversation data. Export captures the underlying record before it ages out if you need it kept longer.

Automatically. It's a rolling window maintained by the system itself, not a manual cleanup step someone has to remember to run, which is part of why we were comfortable defaulting to it for every customer without asking anyone to configure it first.

Like this? Get more.

One email a month. Engineering deep-dives, product launches, customer stories. No fluff.

4,200+ subscribers. Unsubscribe anytime.