Studies & referenceStudies & reference

Formula to Measure the After-Hours Unanswered Conversation Rate (with Weekly Tracking Table)

8 min read

Most businesses know they miss messages at night or on Sundays, but they don't know how many. Without that number, any decision about schedules, on-call shifts or auto-replies is made by guesswork. This page solves one single thing: how to calculate the rate of unanswered conversations outside business hours and how to track it week by week with a table that takes five minutes to fill in.

This is not an article about 'improving customer service.' It is a formula, a set of prior definitions and a spreadsheet. If you apply the calculation with your own data, you will have a number you can actually discuss with your team.

What exactly this rate measures (and what it doesn't)

The rate of unanswered conversations outside business hours is the proportion of conversations that came in while the business was closed and never received a human or automated response within a window you define. It does not measure satisfaction, it does not measure lost sales in currency and it does not measure the quality of the response. It measures one single thing: how many conversations were left hanging.

It is worth separating it from two other metrics that are often mixed together and ruin the analysis: first response time (which is measured in minutes and applies to all conversations, not just those outside business hours) and the rate of unassigned conversations (which measures internal distribution, not the schedule). If you mix all three into a single dashboard, you won't be able to act on any of them.

  • What it measures: conversations outside business hours that received no response at all.
  • What it does NOT measure: how long the response that did arrive took.
  • What it does NOT measure: whether the customer bought afterward or not.
  • What it does NOT measure: whether the response was good, correct or useful.

Prior definitions: without these, the number is useless

Before calculating anything, three definitions must be set in writing. If they change halfway through, the historical series stops being comparable and the tracking table loses all value.

  1. 1Define the business hours by days and time slots. Example: Monday to Friday from 9:00 to 18:00, Saturdays from 9:00 to 13:00, Sunday closed. It has to be written down somewhere, not just in someone's head.
  2. 2Define what counts as 'out of hours'. It is every incoming message whose timestamp falls outside those time slots, in the business's time zone.
  3. 3Define the grace window: how much time after opening the team is given to respond to what came in while closed. Example: 60 minutes from opening, or until noon of the next business day. Without this window, any message from Sunday night counts as 'unanswered' on Monday at 9:01, which is false.

The grace window is the most important decision in the whole calculation. If you set it to zero, the rate spikes and stops being credible for the team. If you set it to 24 hours, the rate sinks and stops being useful. A window of between 30 and 120 minutes from opening is a reasonable starting point for most businesses.

The formula

The formula is a division. The only real work is in counting the numerator and the denominator correctly.

Out-of-hours unanswered conversation rate = (conversations that came in out of hours and did not receive a response within the grace window) ÷ (total conversations that came in out of hours) × 100.

The unit of analysis is the conversation, not the message. Counting messages inflates the denominator with customers who write three times in a row and distorts the result.

ComponentOperational definitionWhere it is counted
NumeratorIncoming out-of-hours conversations without a response within the grace windowInbox, filtering by timestamp of the first incoming message
DenominatorAll incoming conversations whose first message fell out of hoursInbox, same filter, without excluding those that were answered
Multiplier100, to express it as a percentage—
Unit of analysisConversation, not message. A conversation with ten messages from the customer counts only once.Grouping by contact + time window

Example with round numbers to check that you understood the calculation: if in one week 200 out-of-hours conversations came in and 34 remained unanswered within the grace window, the rate is 34 ÷ 200 × 100 = 17%. That 17% is the number that goes in the table.

How to count with the timestamp column (and why not to use created_at)

If you export data from a messaging platform, you will almost always find two date columns: one that records when the row was inserted into the database (created_at) and another that records when the event occurred according to the channel (timestamp). For this calculation you must use timestamp and nothing else.

The reason is concrete: when history is imported from a migration, all the rows are inserted within a few days, so created_at shows that 'everything happened on a Tuesday at 15:00' and any analysis of hours gives nonsense. With timestamp, on the other hand, the distribution reflects the real behavior of customers: peaks during business hours and a percentage of out-of-hours messages that usually falls in the range of 15% to 20% in customer service businesses. If you get 56% of messages in a single hour of the day, you are looking at the wrong column.

  • Use timestamp for everything related to 'when it happened'.
  • Use created_at only to audit internal data loading processes.
  • Before publishing any distribution of hours, look at the histogram by hour: if it has a single absurd peak, the wrong column was chosen.
  • Save the time zone you used for the calculation. If the team looks at the data from another time zone, the numbers will not match.

Weekly tracking table

This is the table to fill in every week. It is copied into a spreadsheet and filled in with five numbers per week. The rate column is calculated, not estimated.

Empty cells are filled in with the data from your own inbox. The rate column is a formula, not a number written by hand: that way a typing error does not slip in.

WeekOut-of-hours conversations (denominator)No response within grace window (numerator)Rate (%)Note of the week
Week 1= C2/B2*100E.g.: holiday on Wednesday
Week 2= C3/B3*100
Week 3= C4/B4*100
Week 4= C5/B5*100
Monthly average= AVERAGE(B2:B5)= AVERAGE(C2:C5)= AVERAGE(D2:D5)—

The 'Note of the week' column looks decorative, and it isn't. Holidays, vacations of whoever covers the on-call shift, system outages, or mass campaigns that generate spikes explain jumps that would otherwise look like an attention problem and are something else. Without that note, three months later you won't be able to interpret the series.

How to read the result: four scenarios

The number alone says nothing. What says something is the number combined with the absolute volume and with the trend. These are the four typical scenarios and what to do in each one.

The 5% and 15% cutoffs are operational reference points, not industry standards. Adjust them to your business after four weeks of your own series.

ScenarioRateVolume outside hoursWhat to do
ControlledLess than 5%AnyKeep the current setup. Review only if the trend rises two weeks in a row.
Acceptable with marginBetween 5% and 15%LowReview the grace window and whether the auto-replies are covering well. Don't change schedules yet.
ProblematicBetween 5% and 15%HighThere is enough volume to justify a partial on-call shift or an auto-reply by schedule. Prioritize.
CriticalMore than 15%HighThe support setup doesn't cover the real demand. Define an on-call shift, extend hours, or auto-reply, in that order of evaluation.

The most common mistake is looking only at the rate and not at the volume. 3% of 20 weekly conversations is 0.6 conversations: it doesn't justify setting up an on-call shift. 3% of 800 weekly conversations is 24 conversations: it does justify reviewing something. The rate orders, the volume decides.

What to do with the number (without overreacting)

Once you have the rate, there are three levers and it's best to evaluate them in order of increasing effort.

  1. 1Auto-reply by schedule: an automatic message that confirms receipt and states when a reply will be given. It is the cheapest lever and does not require changing the team's staffing. It does not eliminate unanswered conversations, but it changes the customer experience and usually reduces complaints about silence.
  2. 2Partial on-call coverage: a person available during the time slot where off-hours volume is concentrated. To define which slot, look at the hourly histogram of unanswered conversations: there is almost always one or two hours that concentrate most of them.
  3. 3Extended hours: the most expensive lever. It is only justified if the rate remains high after the previous two and the volume supports it.

Any of the three can be implemented with a tool that suggests replies and allows auto-replies by schedule, such as Wando, but the rate calculation is independent of the tool: it can be done with an export to a spreadsheet and fifteen minutes per week.

The five mistakes that ruin the calculation

  • Counting messages instead of conversations. A customer who writes four times at night counts as a single conversation.
  • Using created_at instead of timestamp. The result will show that everything happens at the same time and you will not be able to draw any conclusion about schedule.
  • Not defining the grace window. Without a window, everything that comes in at 20:00 and is answered at 9:00 the next day counts as 'unanswered', which inflates the rate and demoralizes the team.
  • Changing the business hours halfway through the series without noting it. The series stops being comparable and you will not be able to see whether the measure worked.
  • Looking only at the monthly average. One week at 40% and three at 2% gives an average of 11.5% that does not describe any reality and hides a specific problem.

How to know the calculation is done right

Three quick checks before trusting the number. If all three pass, the rate is defensible before the team and before anyone who asks for it.

  • The hourly histogram of incoming conversations shows a reasonable business curve, with peaks during business hours and a percentage of off-hours messages consistent with the type of business.
  • The numerator is always less than or equal to the denominator. If it is greater, there is a problem with conversation grouping.
  • The sum of off-hours conversations plus in-hours conversations gives the total conversations for the period. If it does not add up, there are conversations without an assigned timestamp or with a different time zone.

Frequently asked questions

What counts as 'after hours' if the business is actually open 24 hours?+

If the business truly operates 24 hours, this metric does not apply and it is better to measure first response time instead. The after-hours unanswered conversation rate assumes there is a time window when the business is not attending.

How often should it be calculated?+

Weekly, on the same cutoff day. A monthly cutoff hides specific problems and a daily cutoff generates so much noise that the trend is not visible. The weekly tracking table is designed for that frequency.

What grace window should be used?+

It depends on the business, but a window of between 30 and 120 minutes from opening is a reasonable starting point. What matters is defining it in writing before starting to measure and not changing it mid-series.

Does it work if I have low volume?+

With fewer than 15 or 20 after-hours conversations per week, the rate moves a lot with a single case and is not reliable. In that scenario it is better to look at the absolute number of unanswered conversations, not the percentage.

Why can't I use created_at?+

Because created_at records when the row was inserted into the database, not when the message occurred. When there are history imports, almost all rows are inserted within a few days and the time-of-day analysis shows an absurd peak. For anything related to 'when it happened', use timestamp.

Does this rate replace first response time?+

No. They are different metrics. First response time is measured in minutes and applies to all conversations; this rate measures the proportion of conversations left hanging in the after-hours window. They complement each other, they do not replace each other.

What should I do if the rate rises two weeks in a row?+

First check the notes column: it could be a holiday, a campaign or a team absence. If there is no specific cause, evaluate after-hours auto-replies before changing staffing. It is the cheapest lever and the one that generates the least disruption.

Can I use this formula for channels other than WhatsApp?+

Yes. The formula is channel-independent: the only thing that changes is where you export the conversations from and which date column you use as timestamp. The prior definitions (business hours, after hours, grace window) stay the same.

Answer WhatsApp with AI

Try Wando free. No credit card required.