All posts
· Truxl Team

D1, D7, D30 Retention: Which One Your Team Should Actually Be Staring At

Retention metrics are not interchangeable. A guide to picking the right one for your product, and the common mistake of optimising the wrong one.

Every analytics dashboard ships with D1, D7, and D30 retention out of the box, and most teams put all three on the wall. This is a mistake. The three numbers measure different things, and treating them as a panel of equal importance dilutes the signal of whichever one actually matters for your product.

This post is about picking one as your primary retention metric, and what changes when you do.

What each number actually measures

D1 retention. Of users who did the qualifying action on day 0, what percent did it again on day 1. This measures whether the user’s first experience was memorable enough to bring them back the next day. For consumer mobile apps, D1 is the canonical metric — game studios live or die on it. For most B2B products, D1 is noise.

D7 retention. Same calculation, but measuring return on day 7. This is the “is this a habit” metric. It works well for products with weekly usage cycles — most SaaS tools, social products, content apps. D7 is the metric most teams should care about most.

D30 retention. Return on day 30. This is the “is this still alive” metric. It’s a slow signal, useful for long-tail products with monthly billing cycles (most B2B SaaS) but too laggy to drive day-to-day decisions.

How to pick which one is yours

Three questions:

What’s the natural usage cycle of your product?

  • Daily (social, news, fitness, games): D1 is your primary metric.
  • Weekly (most B2B SaaS, project tools, dev tools, communication): D7 is your primary metric.
  • Monthly (HR tools, billing software, tax tools): D30 is your primary metric — and you should also be measuring at 60 and 90 days.

A common mistake is picking the metric that looks best rather than the one that matches the cycle. If your D1 is 60% and your D7 is 20%, putting D1 on the wall feels good but tells you nothing useful. Your users come back the next day out of momentum and don’t come back the next week because the product hasn’t hooked them.

How long is your feedback loop on changes?

  • Shipping daily, making small UX changes: D1 is your feedback loop.
  • Shipping weekly, iterating on features: D7 is your feedback loop.
  • Shipping monthly or running long experiments: D30 is your feedback loop.

The retention metric you optimise should be one you can move in a timeframe shorter than the change cycle. If you ship weekly and your primary metric is D30, you’ve shipped four releases before you know if the first one helped.

What’s your activation event?

The qualifying action for retention measurement matters enormously. “Logged in” is too weak — bots and curious one-time visitors are counted. “Completed the core action” is too strict in early funnel stages. The right activation event is usually the smallest action that correlates with long-term retention, which is itself a measurement question.

Most teams pick “logged in” by default and then are confused why their retention numbers look bad. Define a real activation event, and retention numbers usually look better and mean more.

Bracketed vs N-day retention

There’s a second methodological choice that gets less attention: bracketed retention vs N-day retention.

N-day retention asks: did the user return on exactly day N? A user who returns on days 6 and 8 but not 7 counts as “lost” for D7.

Bracketed retention (also called “window” or “unbounded” retention) asks: did the user return within the bracket of days around N? A user who returns any day in week 1 counts as retained for “week 1.”

For products with daily usage patterns, N-day is more useful — you actually want to know which days users come back. For everything else, bracketed retention is less noisy and more honest about the underlying behaviour. A user who comes back on day 6 instead of day 7 is not lost.

Truxl defaults to bracketed retention for cohorted views because, for the vast majority of products, it’s the right default. N-day is available when you need it.

The cohort dimension most teams skip

Retention is almost always reported as a single number — “D7 is 32%.” This is an average across all cohorts, which means it’s an average across users who signed up under different conditions, in different acquisition channels, after different onboarding flows.

The number that matters is the cohorted version: D7 retention for the cohort that signed up in week N. Plot those numbers over time and you see whether your product is getting better at retaining users, or whether the headline number is being held up by a few good cohorts from a year ago.

The cohorted view is also the one that lets you tie retention changes to product changes. “We shipped onboarding v2 in week 12. The week 13 cohort’s D7 retention was 8 points higher than week 11’s. Did it cause the change, or did something else?” — that’s a real experimental question, and it requires the cohorted version of the metric.

What this isn’t

A single retention metric is not enough to run a product. It’s the headline number; the underlying questions — which users retain, which features predict retention, which acquisition channels produce retainable users — all require more granular work. Cohort breakdowns, segment-level retention, feature-attached retention — these are where the actual insight lives.

But the headline number sets the team’s attention. If the wrong number is on the wall, the team optimises the wrong thing. Pick the one that matches your product’s actual cycle, define the activation event properly, and put that number — and only that number — at the top of the dashboard.


Truxl’s retention view supports bracketed and N-day modes, custom activation events, and cohort comparison across release boundaries. Build your real retention chart.