Formula to Estimate How Many Conversations Are Lost for Every Hour of Missing Coverage
What exactly this formula measures (and what it doesn't)
The formula estimates how many conversations go unanswered for each hour of the day when no one is responding on your WhatsApp Business. It doesn't measure lost sales in pesos, it doesn't measure angry customers, and it doesn't measure reputational damage: it measures the volume of conversations without a human response within a time slot. It's the first number you need before deciding whether to hire someone, run a shift, or change your business hours. If what you're looking for is the monetary cost of that hour, that's a different calculation and it needs your own average ticket and close rate values.
It's worth separating two things that often get mixed up: conversations that come in outside business hours and conversations that come in during business hours but go unanswered because the team is overloaded. This formula works on the first one. The second is a capacity problem, not a coverage problem, and it's measured differently.
The four data points you need before calculating
You don't need a complicated system, but you do need four minimum data points. If you're missing any of them, the estimate becomes guesswork and the resulting number is useless for making decisions.
- Total incoming conversations in a representative period (a normal week, not Black Friday week or vacation week).
- Distribution of those conversations by time slot. Without this, you can't know how much weight each uncovered hour carries.
- Time slots where someone is currently responding. This is the baseline you compare against.
- Proportion of conversations that come in outside business hours and currently get no response. If your team answers at 23:00 from their phone anyway, that hour isn't really uncovered.
A data point that's often wrong: the message time. If you pull the data from your own database, use the message time as recorded by the channel (the event timestamp), not the time the record was saved. When there are imports or migrations, those two values can differ enormously and the hourly distribution ends up distorted.
The formula, step by step
The base formula is a rule of three with an adjustment factor. First you calculate the average hourly rate of your operation, then you apply it to the uncovered hours, and finally you correct for how people actually behave outside business hours.
- 1Step 1. Average hourly rate: total conversations in the period divided by the number of hours in the period. Example: 840 conversations in 7 days of 24 hours is 840 / 168 = 5 conversations per hour on average.
- 2Step 2. Hourly rate for the time slot you care about: not all hours are worth the same. Calculate the specific rate for the uncovered time slot using the hourly distribution. If between 21:00 and 23:00 there are 126 conversations in the week, the rate for that slot is 126 / 14 = 9 conversations per hour.
- 3Step 3. Uncovered conversations: multiply the rate for the time slot by the number of hours without coverage. Following the example: 9 x 2 = 18 conversations per business day in that slot.
- 4Step 4. Non-response factor: not all conversations that come in outside business hours go unanswered. Some are answered by someone from their phone, others are resolved on their own with a template or an automated message. Apply that percentage. If you estimate that 70% really goes unanswered, 18 x 0.70 = 12.6 uncovered conversations per day.
- 5Step 5. Weekly or monthly projection: multiply by the number of days in the period you want to analyze. 12.6 x 5 business days = 63 conversations per week.
| Step | What you calculate | How it is calculated | Example with the data from the text |
|---|---|---|---|
| 1 | Average hourly rate | Conversations in the period / hours in the period | 840 / 168 = 5 per hour |
| 2 | Rate for the uncovered time slot | Conversations in the time slot / hours in the time slot | 126 / 14 = 9 per hour |
| 3 | Gross uncovered conversations | Rate for the time slot x hours without coverage | 9 x 2 = 18 per day |
| 4 | Net uncovered conversations | Gross x non-response factor | 18 x 0.70 = 12.6 per day |
| 5 | Projection for the period | Net x days in the period | 12.6 x 5 = 63 per week |
The numbers in the example are illustrative: replace them with those of your own operation. The formula does not depend on market values or rates.
Sensitivity table: what happens if you move each variable
The formula has three variables that move: the hourly rate for the time slot, the number of uncovered hours, and the non-response factor. The following table shows how the weekly result changes when you move each one separately, keeping the other two fixed. It helps you quickly see which variable weighs the most in your case before deciding where to put your effort.
| Scenario | Hourly rate for the time slot | Uncovered hours per day | Non-response factor | Uncovered conversations per week (5 days) |
|---|---|---|---|---|
| Base | 9 | 2 | 0.70 | 63 |
| More uncovered hours | 9 | 4 | 0.70 | 126 |
| Fewer uncovered hours | 9 | 1 | 0.70 | 32 |
| Busier time slot | 14 | 2 | 0.70 | 98 |
| Lighter time slot | 4 | 2 | 0.70 | 28 |
| Better response outside business hours | 9 | 2 | 0.40 | 36 |
| Almost no response outside business hours | 9 | 2 | 0.90 | 81 |
Own calculation: rate x hours x factor x 5 days. The variable values are examples; use your own.
What the table shows is that doubling the uncovered hours does more than double the result, and that lowering the no-response factor with an automatic reply has a more moderate but immediate effect. The combination matters more than any single variable: a busy time slot with two uncovered hours weighs more than a light time slot with four.
How to build your own sensitivity table in four steps
- 1Choose the time slot you want to analyze. Don't build a table for the whole day: choose a specific time slot (for example, from 21:00 to 23:00, or Sundays).
- 2Set the hourly rate for that time slot using real data from at least two weeks. If you only have one week, the number will move around a lot.
- 3Try three values for uncovered hours (one, two, and four) and three values for the no-response factor (0.40, 0.70, and 0.90). That's nine combinations, and they're enough to see the range.
- 4Write down the weekly and monthly result. Only then do you compare it against what it would cost to cover that time slot.
If your operation's data isn't enough to fill even the first row of the table, don't force the estimate. It's better to measure one more week than to publish a number you won't be able to defend when someone asks you where it came from.
Data checklist before calculating
- The period chosen is a normal week, with no campaigns or special dates.
- The hourly distribution is taken from the message timestamp, not from the date the record was uploaded.
- You know for certain in which time slots someone is replying today.
- You know what percentage of after-hours conversations receives some type of reply (human or automatic).
- You excluded from the count the messages that aren't inquiries (notifications, replies within the same thread, internal messages).
- You have the data separated by channel if you handle more than one.
- You wrote down the date you collected the data, because the distribution changes by season.
The four mistakes that ruin the estimate
Most bad estimates don't fail in the formula, they fail in the input data. These are the four problems that come up again and again.
- Counting messages instead of conversations. A customer who writes five times is one conversation, not five. If you count messages, the number gets inflated and the decision you make afterward is misjudged.
- Using the record's upload date instead of the message time. When there have been migrations or imports, almost everything gets recorded at the same moment and the hourly distribution becomes useless.
- Assuming that every uncovered hour loses 100% of conversations. There are almost always late replies from a phone or automated messages that cover part of it. The non-response factor is the one most often forgotten.
- Mixing up peak hour with uncovered hour. If your peak hour is already covered, adding people there doesn't change the number of lost conversations: it changes response time, which is a different metric.
What to do with the number the formula gives you
The result is an input for deciding, not a decision. A low number of uncovered conversations per week can justify an automated after-hours reply instead of a full shift. A high number in a narrow time slot can justify moving a person's schedule instead of hiring. And a high number spread across many time slots usually indicates that the problem is not coverage but capacity within the schedule you already have.
It's worth repeating the measurement after every change and comparing against the baseline. If you moved the schedule and the number of uncovered conversations didn't go down, the change didn't address the cause. If it went down but response time went up in another time slot, you moved the problem instead of solving it.
How this formula relates to the other capacity calculations
This estimate answers how many conversations are lost due to lack of coverage. It's different from the team's capacity calculations, which answer how many conversations one operator can handle per shift, and from backlog calculations, which answer how long it takes to drain an accumulated queue. All three are used together: first you measure how many conversations are lost per uncovered hour, then how many each person you add can absorb, and finally how long the system takes to stabilize after the change. If you start with the third without the first, you're optimizing a number you don't know if it matters.
Frequently asked questions
What do I need at minimum to calculate lost conversations per hour without coverage?+
Four data points: total conversations in a representative period, distribution of those conversations by time slot, time slots where someone is currently responding, and the proportion of after-hours conversations that actually go unanswered. Without the fourth data point, the estimate overstates the loss.
Does it count messages or conversations?+
Conversations. A customer who writes five times in the same inquiry is one conversation, not five. If you count messages, the number is inflated and the decision you make afterward is poorly sized.
What is the non-response factor and why does it matter?+
It is the percentage of conversations that arrive after hours and actually go unattended. It is almost never 100%: there are late replies from a phone and automatic messages that cover part of it. In the sensitivity table you can see that moving this factor changes the weekly result significantly.
Can I use the upload date of messages in my database to see the hourly distribution?+
It is not advisable. The useful time is the message time as recorded by the channel. When there have been imports or migrations, the upload date can concentrate almost everything at the same moment and the hourly distribution becomes distorted.
Does the formula tell me how much money I am losing?+
No. It returns the number of uncovered conversations. To translate it into money you need your own average ticket and close rate values, which are data from your business and are not included in this method.
How often should I recalculate?+
After every schedule change, every major campaign, and at least once per season. The hourly distribution of inquiries changes with the calendar, and a table built in January may not work in July.
What do I do if the number comes out low?+
A low number may justify an after-hours automatic reply instead of a full shift. The formula does not decide for you: it gives you the input to compare the lost volume against the cost of covering it.
Answer WhatsApp with AI
Try Wando free. No credit card required.