Examples
| Amount | “เอ็ด” style | “หนึ่ง” style |
|---|---|---|
| 1234 | หนึ่งพันสองร้อยสามสิบสี่บาทถ้วน | หนึ่งพันสองร้อยสามสิบสี่บาทถ้วน |
| 101 | หนึ่งร้อยเอ็ดบาทถ้วน | หนึ่งร้อยหนึ่งบาทถ้วน |
| 21 | ยี่สิบเอ็ดบาทถ้วน | ยี่สิบเอ็ดบาทถ้วน |
| 1000001 | หนึ่งล้านเอ็ดบาทถ้วน | หนึ่งล้านหนึ่งบาทถ้วน |
| 0.50 | ห้าสิบสตางค์ | ห้าสิบสตางค์ |
| 2.675 | สองบาทหกสิบแปดสตางค์ | สองบาทหกสิบแปดสตางค์ |
| 12345678.90 | สิบสองล้านสามแสนสี่หมื่นห้าพันหกร้อยเจ็ดสิบแปดบาทเก้าสิบสตางค์ | สิบสองล้านสามแสนสี่หมื่นห้าพันหกร้อยเจ็ดสิบแปดบาทเก้าสิบสตางค์ |
Rules used
- Tens: 1 is “สิบ” (never หนึ่งสิบ) and 2 is “ยี่สิบ”.
- A final 1 in a number of two or more digits is read “เอ็ด” only, per the Royal Institute: 101 is หนึ่งร้อยเอ็ด and 501,000,000 is ห้าร้อยเอ็ดล้าน. It explains that reading it “หนึ่ง” probably comes from naval radio practice. This page defaults to “เอ็ด” and offers “หนึ่ง” to match LibreOffice.
- Above แสน the count restarts at ล้าน every six digits: 1,000,000,000,000 is หนึ่งล้านล้าน.
- With no satang the words end in “บาทถ้วน”; with satang only, there is no ศูนย์บาท: 0.50 is ห้าสิบสตางค์.
- More than two decimals round half-up on the digits typed, so 2.675 is 68 satang; some programs using binary floating point give 67.
- Excel and LibreOffice Calc have =BAHTTEXT(A1). LibreOffice reads 101 as หนึ่งร้อยหนึ่ง, matching this page’s “หนึ่ง” style.
How it was checked
The “หนึ่ง” style matches LibreOffice Calc 24.2 BAHTTEXT on all 3,289 test amounts — whole numbers, decimals and ล้านล้าน. Each of the three existing baht-text libraries tried gets some cases wrong, such as negatives or one satang.
FAQ
How is 101 baht written?
หนึ่งร้อยเอ็ดบาทถ้วน, per the Royal Institute. Some programs, such as LibreOffice, write หนึ่งร้อยหนึ่งบาทถ้วน; choose the “หนึ่ง” style to match documents from them, and use one style throughout.
When is “ถ้วน” used?
When there are no satang, to say the amount ends exactly at baht: ห้าร้อยบาทถ้วน.
How is 21 satang read?
ยี่สิบเอ็ดสตางค์. One satang (0.01) is หนึ่งสตางค์, a single digit.