How to calculate the contact recurrence rate: formula, table and what to do with the result
What exactly the recurrence rate measures
The contact recurrence rate is the percentage of conversations in a cohort that are reopened for the same reason within a defined time window. It does not measure message volume, it does not measure unique contacts, and it does not measure satisfaction. It measures one single thing: how many people who had already written about an issue had to write again about that same issue.
It is different from the recontact rate, which counts anyone who writes again regardless of the reason. It is also different from the first-contact resolution rate, which is measured over the total cohort and not over those who came back. If you mix the three into a single number, the result is useless for making any decision.
The practical value is this: if 40% of the people who asked about an appointment ask about an appointment again in the following seven days, the problem is not in the answer the team gave, it is in the process behind that answer. Recurrence is the only customer service metric that points to the process and not to the person who handled it.
Everything that follows is formulas and setup criteria. You plug in the numbers yourself with the data from your own inbox. You do not need any special tool to calculate it: a conversation export and a spreadsheet are enough.
The formula, step by step
The base formula is a simple division. The real work is in properly defining the numerator and the denominator, because whether the number means anything depends on that.
Recurrence rate = (contacts in the cohort who come back for the same reason within the window) ÷ (contacts in the cohort) × 100.
- Cohort: all conversations that were opened for the first time for a given reason within the period you are measuring. If the reason is 'appointment inquiry', the cohort is all new appointment inquiries in that period.
- Window: the time frame within which you count the return. It must be defined before counting, not after. If you choose it while looking at the result, the number stops being comparable.
- Same reason: the return must be for the same category of inquiry, not for anything else. Someone who asked about an appointment and later writes to say thank you is not a repeat contact.
- Excluded: contacts who return for a different topic are counted in another cohort. They are neither added to nor subtracted from this one.
An example with round numbers to see it working: in a period, 200 new appointment inquiries come in. Of those 200, 54 write again about an appointment within the following seven days. The rate is 54 ÷ 200 × 100 = 27%. That 27% is the number you will compare against the previous period or against another location, never against a universal value, because none exists.
How to build the cohort without the number coming out wrong
The most common mistake is counting over the total conversations in the period instead of over the new conversations. If in the period there are 500 conversations and 200 are new, the denominator is 200, not 500. Counting over the total inflates the denominator and makes the rate look lower than it is.
- 1Define the reason with a label you actually use in the inbox. If you don't have labels, the first job is to label, not to measure.
- 2Filter the conversations opened in the period and keep only those that are a first contact for that reason. Those that were already open before do not count.
- 3Mark which of those conversations had a second opening for the same reason within the window. Count conversations, not messages: if the person wrote three times about the same topic, it is a single repeat contact.
- 4Divide and multiply by 100. Round to one decimal place at most; more precision than that is noise.
- 5Save the result with the period date and the window used. Without those two data points the number is not comparable with anything.
If your inbox has automatic replies by schedule, be careful with a bias: inquiries that come in outside business hours and receive an automatic response can generate a second inquiry the next day simply because the person did not read the automatic one. That is a real repeat contact, but the cause is different. Separate those conversations into a separate cohort before drawing conclusions about the process.
Which window to use depending on the type of inquiry
The window is not a methodological detail: it changes the result. An appointment inquiry that is resolved the same day has a very different expected repeat rate than a quote inquiry that can take two weeks to close. The following table organizes the windows by type of inquiry and by what each one allows you to see.
The windows are assembly criteria, not official values from any platform. Choose one per type of inquiry and keep it fixed so you can compare periods.
| Type of inquiry | Suggested window | What that window measures | What to look at if the number is high |
|---|---|---|---|
| Appointments and bookings | 24 to 48 hours | If the confirmation arrived and was understood | The confirmation message is not clear or did not arrive |
| Prices and availability | 48 hours to 7 days | If the answer resolved the question or generated another one | Information is missing in the first reply |
| Status of an order or procedure | 3 to 7 days | If the follow-up was communicated on time | There is no proactive notice of status changes |
| Quotes and estimates | 7 to 30 days | If the closing got stuck at a step in the process | The follow-up is being done late |
| After-sales and complaints | 7 to 14 days | If the solution actually resolved it | The solution was partial or was not verified |
The same business can have very different rates by type of inquiry and that is normal. What is not normal is comparing the rate for appointments with the rate for quotes and concluding that one is wrong. They are different processes with different cycles.
Reference table: how to read the result
There is no universal acceptable recurrence rate value, because it depends on the industry, the type of inquiry and the window. What you can do is sort the results by what they indicate and by the action that corresponds. The following table is a reading guide, not an industry standard.
Reading guide prepared from the assembly criteria of this article. It is not a market benchmark or a value published by any platform.
| Observed result | Likely reading | First action to try |
|---|---|---|
| Rises compared to the previous period | A new step appeared in the process or something changed in the reply | Review what changed in the flow between the two periods |
| Falls compared to the previous period | The reply or follow-up improved | Confirm that the window and the cohort definition did not change |
| High and stable over time | There is a structural problem, not an isolated case | Document the full process and find the missing step |
| Low but with complaints in the channel | The conversation is being closed without resolving | Review whether it is being marked as resolved too early |
| Very different between two locations | The process is not standardized | Compare the steps each location takes and unify them |
The most important reading is the comparison against your own previous period. A 20% that dropped from 35% is a real improvement. A 20% that rose from 8% is a warning sign. The number alone, without historical series, says nothing.
Separate repeat contacts by cause before drawing conclusions
An overall repeat contact rate mixes causes that have nothing to do with each other. Before deciding what to change, it is worth breaking the number down into at least four possible causes. The following table organizes them.
Analysis categories for classifying repeat contacts once the rate has been calculated. They are applied to the sample of conversations that came back.
| Cause | How it is detected | What distinguishes it |
|---|---|---|
| The response did not resolve it | The second inquiry asks the same thing in different words | The team answered, but a piece of information was missing |
| The response never arrived | The second inquiry starts with 'hi, I'm still waiting' | There was a response but it was not seen or it got lost |
| The process has a step that was not communicated | The second inquiry asks about the next step | The first response was complete but did not anticipate the step |
| The case requires follow-up by design | The second inquiry is expected and planned for | It is not a problem: it is part of the process |
The fourth cause is the one that distorts the number the most. If your process has a planned follow-up at five days, that return is not a failure: it is the process working. Those conversations should be left out of the numerator or, at the very least, counted separately. If you do not separate them, you will be trying to fix something that is fine.
How to measure whether support improved from one period to another
The repeat contact rate is useful for comparing periods only if the measurement conditions are the same. If you changed the window, the definition of the reason, or the cohort criterion, the comparison is not valid. Before comparing, verify that the four elements are the same: reason, window, cohort criterion, and exclusion of planned follow-ups.
- Always measure on the same labeled reason. If the label changed its name or scope, the series breaks.
- Keep the window fixed for at least three periods before drawing a trend.
- Note the exact cut-off date and the number of conversations in the cohort. A rate over 20 conversations is indicative; over 200 it is already comparable.
- If you changed something in the process halfway through the period, split the measurement in two: before and after the change.
- Do not mix locations or channels in the same series without first breaking them out separately.
With three consecutive periods measured the same way, a trend is already visible. With just one, you only see a snapshot. Most decision errors come from reacting to a snapshot as if it were a trend.
Common mistakes when calculating this rate
These are the ones that come up again and again when someone tries to measure recurrence for the first time. Each one has a specific fix.
- Counting over the total number of conversations instead of over the new ones. Fix it by filtering for first contact before dividing.
- Counting messages instead of conversations. A person who writes three times about the same topic is one recurrence, not three.
- Choosing the window after seeing the result. Define it beforehand and write it down next to the number.
- Not excluding follow-ups that are planned by design. Separate those conversations into a different cohort.
- Comparing the rate of one type of inquiry with that of another. Each type has its own window and its own expected range.
- Measuring only once and treating it as the definitive baseline. The baseline is built with at least three periods.
- Mixing channels without separating them. An inquiry that comes in through one channel and returns through another may not be the same person; verify it before counting it.
If the number looks odd to you, the problem is almost always in the definition of the cohort, not in the data. Before doubting the spreadsheet, check what ended up in the denominator.
What to do with the result
The calculation is useless if it doesn't end in a concrete change. The order that works is this: first you identify the type of inquiry with the highest rate, then you open those conversations and classify the cause, and only then do you change one step in the process. Changing two things at once makes it impossible to know which one worked.
- 1Choose the type of inquiry with the highest rate and the largest cohort. That's where the greatest volume of repeated work is.
- 2Read between 20 and 30 conversations from that cohort that came back and classify them by cause according to the table above.
- 3Identify the most frequent cause. If it's 'the answer didn't resolve it', the change goes in the template or the script. If it's 'the process has an uncommunicated step', the change goes in the step, not in the message.
- 4Apply a single change and wait a full period with the same window before measuring again.
- 5Compare the new rate against the previous one. If it went down, the change worked. If it didn't go down, the cause you identified wasn't the main one.
In inboxes where AI suggests replies and the team approves them, as in Wando's case, this cycle is shortened because approved replies are recorded and can be reviewed in bulk. But the formula and the cohort criterion are the same, with or without AI: the number does not change just because a machine suggested it.
One last criterion of honesty: if after three periods the rate does not go down, the problem may not be in support. Some inquiries repeat because the product, the price or availability raise legitimate doubts that no message resolves. In that case the metric is doing its job: it is telling you that the problem is not support.
Frequently asked questions
What is the difference between the recurrence rate and the recontact rate?+
The recurrence rate counts only the returns for the same reason within a defined window. The recontact rate counts any return, regardless of the reason. The first is used to evaluate a specific process; the second, to measure overall return volume.
What is an acceptable recurrence rate?+
There is no universal value. It depends on the industry, the type of inquiry and the chosen window. What works is comparing against your own previous period while keeping the same cohort definition and the same window.
How many conversations do I need for the number to be reliable?+
With fewer than 30 conversations in the cohort the number is indicative. From 100 or 200 onward it can already be compared between periods with some confidence.
Is recurrence counted per message or per conversation?+
Per conversation. If the same person writes three times about the same reason within the window, it is a single recurrence. Counting messages inflates the numerator and distorts the result.
What do I do if the rate goes up after a change in the process?+
First check that the window and the cohort definition have not changed. If they are the same, check whether the change added a step that is not communicated to the customer. A new step without notice usually generates more recurrence, not less.
Is it worth measuring recurrence if I have few conversations per month?+
It is worth it, but with a different expectation: in small cohorts the rate moves a lot from one period to another. It is better to measure by quarter instead of by month and compare against the same quarter of the previous year.
Answer WhatsApp with AI
Try Wando free. No credit card required.