Tones are rare in European languages and therefore native speakers of those languages can often struggle with the tones in the Thai language. This site attempts to help solve that problem by having users practice listening and practice speaking.

It's useful to explain each approach so that you can understand its benefits and limitations.

Practice Listening

A minimal set is a group of words that differ by only one phonological element. To train your ears to distinguish between the different tones we use words that differ by the tone used. The list of 5 words above is an example of one such group.

We play a recording of one word from a group and you guess which member of the group was played, i.e., was it the word with the rising tone, or the falling tone, and so on. The minimal set tool from thai-language.com was very helpful in finding these minimal sets.

Being able to identify the tone of a word in isolation is useful but it doesn't necessarily mean that you'll be able to identify the tones of words in sentences, so it's important to do other practice as well.

Practice Speaking

We ask you to record yourself pronouncing a monosyllabic word. We'll then submit that recording to our servers and attempt to classify it into one of the 5 tones based entirely on its pitch; we're not judging you on any of the other factors in pronunciation.

We're using a support vector machine trained with thousands of recordings of native Thai speakers to determine the tone (about half the recordings were from thai-language.com). The model created is over 90% accurate when tested against a subset of our recordings but it hasn't been trained with recordings of foreigners. Hopefully it becomes more accurate over time, but in the meantime missclassifications are a likelihood.

We also graph the pitch of your recording so that you can compare it to that of a native speaker. Two things to note here: firstly, extracting the pitch from a recording isn't a perfect process so you'll occasionally see some inaccurate lines. Secondly, it's important to remember that Thai uses a contour tone system, so you're not attempting to have exactly the same pitch as the native speaker, but rather to make a similar shape. This is particularly true when the native speaker is a different gender to you as there's about a 100 Hz difference between male and female speakers.

Even with these shortcomings, we still think that this feature is useful in giving you almost immediate feedback on your tone. For best results, use both the graph and our classification of your tone as feedback. Also, remember to record yourself in a quiet environment and listen back to your recording alongside the native speaker's recording.

Note: this feature is best used in a browser that supports the MediaRecorder API, which currently includes Firefox and Chrome. It will work on other modern browsers but not as reliably. iOS in particular makes it difficult to record audio through the browser.