The mailbox everyone owns and nobody owns
A general enquiries address accumulates everything: orders, complaints, supplier invoices, recruitment, marketing approaches and spam. Someone triages it manually, usually alongside another job.
The failure mode is not volume but latency on the things that matter. An urgent complaint sits for a day behind forty routine messages, and the cost of that delay dwarfs the time spent sorting.
What can be classified reliably
- Message type - order, complaint, supplier query, application, marketing approach
- Which team or person should handle it
- Urgency, where the language supports it
- Whether it belongs to an existing thread or case
- Language, for multilingual inboxes
- Whether it needs a reply at all
Signals come from the body text, the subject, the sender's domain and history, attachments and headers. Sender history is particularly strong and frequently unused - an address that has only ever sent invoices probably sent another.
The messages you must not misroute
Some categories carry consequences far beyond their volume: a legal notice, a regulator's letter, a data subject request with a statutory deadline, a safeguarding concern, a serious complaint.
These are exactly what a model optimised for overall accuracy handles worst, because they are rare. Handle them with a separate, deliberately over-sensitive detection layer - keyword and pattern based, tuned to catch everything at the cost of false alarms - running alongside the classifier.
A handful of false alarms a week is a trivial cost against missing a statutory deadline.
Never move mail out of sight
| Design | Risk |
|---|---|
| Route to a team folder, all still visible | Low - recoverable |
| Apply a label, leave in the inbox | Very low |
| Auto-archive suspected spam | Moderate - genuine mail gets lost |
| Auto-reply based on classification | High - wrong replies are visible to customers |
| Auto-delete | Unacceptable |
The principle is that a misroute should cost a moment, not a lost message. Keep everything visible and reversible, and let people find things the classifier got wrong.
Use the corrections
When someone moves a message to the right place, that is a labelled example arriving free. Capturing those corrections gives a continuously improving training set with no separate labelling exercise.
It also gives a live accuracy measure: the correction rate is the error rate. Watching it over time shows whether the model is keeping up as the business changes what customers write about.
A misrouted email should cost someone ten seconds. It should never cost you the message.