Services
Custom SoftwareCRMs, portals, dashboards + internal tools. Automation + IntegrationsWorkflows, APIs + business logic. DataScraping, enrichment + monitoring. AIAgents, assistants + knowledge systems. WebWebsites, performance + conversion.
Company
AboutWorkJournal
Start a project →

How to Use AI to Classify Customer Messages

Define categories by who needs to act next, compare AI with inbox rules, and pilot routing without giving the system permission to reply or change records.

NM
Written byNathan MackenzieFounder · ZappFlow
Practical notes on software, automation, data, web and AI.

To use AI to classify customer messages, define which team should handle each type of request, ask the model to return only approved labels, and use fixed rules to send messages to the corresponding queue. Keep a staffed review queue for mixed, unclear or unsupported requests. Test the whole route before allowing it to move live messages.

If staff repeatedly read and forward emails from a shared inbox, classification may help with that sorting. It should not send replies, approve refunds or change customer records. A convincing label is not enough: the message must reach someone responsible for the next piece of work.

The idea in one viewVISUAL GUIDE
WHAT HAPPENS BEHIND THE SCENESHOW IT WORKS

How AI sorts customer messages without taking action

A safe setup uses approved labels to send messages to the right team, while unclear requests go to staff.

01
What people useCustomer message
A customer writes in their own words, with details that may be clear, mixed or unclear.
02
What it knowsApproved category
AI selects only from labels you have agreed, such as billing or delivery.
03
What decidesTeam hand-off
Fixed rules send each approved label to the team responsible for the next task.
04
What happens nextStaff review
Mixed, unclear or unsupported requests go to staff. AI does not reply or change records.
Test the full route before messages go live. Use inbox rules for reliable signals.

I would first define the hand-offs between teams, then test whether ordinary inbox rules can handle them before adding AI. Front’s classification guidance supports this combined approach: use deterministic rules for clear signals and AI when the decision depends on understanding the message.

Decide which messages need AI rather than inbox rules

Ordinary rules are a good fit when the deciding information is dependable: a dedicated recipient address, a recognised sender or a standard subject prefix. If every supplier invoice arrives at a dedicated invoice address, a rule may be all you need.

AI becomes worth testing when customers describe the same request differently. “I paid twice”, “there are two charges on my statement” and “you’ve taken the money again” may all require billing staff, despite sharing few keywords.

Consider this illustrative example: a customer writes, “Please send a copy of the invoice; the delivery itself was fine.” A keyword rule looking for “delivery” could send it to dispatch. A classifier interpreting the request could select billing. But where the customer has chosen a reliable “invoice copy” option on a form, routing from that field is simpler than asking AI to interpret the message.

Compare both methods on your own messages. AI email classification and routing is useful only if it handles the difficult cases well enough to justify its setup, review and support needs.

Define categories around the next piece of work

Start with messages staff have already handled. Record who needed to act next and why. Build category definitions from those decisions rather than from every topic customers mention.

A category specification should contain a short label, what belongs in it, what does not, its destination and the person responsible for that queue. For example:

  • Billing request: invoice copies, payment queries and disputed charges. Send to the billing queue. Merely mentioning a price does not make a message a billing request.
  • Delivery request: tracking, missing parcels and delivery arrangements. Send to the dispatch queue.
  • Product support: help using a purchased product. Send to support.
  • Staff review: mixed requests, unclear intent or requests outside the defined categories. Send to the named triage owner.

These are illustrative categories, not a universal set. Keep only distinctions that change who does the work or how it is handled. If staff cannot agree on the right category for a message, clarify the process before expecting a model to resolve it.

Keep urgency separate from the main destination

Urgency can overlap with billing, delivery or support. It therefore needs its own field and handling rule rather than competing with those categories. Front’s guidance also recommends separate classification steps for overlapping dimensions such as urgency and primary topic.

For example, “The replacement has still not arrived and our opening is tomorrow. I want this escalated” is an illustrative delivery complaint requiring priority review. It should not lose its delivery destination simply because it is also urgent. Define what priority review means, who sees it and when they are expected to check it.

Give mixed requests an explicit review route

“My parcel never arrived, and I need the invoice corrected” contains work for two teams. For the pilot, send it to staff review so someone can assign both tasks and retain responsibility for the overall response. Forcing it into one category risks hiding the second request.

The review queue needs a named owner and a checking schedule. An “unclear” label without anyone watching it simply creates another place for messages to wait.

TWO VALID CHOICES, DIFFERENT TRADE-OFFSTRADE-OFF MAP

Inbox rules or AI for sorting customer messages?

Rules suit dependable signals; AI may help when customers describe the same request in different ways.

Inbox rules

YOU GAINRoute messages by a dedicated address or form choice.
YOU GIVE UPCan misroute messages when a keyword points to the wrong request.
GOOD FIT WHENUse when the deciding detail is dependable and easy to check.

AI classification

YOU GAINCan recognise varied wording that points to the same team or task.
YOU GIVE UPNeeds setup, testing and staff review for unclear or mixed requests.
GOOD FIT WHENTest when customers describe the same need in many different ways.
DECIDE FROM THE CONSTRAINT
Compare both methods on real messages, and send uncertain or mixed requests to staff review.

Build a workflow that can classify but cannot reply

A limited AI workflow should pass the message to a classifier, validate its returned labels, then apply a fixed routing rule. The model should choose from approved categories, not invent team names or destinations.

Give it category definitions, inclusion and exclusion examples, mixed-request instructions and the urgency policy. Require a structured result with a category, an urgency flag and a review-required flag. A short explanation can help staff investigate errors, but it should not control the routing.

Specify that customer text is material to classify, not instructions for operating the system. Enforce that boundary through permissions: the classifier should have no ability to send customer replies, issue refunds or update account records.

The surrounding workflow also needs predictable failure handling:

  • Missing or unrecognised labels go to staff review.
  • A timeout leaves the message visible in the original inbox and alerts the triage owner.
  • Retries must not create duplicate tasks or move the same message repeatedly.
  • A failed transfer remains visible until someone confirms that the destination received it.

Some products expose confidence fields. Zendesk’s intelligent triage documentation, for example, describes classifications with associated confidence fields that agents can correct. Do not treat a score as a guarantee of correct routing. Test any review threshold against your messages and staff capacity.

Choose the message input and check data handling

Start with the current message and include earlier conversation only where it helps staff determine the request. “That still hasn’t arrived” may need earlier context; a long thread containing resolved issues may confuse the current routing decision. Test both approaches on relevant examples.

Remove unnecessary customer details before building the test sample, including identifying information inside message bodies and signatures. Do not include attachments by default if routing does not require them.

Before sending live customer data to a provider, check the terms and configuration for the exact product you intend to use: retention, use of inputs for training, processing locations, access controls, deletion and logging. Verify which options apply to your account rather than assuming all AI tools handle data alike. Limit workflow permissions to the inboxes, labels and queues needed for the pilot.

WHAT HAPPENS WHEN SOMETHING GOES WRONGBACKUP PLAN

When message classification fails

01 · PROBLEM
Label unclear or transfer fails

A missing label or timeout can leave a message without a confirmed destination.

→
02 · FALLBACK
Keep it visible for review

Leave the message in the original inbox and alert the triage owner for staff review.

→
03 · RECOVERED
Confirm the transfer

Keep a failed transfer visible until staff confirm the destination received the message.

OUTCOME
The message stays visible and is not moved repeatedly or sent twice.
Visible exception

Test destinations, not just plausible labels

Take an anonymised sample of previously handled messages and ask staff to label the expected category, destination, urgency and review requirement. Include routine requests, unfamiliar wording, mixed requests, short follow-ups and urgent complaints. Resolve staff disagreements before using the sample as a test.

Run current rules and the proposed classifier against the same messages. Keep some messages aside while refining definitions, then use those untouched examples for a final check. Anthropic’s ticket-routing guide similarly recommends defining intent categories and evaluating against test cases using criteria relevant to the task.

Use a routing test sheet with one entry per message:

  • Reference and input: anonymised message identifier and whether earlier conversation was included.
  • Expected outcome: staff-agreed category, team, urgency and review requirement.
  • Observed outcome: returned labels and actual destination for both rules and AI.
  • Error and consequence: wrong team, missed urgency, hidden second request, unnecessary review or failed transfer.
  • Correction: definition change, routing fix or retained human review, with a person responsible for retesting.

Test through to the destination queue. A correct category followed by a broken transfer is still a routing failure.

Count wrong destinations, missed urgent messages, mixed requests routed without review and the volume sent for staff checking. A single overall accuracy figure can conceal the mistakes with the greatest consequences. Set acceptance conditions before launch according to the cost of those mistakes and the review workload staff can sustain.

Run a limited pilot before expanding

Begin in shadow mode: record suggested routes while staff continue sorting messages normally. Compare the suggestions with what staff actually do, and investigate disagreements rather than assuming either answer is correct.

Then enable routing for a clearly defined subset of requests. Keep a visible way to return to manual sorting. The pilot checklist should confirm that:

  • Each destination and the review queue have named owners.
  • Mixed, unsupported and urgent messages follow the agreed handling rules.
  • Invalid outputs, timeouts and failed transfers are visible and recoverable.
  • Staff can correct routes and record why they were wrong.
  • The agreed error and review-workload limits are met on held-back tests and observed live traffic.

Expand only when those conditions hold. Review errors and changing customer language regularly, and retest after changing categories, prompts, models or routing rules. The useful outcome is reliable work allocation: each message reaches someone who can take the next step, while uncertain cases remain visible to staff.

ZappFlow · practical next step

Find out whether AI can reduce your inbox sorting

Tell ZappFlow which inbox or helpdesk you use, who sorts incoming messages and where those messages need to go. We can help assess whether existing rules are enough or a limited AI pilot is worth testing.

Discuss your message workflow