Consonants stay, internal vowels go, and aspirated pairs like sh, kh, and th count as one sound. The result is capped at 4 letters — short enough to use, sparkly enough to still recognize.
The first letter is always kept, consonant or vowel - it anchors the code. Every consonant in the name is kept. An internal vowel (anything not at the very start or very end of the name) is dropped.
Paired letters that represent a single sound in Romanized spelling -
sh kh th dh gh ph bh jh ch chh ksh gy ny - are merged
into one letter before the drop step runs, so the second letter of the
pair isn't counted as a separate deletion.
The result is capped at 4 letters. If the natural result is longer, it's trimmed from the right and the untrimmed version is offered as a fallback for resolving collisions.