RESEARCH

DTC retention benchmarks: methodology

This page documents the method before the data. Publishing the method first is the point: a benchmark is only useful if you can see how it was built, and only citable if the sample is disclosed.

Written by Jaume RosReviewed by Jaume Ros, Loiale teamLast updated 2026-08-05

Sample definition

  • Scope: direct-to-consumer brands trading between 5 and 50 million dollars in annual GMV.
  • Inclusion requires a full order history export covering at least 24 consecutive months.
  • Brands are grouped by category and by purchase frequency profile, because a supplements brand and a furniture brand are not comparable.
  • Sample size and composition will be published alongside any figure.

Metric definitions

Definitions are fixed before collection and match the measurement standard we use in client work.

  • Repeat purchase rate at 90, 180 and 365 days from first order.
  • Cumulative revenue per acquired customer at the same intervals.
  • Median time to second order.
  • Share of revenue from customers with three or more orders.

Normalisation and exclusions

  • Wholesale, marketplace and B2B orders excluded.
  • Refunded and cancelled orders excluded from revenue, retained for behavioural counts.
  • Subscription-first brands reported separately from one-off purchase brands.
  • Outliers disclosed rather than silently trimmed.

Disclosure rules

  • No figure is published without sample size, period and category composition.
  • No participating brand is named without written permission.
  • Raw ranges are published alongside medians.
  • Where the sample is too small to be meaningful, we say so and publish nothing.

Results

No benchmark figures are published yet.

SOURCE REQUIRED · Results require a collected dataset that satisfies the sample definition above. Nothing is published until then.

KEEP READING

Work with the team behind this method

We build and run lifecycle, loyalty and customer-data systems inside your existing stack. Tool-agnostic. Outcome-owned.

Request a call