building multilingual voice agents for hindi, english and hinglish
Language mirroring, code-switching mid-sentence, and why real-estate terminology does not translate cleanly.
the conversation is not in one language
A single call in most Indian metros moves between Hindi, English and Hinglish without anyone noticing they switched. "Budget roughly kitna soch rahe hain?" gets answered with "Around 90 lakhs, thoda upar ja sakte hain" — three languages in one exchange, and neither side experiences it as code-switching. It is just how the conversation happens.
A voice agent that only handles one of those languages, or that forces the caller into a single register, produces a conversation that immediately feels like it is talking to a system rather than a person. The mismatch is small on any one line and compounding over the length of a call.
mirroring, not translating
The design goal is not translation — converting everything to a canonical language internally and back — it is mirroring: responding in whatever mix of Hindi, English and Hinglish the caller just used, and switching again the moment they switch. If someone opens in Hindi and drops into English mid-sentence to say a number, the agent should follow that same pattern rather than snapping back to a fixed script.
This matters most on real-estate-specific vocabulary. "Possession", "carpet area", "ready-to-move", "under-construction", "site visit" — these terms get used in English even inside otherwise Hindi sentences, because that is how the industry actually talks. An agent that insists on translating them sounds like it learned the domain from a dictionary rather than from actual calls.
what breaks first
The most common failure mode is not mispronunciation — it is rigidity. A script that only accepts specific phrasings ("would you like a two bedroom or three bedroom") falls apart the moment a real caller answers with "teen ka soch rahe the par do bhi dikha do" — a perfectly normal answer that a rigid parser cannot use.
Numbers and ranges are the second failure mode. "Around 90, thoda upar ja sakte hain" is a range with a stated flexibility, not a single number. Collapsing it to "90 lakhs" throws away the part of the answer a salesperson would actually negotiate against.
what this looks like in production
In practice, this means every call Metrik runs is evaluated not just on whether it captured the right facts, but on whether the language felt natural throughout — no jarring register switches, no re-asking because a Hinglish answer was not understood, no dropping into a formal tone that nobody uses on the phone. Getting the facts right and getting the language right are the same problem, not two separate ones.