Repeat Rate

Repeat rate is the share of a restaurant's guests who have dined before. It is calculated more than one way and the versions are not comparable: a guest-based rate answers whether guests come back, while a visit-based rate answers how much of a night's business is returning trade.

Repeat rate is the first number most operators look at once their guest data is unified, and the first one they argue about. Point-of-sale loyalty modules report a version, e-commerce platforms report a version, and a restaurant CRM computes it over reservations and checks joined to guest profiles. A repeat rate only means something alongside a statement of which version was run.

How is repeat rate calculated?

Three formulas share the name, and they answer three different questions.

  • Share of guests who had visited before. Of the distinct guests served in a period, what proportion had at least one earlier visit. The general health reading.
  • Cohort return rate. Of the guests who first visited in a given month, what proportion returned inside a fixed window. This is the version that measures retention properly, because every guest in the cohort gets the same amount of time.
  • Share of visits that were repeat visits. Of all visits in a period, what proportion came from guests with prior history. This describes revenue mix rather than the guest base, and it runs higher than the other two because frequent guests contribute many visits each.

Use the cohort version for decisions, and report it carefully. A recent cohort always looks worse than an older one until its window closes, so comparing an unfinished cohort against a finished one is the most common way a retention report gets misread.

Why is my repeat rate lower than it should be?

Because the calculation runs over identified guests only, and every identity failure pushes the number the same way. An unmatched visit does not appear as an error. It appears as a new guest, so a genuine repeat visit that never joined to a profile gets counted as a first-timer. Duplicate profiles do the same thing: a guest whose four visits are split across three records contributes several first visits and almost no repeats.

Any repeat rate is therefore a floor until the venue’s match rate is known. It also explains why rooms with heavy walk-in and bar volume post lower repeat rates than reservation-driven dining rooms with identical guest loyalty.

Does repeat rate mean the same thing across a group?

No, and a group needs both readings. A guest who dined at one venue in March and a sister venue in June is a repeat guest to the group and a first-time guest to each restaurant. The venue-level rate tells a general manager whether their room holds its own guests, and the group-level rate tells the operator whether the portfolio holds relationships.

The trap is rolling venue numbers up into a group number. Adding repeat rates across venues double counts every guest who crosses between them, and those crossover guests are usually the group’s best. A group rate has to be computed from group-level identity, meaning the same guest resolved to one profile across every book and every point of sale in the portfolio.

Last updated