18 April 2026

Bahasa, English, and Chinese paths that split the event map

The same reload can send different event names depending on the language the subscriber chose at first open. That split quietly breaks every later comparison.

People talking around a table in an office

Malaysian customer apps are not monolingual. A first-open language picker for Bahasa Malaysia, English, and Chinese is ordinary. What is less ordinary is an event catalogue that treats those three trees as one journey.

How the split appears

In one review the English bill-pay path sent bill_pay_success with an amount. The Bahasa path sent payment_done with no amount. The Chinese path reused a web checkout that still carried an old campaign parameter and no bill cycle. Commercial compared “success rate by language” and concluded Chinese users paid less often. They were counting different objects.

The defect is usually historical. Screens were translated in batches. Events were added by different vendors. Nobody was paid to walk all three trees with the same test account and write down the names.

What we do in a sitting

We pick one journey — reload or bill view is enough — and complete it in each language on the same device. We export the event stream for those sessions only. The table of names is often enough for engineering to schedule a rename. Until the names match, we refuse to put language side by side in a readout. A false comparison is worse than no comparison.

Copy is not the same job

Priya still reads whether the store listing and the in-app strings promise the same pack names. That is separate from the event split. Both can be wrong at once. A measurement review should say which is which, so the listing owner and the instrumentation owner do not wait on each other.