Numbers are a closed set. Ten words, two of which take a different form inside a larger number, and once you own them you can build any figure you will meet in a shop, a clinic or a rent negotiation. Here they are: หนึ่ง (nèung) 1, สอง (sǎwng) 2, สาม (sǎam) 3, สี่ (sìi) 4, ห้า (hâa) 5, หก (hòk) 6, เจ็ด (jèt) 7, แปด (bpàet) 8, เก้า (gâo) 9, สิบ (sìp) 10, with ศูนย์ (sǔun) for zero. Every one of them carries a tone and not one of them is mid. The tones are not decoration here either. A number arrives with no grammar around it: no verb, no classifier, no sentence shape a listener can use to repair a wrong guess. A flat sìi and a flat sìp are genuinely ambiguous in a way that a flat verb never is. That is why this page spends as much time on hearing numbers as on saying them.
Everything above ten is assembled from those same words, and the order carries the meaning. A unit after สิบ makes a teen: สิบสอง (sìp-sǎwng) 12, สิบห้า (sìp-hâa) 15, สิบแปด (sìp-bpàet) 18. A unit before สิบ makes a ten: สามสิบ (sǎam-sìp) 30, สี่สิบ (sìi-sìp) 40, ห้าสิบ (hâa-sìp) 50. Nothing else changes between the two, so สิบสาม is 13 and สามสิบ is 30 out of the same two words in the other order. Then you fill in behind the ten: สามสิบสอง (sǎam-sìp-sǎwng) 32, ห้าสิบเก้า (hâa-sìp-gâo) 59. Above ninety-nine, ร้อย (ráwy) is a hundred and พัน (phan) a thousand, so สองร้อยห้าสิบ (sǎwng-ráwy hâa-sìp) is 250, and a price is that plus บาท (bàat). The units above a thousand are set out in outline below and in full, with the way Thai groups large figures, on the Thai numbers and prices chart. This lesson concentrates instead on getting numbers out of your mouth and into your ear.
Two forms break the pattern and both are compulsory. Twenty is ยี่สิบ (yîi-sìp), never สองสิบ. ยี่ is an older word for two which survives in the twenties and nowhere else in the number system, so two hundred is still the regular สองร้อย (sǎwng-ráwy). And a final one is เอ็ด (èt) rather than หนึ่ง: 11 is สิบเอ็ด (sìp-èt), 21 ยี่สิบเอ็ด (yîi-sìp-èt), 31 สามสิบเอ็ด (sǎam-sìp-èt), 101 ร้อยเอ็ด (ráwy-èt). เอ็ด only ever sits at the end of a longer number and cannot answer how many on its own. Build these two logically and a vendor will still work out what you mean, but the two do not fail the same way. สิบหนึ่ง usually passes without comment, so nothing stops it hardening into habit. สองสิบ sounds wrong enough that you are more likely to hear ยี่สิบ said back to you; take that as the correction it is rather than repeating yourself.
Saying a number is the easy half. Hearing one is where a resident actually fails, because you get a single pass at it, at full speed, from somebody who says these words all day and has no reason to slow down. Four things make that tractable.
Start with stress. Thai puts the weight on the last syllable of a compound, so the two halves of a number are not equal. In สิบห้า the สิบ is the light, hurried syllable and ห้า is the one that lands; in ห้าสิบ the weight moves onto สิบ. That is a far better handle on the 14-and-40 problem than trying to replay the order of two syllables that have already gone past, because it turns a memory task into something you can hear while it happens. Say สิบสี่ and สี่สิบ aloud one after the other until the difference sits in your mouth, since your mouth is where you will recognise it from.
Then listen for the skeleton before the digits. สิบ, ร้อย and พัน are the load-bearing sounds in any figure, and they are longer and steadier than the units packed around them. Catch the place words first and go back for whatever sat beside them. A figure you have caught as ráwy-something is already half understood.
Then the elisions, which is where the money is. Two things fall out of quick speech. บาท goes, because you are both standing over the same tray of mangoes and there is nothing else a number could be counting. More dangerously, สิบ goes as well: a single digit spoken straight after ร้อย or พัน is the next place down, not the units. สองร้อยห้า is 250, not 205. ร้อยห้า is 150, พันห้า is 1,500 and สองพันสาม is 2,300. หนึ่ง in front of a unit disappears the same way, so หนึ่งร้อยยี่สิบห้า reaches you as ร้อยยี่สิบห้า, 125. And เอ็ด at the end of a number is short and unstressed, so a figure that seems to stop abruptly just after its tens is very often a one.
Then the pairs that collapse when a motorbike goes past. สี่ and สิบ share their consonant and their low tone, and what separates them is the rest of the syllable: สี่ has a long open vowel you can hold, สิบ has a short one that stops dead on a p. สอง and สาม share their consonant and their rising tone, but they differ in the vowel as well as the ending, aw plus ng against aa plus m, so the vowel is the larger of the two clues. ห้า and หก share only their initial and split three ways after it: falling against low, aa against a short o, open against a stop on k. Knowing which pair you are stuck between is most of the work, because it turns an open question into a choice between two.
You get the figure in the first place with เท่าไหร่ (thâo-rài), how much: อันนี้เท่าไหร่ครับ (an-níi thâo-rài khráp) for a thing in front of you, โลละเท่าไหร่ครับ (loo-lá thâo-rài khráp) for anything sold by weight. Women end both with the high-toned คะ (khá), because it is a question. For a count rather than a price the word is กี่ (gìi), and it sits in front of the classifier: กี่คน (gìi khon), how many people. The habit that repairs the rest is the one Thais use on each other: say the figure back before you act on it. ยี่สิบห้าบาทครับ (yîi-sìp-hâa bàat khráp), then watch the face. A wrong repetition is corrected on the spot; a silent misunderstanding is not. If the number still will not land after two passes, ask to see it. Most stalls and counters keep a calculator or a phone within reach, and holding a figure up is ordinary behaviour here rather than an admission of failure.
ครึ่ง (khrêung) is half, and its position in the phrase decides which half it means. After a stated quantity it adds a half onto that quantity: สองกิโลครึ่ง (sǎwng gì-loo khrêung) is two and a half kilos, ชั่วโมงครึ่ง (chûa-moong khrêung) an hour and a half. In front of a bare unit it takes half of one: ครึ่งชั่วโมง (khrêung chûa-moong) is half an hour, ครึ่งกิโล (khrêung gì-loo) half a kilo. The two are not interchangeable, and the gap between waiting half an hour and waiting an hour and a half is worth one word of care. On a clock ครึ่ง always goes on the end, บ่ายโมงครึ่ง (bàai-moong-khrêung) for half past one in the afternoon, and the rest of that belongs to the lesson on telling the time. When the thing is already named and you want half of it, use ครึ่งหนึ่ง (khrêung nèung). For the vaguer and-a-bit that Thai reaches for far more often than any fraction, กว่า (gwàa) follows the number: ร้อยกว่าบาท (ráwy-gwàa bàat) is a hundred-odd baht, a rough figure short of two hundred rather than a precise one.
ที่ (thîi) in front of a number makes an ordinal, and nothing else has to change: ที่หนึ่ง (thîi nèung) first, ที่สอง (thîi sǎwng) second, ที่สาม (thîi sǎam) third. Position is the whole of it, because ที่ is also the classifier for portions and seats: สองที่ (sǎwng thîi) is two portions, ที่สอง (thîi sǎwng) is the second one. Note that the one stays หนึ่ง in the ordinal. เอ็ด belongs to quantities and has no place there. You will meet ที่ on a queue ticket, in ครั้งที่สอง (khráng thîi sǎwng), the second time, and inside วันที่ (wan-thîi), which is the numbered day of the month as against the name of the weekday. Dates, the month names and the Buddhist year are a substantial job on their own and they have their own lesson.
A phone number is not a quantity and is not read as one. You say the digits one at a time, in the groups they are printed in: 081-234-5678 comes out as sǔun bpàet nèung, sǎwng sǎam sìi, hâa hòk jèt bpàet. Two things follow from that. The one is หนึ่ง and never เอ็ด, because a digit string has no units place for เอ็ด to sit in. And the zero is ศูนย์ (sǔun) as a number, but inside a phone number you will also hear โอ (oo), the English letter O, used exactly the way an English speaker says oh instead of zero. Both are ordinary and neither is a mistake. When you give your own number, keep the printed grouping and pause between the groups rather than running ten digits together, which is the single thing that most often makes a Thai listener ask for it again.
Two more things sit next to numbers without being part of them. Counting actual objects needs a classifier, and the order is noun, then number, then classifier: น้ำสองขวด (náam sǎwng khùat), two bottles of water. When the number is one, spoken Thai normally flips the last two words: น้ำขวดหนึ่ง (náam khùat nèung), a bottle of water. That is the same postposed หนึ่ง that gives you ร้อยนึง. Which classifier belongs to which noun is a separate piece of work with its own reference page. And Thailand writes its digits in two sets. The Arabic digits do nearly all the daily work, but the Thai set ๐ ๑ ๒ ๓ ๔ ๕ ๖ ๗ ๘ ๙ still turns up on banknotes, temple signs, government notice boards and official letters, most often in the date. They are the same values in different shapes, so ๒๕ is 25 and is read sound for sound as yîi-sìp-hâa. Recognising the ten shapes is the whole task; you will almost never have to write one.