Studies & referenceStudies & reference

Reopened Conversation Audit Checklist: Why the Customer Came Back and What Went Wrong in the Previous Close

8 min read

Reopened Conversation Audit Checklist

A reopened conversation is one the team had considered finished and the customer activates again. It can be a "hi, I'm still waiting" three days later, a new question about the same thing, or an outright complaint. In all three cases the problem is the same: the previous closure didn't resolve what the customer needed to resolve, and nobody logged it as a problem because at the time it seemed closed.

This audit isn't meant to scold anyone. It's meant to reconstruct, with data, what happened between the last message of the previous closure and the first one of this reopening. You audit batches, not isolated cases: one reopened conversation can be bad luck, twenty in a row is a process problem.

Before you start: all time and schedule analysis is done with the timestamp column (the one Meta sends), never with created_at. created_at is when the row was inserted into the database, and after a history import that has nothing to do with when the message actually happened. If you measure reopenings with created_at, all closures will fall at the same time on a Tuesday.

Stage 1: build the list of reopenings before reading a single conversation

The most common mistake is opening the first conversation that looks reopened and starting to read. That way you audit five cases and generalize. First you build the complete list for the period, then you read.

  • Define the time window you're going to audit (a week, a month) and don't change it halfway through.
  • Define what counts as a closure: the team's last message before a customer silence, or the moment the conversation was marked as resolved. Pick one criterion and apply it to all cases.
  • Define what counts as a reopening: a customer message after that closure. Set a time floor (for example, more than 12 hours of silence) so you don't count someone who simply wrote twice in a row as a reopening.
  • Count how many reopenings there are out of the total closed conversations for the period. That percentage is the baseline you'll compare next month against.
  • Separate reopenings by entry channel: WhatsApp, Instagram and Messenger don't behave the same and mixing them hides the problem.

Stage 2: reconstruct the timeline of each case

For each conversation in the list, reconstruct the full sequence with real timestamps: when the customer first wrote, when the team replied, how long each response took, when it was closed, and how long passed until the reopening. Without this timeline, any explanation you give afterward is just an opinion.

What is reviewedHow it is measuredSignal that it's OK
Time from the previous closure to the reopeningSubtract the timestamp of the first new message from the timestamp of the team's last message in the previous closureThe case can be placed in a clear range (same day, 1-3 days, more than a week) without gray areas
Number of team messages before closureCount outbound messages between the first contact and the closureThe closure was not a single message: there was at least one real exchange
Who handled the previous closureCompare the agent assigned at closure with the agent who receives the reopeningIf they are different, the handoff was recorded somewhere (note, tag, or summary)
Tag or reason for the previous closureReview the tag the conversation had when it was closedThe tag describes the real reason, not a generic one like 'inquired' or 'resolved'
Last message from the teamRead the last outbound message verbatimIt's clear what was left pending on the customer's side and what was left pending on the business's side
First message of the reopeningRead the first new inbound message verbatimThe reason for the reopening can be classified without over-interpreting
Outside business hoursCompare the reopening timestamp with the configured business hoursIt's known whether the reopening fell inside or outside business hours, and whether there was an auto-reply

Stage 3: classify the reason for the reopening

Here is the real value of the audit. Not all reopenings mean the same thing, and treating them as a single category makes the actions you take afterward useless. These are the categories worth separating, and each one points to a different process problem.

Reason for the reopeningWhat happened in the previous closureWhere the problem is
The customer never received a responseThe team closed without having answered the last inbound messagePending queue: the conversation was marked as closed without a response
The response arrived late and the customer had already resolved it elsewhereThe team replied, but after a long silenceFirst response times, especially outside business hours
The customer did not understand the responseThe team replied with correct but confusing or incomplete informationWording of responses and templates, not speed
An action was left pending on the business's sideThe team promised something (a quote, an appointment, a piece of information) and did not follow upCommitment tracking: nobody checks that what was promised is fulfilled
The customer's need changedThe previous closure was fine for what was requested at the timeIt's not a team error: it's a new sale or inquiry
The customer returns due to a product or service failureThe administrative closure was fine, but the experience failedService quality, not the support channel

The last two categories are not fixed with changes to the inbox. If most of your reopenings fall there, the problem is not customer support and the conversation audit will not solve it. The first four are actionable with process changes.

Stage 4: look for the pattern, not the case

Once all the cases in the period are classified, look at the distribution. A single reopening says nothing. 40% of reopenings due to 'an action was left pending' says that the team closes conversations with open promises and nobody follows up on them. A spike in reopenings due to 'did not understand the response' says that the templates are poorly written.

  • Count how many reopenings there are per category and turn them into a percentage of the total.
  • Cross the category with the agent who made the previous closure. If one agent concentrates one type of reopening, it is a problem with that person or their shift, not with the overall process.
  • Cross the category with the closing time. Closings made near the end of the shift tend to concentrate the 'something was left pending' cases.
  • Cross the category with the channel. If Instagram concentrates the reopenings for 'never received a response', check whether that channel has the same coverage as WhatsApp.
  • Compare the percentage of reopenings in this period with the previous one. Without comparison, the number means nothing.

Stage 5: what to do when something fails

Each failure category has a different action. Applying the wrong action makes the problem worse: if the reason is that the customer did not understand, writing faster responses changes nothing.

If this failsThe action isHow to know it worked
Conversations closed without a responseReview the pending queue before ending the shift: no conversation is closed without an outgoing message that closes itThe percentage of reopenings for 'never received a response' drops in the following period
Responses that arrive lateDefine a maximum first response time per schedule and measure it with a timestamp, not from memoryThe average first response time drops and reopenings for 'resolved elsewhere' drop
The customer did not understandRewrite the templates and frequent responses with simpler language and fewer stepsReopenings for 'did not understand' drop without any change in response speed
An action was left pendingRecord the commitment with a date and owner before closing the conversation, and review it the next dayReopenings for 'left pending' drop and fewer complaints appear for unfulfilled promises
Reopenings spread evenly across all categoriesThere is no dominant problem: keep measuring before changing the processThe total percentage of reopenings stays stable or drops slowly

The time it takes to see the effect of each change depends on the business's conversation volume and on how many reopenings come in per period. With low volume, one month may not be enough to see a clear difference. If after two full periods the number has not moved, the cause is not where you looked for it and you need to go back to stage 3.

What to do when the conversation cannot be reconstructed

In some cases you will not be able to know why the customer came back: the history was lost in a migration, the previous closure has no tag, or the reopening message is so ambiguous that it cannot be classified. That is also data, and it must be recorded as such instead of forcing a category.

  • Mark those cases as 'not reconstructable' and count them separately. If they are more than 10% of the total, the problem is with record-keeping, not with service.
  • A non-reconstructable case due to a missing tag is not fixed by reading more conversations: it is fixed by tagging better from now on.
  • If the history was lost in a migration, do not try to reconstruct it with created_at: that column reflects when the row was inserted, not when the message happened.
  • Do not discard the ambiguous cases from the list: they are useful for calibrating how much room for interpretation the classification has.

How to keep the audit ready for next time

An audit that is done once and filed away changes nothing. What changes the process is repeating it with the same definition of closure, the same definition of reopening, and the same categories, so that the numbers are comparable across periods.

  • Write down what counts as a closure and what counts as a reopening, including the minimum hours threshold.
  • Keep the six reason categories without adding or removing any, even if some are empty at first.
  • Store the total reopening percentage and the distribution by category for each period in a single place.
  • Review the list of 'non-reconstructible' cases every time: if it grows, the problem has moved.
  • Don't change two things in the process at the same time: if you touch the pending queue and the templates together, you won't know which of the two moved the number.

If the team handles WhatsApp with an inbox that suggests replies and learns from the business's real responses, as Wando does, the audit relies on the complete history of each conversation with its timestamps, and reconstructing the timeline of a case no longer depends on the memory of whoever handled it. But classifying reasons and deciding what to change are still the team's job: no tool tells you why a customer came back if no one sits down to look at the cases together.

Examples by industry: what a reopening looks like in each business

Classification is easier to understand with concrete cases. These are examples of how each category falls in different industries, so you can recognize the pattern in your own inbox.

IndustryWhat happened in the previous closureWhat the reopening looks likeCategory
Food serviceOrder that was left without confirming the delivery timeCustomer writes two hours later asking whether the order went outA pending action was left: no one confirmed the shipment
BeautyAppointment booked without a prior reminderCustomer writes on the day of the appointment to confirm whether it still standsA pending action was left: the confirmation message is missing
Real estateInquiry about a property that was answered with incomplete informationCustomer asks again about fees or conditionsThe customer didn't understand: the answer didn't cover what they needed
HealthAppointment inquiry answered outside business hoursCustomer writes the next day because they got no responseThe response came late: the message fell outside the service window
E-commerceOrder delivered with a size or product issueCustomer reopens to request an exchange or returnProduct or service failure: the administrative closure was fine
AcademyEnrollment closed without sending the class linkCustomer writes on the first day to ask for accessA pending action was left: the follow-up send was not recorded

Notice that in four of the six examples the problem is the same: an implicit promise that no one recorded. It's not that the team didn't work, it's that they closed the conversation without noting what was pending and by when. That is the most repeated pattern in practice and the easiest to correct.

Common mistakes when auditing reopenings

There are ways of doing this audit that ruin the result without anyone noticing. These are the ones that come up again and again when the team runs it for the first time.

  • Reading the cases one by one and drawing conclusions before having the full list. The impression from the first conversation contaminates everything that comes after.
  • Measuring times with created_at instead of timestamp. After a history import, all messages appear to have happened on the same day.
  • Changing the definition of closure halfway through the audit because 'this case shouldn't count'. If you change it, the numbers stop being comparable.
  • Classifying all cases as 'didn't understand' without checking whether there was a reply. They are two different problems and they are fixed in different ways.
  • Auditing only the reopenings that ended in a complaint. The ones that were resolved without a complaint also count, and they are usually the majority.
  • Taking an action for each individual case instead of waiting for the pattern. Changing the process because of one isolated conversation creates more noise than improvement.

How this connects to the rest of your support metrics

The reopening rate is not an isolated metric. It intersects with first response times, with the pending queue and with the distribution of workload per agent. If you have those numbers measured, the reopening audit tells you where the cause is; if you don't have them, the audit will show you that data is missing before it shows you answers.

  • If the first response time is high and the reopenings for 'came in late' are also high, the problem is staffing or schedules, not wording.
  • If the pending queue grows at the end of the shift and that is where the reopenings for 'never received a reply' are concentrated, the problem is shift handover.
  • If one agent concentrates reopenings for 'left pending', review their workload before assuming it is an attitude problem.
  • If the reopenings for 'didn't understand' are spread evenly across the whole team, the problem is in the templates, not in the people.
  • If the reopenings for service failure grow while the others fall, support improved but the product or the service has another problem.

This audit measures the symptom, not the final cause. A reopening tells you that something was left unresolved, but to know why you have to look at the whole process: how shifts are assigned, how commitments are recorded and how it is verified that they are met. The reopening audit is the entry point, not the whole diagnosis.

Frequently asked questions

What is a reopened conversation?+

It is a conversation the team had considered closed and that the customer reactivates with a new message after a silence. For it to count as a reopening, it is best to set a time floor (for example, more than 12 hours) and apply it to all cases in the period.

How often should this audit be done?+

It depends on the business's conversation volume. With low volume, a one-month period may yield too few cases to draw conclusions. The important thing is to always repeat it with the same definition of close, the same definition of reopening, and the same categories, so the numbers can be compared between periods.

How do I measure the times of a reopened conversation?+

With the timestamp column, which is the one Meta provides. Never with created_at, which is when the row was inserted into the database: after a history import that column does not reflect when the message happened, and any time analysis gives a false result.

Does a reopening always mean the previous close was wrong?+

No. There are two reasons that are not team errors: the customer's need changed, or they come back because of a product or service failure. Those categories are not fixed with changes to the inbox, and if they account for most reopenings, the problem is elsewhere.

What do I do if I cannot reconstruct why the customer came back?+

Mark the case as non-reconstructible and count it separately. If they are more than 10% of the total, the problem is record-keeping, not service: it is fixed by tagging better from now on, not by reading more old conversations.

How do I know if the action I took worked?+

By comparing the percentage of reopenings per category against the previous period, measured with the same definition. If after two full periods the number has not moved, the cause is not where you looked and you need to go back to classifying the reasons.

Can I use the audit to evaluate a particular agent?+

You can cross the reopening category with the agent who made the previous close, and that helps detect if a shift concentrates one type of problem. But a single reopening says nothing about a person's performance: you need the pattern across several cases to draw a conclusion.

Answer WhatsApp with AI

Try Wando free. No credit card required.