Why "understanding Cantonese" is harder than it sounds
When a Hong Kong resident phones the management office and says "落雨喇,天台又漏水" — it's raining, the rooftop is leaking again — you understand it instantly. You hear the words, you know what they mean, and you know what to do next.
A machine hears none of that. It hears a waveform: a wobbly line of air pressure over time. Everything a person does automatically — separating the words, knowing which word was meant, understanding the intent — the machine has to be taught to reconstruct from that raw sound.
Voice AI has three jobs, in order. First, hear: turn the sound into text. Second, understand: work out what the text actually means and what the caller wants. Third, respond: answer, or trigger an action like logging a ticket. This article is mostly about the first job, because that's where Cantonese breaks the tools that most vendors ship — and if the first step gets the words wrong, everything after it is wrong too.
And here's the catch that shapes the whole problem: almost all voice AI was built for English first. Cantonese is treated as a translation afterthought, bolted onto a system that was never designed for how the language actually behaves. That's a very different thing from dialect-native voice AI built for Hong Kong from the ground up.
Step one: turning sound into words
The technical name for "hearing" is automatic speech recognition, or ASR. In plain terms, it's the job of turning a sound into written words.
Here's roughly what happens, without the maths:
The system takes the incoming sound and chops it into tiny slices, thousands per second. It looks at each slice and asks, "what basic speech sound is this?" — the k sound, the aa sound, and so on. These building blocks are called phonemes. String the phonemes together and you get candidate syllables, then candidate words.
But sound is messy. Many words sound almost identical, people slur, lines are noisy. So the system doesn't just pick words one at a time. It considers many possible sentences at once and asks, "which of these is the most likely thing a person would actually say?" It uses its knowledge of the language to rank them, then outputs its best guess as text.
That final step — picking the most likely whole sentence — is where a system's understanding of a specific language really counts. A model that knows English well will lean toward plausible English sentences. A model that doesn't truly know Cantonese will keep guessing wrong, because it doesn't know what a natural Cantonese sentence looks like.

So far, this is the same challenge for any language. Now come the four things that make Cantonese specifically brutal.
The tone problem: when pitch changes the whole meaning
This is the big one. In English, if you raise or lower your pitch, you change the feeling — you sound excited, or bored, or like you're asking a question. The word stays the same. "Cat" is "cat" whether you say it high or low.
Cantonese does not work like that. Pitch is part of the word itself. The same syllable, said at a different pitch, is a completely different word with a completely different meaning. Cantonese has six tones in common use (some analyses count up to nine). Here is the classic example — one syllable, "si", across the tones:
| Romanisation | Tone | Word | Meaning |
|---|---|---|---|
| si1 | high level | 詩 | poem |
| si2 | high rising | 史 | history |
| si3 | mid level | 試 | to try |
| si4 | low falling | 時 | time |
| si5 | low rising | 市 | market |
| si6 | low level | 是 | to be / yes |
Same letters. Six different words. Only the pitch tells them apart.
Now think about what this does to an English-first system. It was built to treat pitch as emotion, not as meaning — so it throws that information away, or misreads it. Get the tone wrong and you don't get a slightly-off answer; you get a different word. On a property call, that's the difference between a caller reporting a problem on the 4th floor (四, sei3) and the 10th (十, sap6), or asking to try something versus asking about the time. A tone error isn't a small accuracy dip. It's the wrong action, dispatched with full confidence.
The romanisation problem: there's no single "correct" spelling
For English, there's a clean chain: sound → standard spelling → meaning. Every word has one agreed spelling, so once the system hears it, it knows how to write it and look it up.
Cantonese doesn't have that clean chain. It's primarily a spoken language — Hongkongers read and write in standard Chinese characters, but there's no single, universally used system for spelling Cantonese out phonetically. There are competing romanisation schemes: Jyutping (the modern academic standard), Yale (common in older textbooks), and a lot of informal, ad-hoc spellings people invent on the fly, especially online.
Why does this matter for AI? Because that tidy "sound → standard spelling → meaning" shortcut isn't available. The system can't assume one correct written form to anchor to. It has to be trained to handle the fact that the same spoken word might be represented several different ways — and that most of the time, the "answer" is a Chinese character, not a romanised string at all. It's one more layer of ambiguity stacked on top of the tones.
The code-switching problem: one sentence, three languages
Listen to how Hong Kong actually talks and you'll hear something like:
"個 lift 壞咗呀,唔該 call 師傅上嚟 fix 啊,urgent 㗎。" The lift is broken, please call a technician up to fix it, it's urgent.
That's Cantonese, English, and the rhythm of everyday Hong Kong speech woven into a single sentence — and nobody thinks twice about it. Mix in a Mandarin word or two and it's still perfectly normal. This is called code-switching, and in Hong Kong it isn't the exception, it's the default.
For voice AI, this is a nightmare if the system was built around one language at a time. A Cantonese-only model chokes on the English words. An English-only model chokes on everything else. Even switching detection — noticing mid-sentence that the language just changed — is hard. The system has to be trilingual by design, expecting the mix and handling it in stride, rather than treating each language as a separate mode it has to switch between.
This is exactly why so many everyday calls trip up generic tools: the common property calls an AI actually needs to handle are full of this natural language-mixing, not clean textbook sentences.
The data problem: why Cantonese AI has less to learn from
AI learns from examples. The more examples of a language it has seen — and the more those examples match real usage — the better it gets. This is where Cantonese is at a structural disadvantage.
There is an enormous amount of English text and English audio in the world, all neatly transcribed and available to train on. Cantonese has far less. And the gap is worse than it first looks, because the Cantonese material that does exist is often formal or written, while the language that matters on a phone call is the opposite: colloquial, fast, spoken, full of slang, recorded over a telephone line. There's comparatively very little of that.
So when a general model underperforms in Cantonese, it usually isn't a mystery. It simply hasn't heard enough real, spoken, messy Cantonese to know what it should sound like. This is why local specialisation isn't marketing — it's the actual mechanism. A system trained on genuine Hong Kong calls has learned from the exact kind of speech it will meet in production. A general model translated into Cantonese has not.
The real-world problem: noise, phones, and how people actually talk
Everything above assumes a clean recording. Real calls are anything but.
A property hotline gets calls from a windy podium, a noisy lobby, a construction site next door, a mobile with one bar of signal. Callers are elderly, or upset, or talking fast, or all three. They interrupt themselves, trail off, repeat things. Telephone audio is narrow and compressed to begin with, stripping out detail the system could otherwise use.
Understanding Cantonese in a quiet lab is a solved-enough problem. Understanding Cantonese coming through a lobby intercom at 2am from an anxious resident is a completely different bar — and it's the only bar that matters operationally. A system that hasn't been hardened for real telephone conditions will look impressive in a demo and fall apart in the field, which is one of the quieter reasons call handling breaks down after the call connects.
Routiq AI's Cantonese voice AI was built for exactly these conditions — tones, code-switching, and lobby noise included.
So how does purpose-built Cantonese voice AI solve this?
Put the four problems together and the requirements almost write themselves. A voice AI that genuinely understands Hong Kong Cantonese has to be:
- Trained on real Cantonese speech, not translated from an English system — so it has actually heard the colloquial, spoken language it needs to recognise.
- Tone-aware, treating pitch as part of the word rather than as emotion — so it doesn't confuse four for ten or poem for market.
- Trilingual by design, expecting Cantonese, English and Mandarin in the same sentence — so code-switching is normal input, not an error.
- Tuned for telephone audio, hardened against noise, weak signal and fast, informal speech — so lab accuracy survives contact with a real lobby.
And then one more thing that sits beyond recognition: it has to be connected to action. Hearing the words correctly is step one; the value comes when the system turns "天台漏水" into a logged, categorised, dispatchable job. Transcription alone changes nothing — turning the call into a work order is where the workload actually drops.
This is the whole reason a Cantonese AI call centre is a different category of product from a generic voice bot with a Cantonese label bolted on. The dialect isn't a setting. It's the foundation.
What this means for Hong Kong property teams
If your callers speak textbook Mandarin in a recording studio, almost any voice AI will do. But they don't. They speak real Hong Kong Cantonese — tonal, code-switched, fast, from a noisy corridor — and that is precisely the input that separates a system built for the dialect from one that was translated into it.
So the practical takeaway is simple: don't evaluate voice AI on whether it "supports Cantonese." Everything claims to. Evaluate it on whether it was built for Cantonese — trained on real speech, tone-aware, trilingual, and hardened for the phone. That's the difference between a demo that impresses and a hotline you can actually trust at 2am.
Frequently asked questions
Can AI really understand Cantonese?
Yes — but it depends heavily on the system. Voice AI built specifically for Cantonese, and trained on real spoken Cantonese, can understand it well. General, English-first voice AI often struggles, mainly with tones and with the natural mixing of languages in Hong Kong speech.
Why is Cantonese harder for AI than English or Mandarin?
Four reasons stack up: Cantonese uses tones where pitch changes a word's meaning, it has no single standard way of spelling it out phonetically, Hong Kong speakers constantly mix Cantonese with English and Mandarin, and there's far less spoken Cantonese training data than English. Each one adds ambiguity the system has to resolve.
What is Jyutping, and does the AI need it?
Jyutping is the modern standard system for writing Cantonese sounds using the Latin alphabet, mainly used in teaching and research. Everyday users don't need to know it — a well-built system handles Cantonese without the caller ever touching romanisation. It matters behind the scenes, not on the call.
Can Cantonese voice AI handle English and Mandarin in the same call?
Yes, if it's trilingual by design. Because Hong Kong callers routinely switch between all three within a single sentence, a capable system expects the mix and handles it smoothly, rather than treating each language as a separate mode.
Does background noise affect Cantonese speech recognition?
A great deal. Real calls come with lobby noise, wind, weak mobile signal and compressed telephone audio, all of which make recognition harder. Systems that haven't been specifically tuned for real-world phone conditions tend to perform far worse in the field than in a quiet demo.
Is a Cantonese chatbot the same as Cantonese voice AI?
No. A chatbot handles typed text, usually for simple FAQs, while voice AI handles live spoken calls — which is where tones, code-switching and noise all come into play. Urgent property issues arrive as phone calls, not typed messages, which is why voice-first Cantonese AI matters more than a chatbot.


