A native English speaker studying on their own needs about 828–1,035 hours to reach B2 in a Category I language like Spanish, French or Italian, 1,242 in Category II (German, Indonesian), 1,518 in Category III (Russian, Greek, Hindi and most others), and 3,300 in Category IV: Arabic, Japanese, Korean, Mandarin and Cantonese. The full table for all 70 languages is below.
Every figure on this page comes from one source, the class hours the U.S. Foreign Service Institute publishes for its full-time students, put through one method, so the numbers here match our calculators and guides exactly.
How we get from FSI class hours to your hours
FSI students study full time: 23 hours a week in class with a teacher and another 17 hours on their own, aiming for professional working proficiency (ILR 3). We take FSI's class hours for a language, multiply them by 1.5 to account for studying alone without a teacher, and count the result as the hours from zero to B2, the upper-intermediate CEFR level. Because ILR 3 is above B2, that's a cautious estimate rather than an optimistic one.
A few languages in the table aren't on FSI's current list: Afrikaans, Catalan, Icelandic, Pashto, Sinhala, Somali, Tagalog, Tamil and Telugu. We place each in the category of its closest listed relatives and mark it as an estimate.
Hours by FSI category
| Category | FSI weeks | FSI class hours | Self-study hours to B2 | Languages |
|---|---|---|---|---|
| I | 24–30 | 552–690 | 828–1,035 | 11 |
| II | 36 | 828 | 1,242 | 5 |
| III | 44 | 1,012 | 1,518 | 49 |
| IV | 88 | 2,200 | 3,300 | 5 |
Within Category I, French and Spanish sit at the top of the range: FSI gives them longer courses than Italian, Portuguese or the Scandinavian languages.
Hours to learn each language
| Language | FSI category | FSI class hours | Self-study hours to B2 |
|---|---|---|---|
| Danish | I | 552 | 828 |
| Dutch | I | 552 | 828 |
| French | I | 690 | 1,035 |
| Italian | I | 552 | 828 |
| Norwegian | I | 552 | 828 |
| Portuguese | I | 552 | 828 |
| Romanian | I | 552 | 828 |
| Spanish | I | 690 | 1,035 |
| Swedish | I | 552 | 828 |
| Afrikaans (estimate) | I | 552 | 828 |
| Catalan (estimate) | I | 552 | 828 |
| German | II | 828 | 1,242 |
| Haitian Creole | II | 828 | 1,242 |
| Indonesian | II | 828 | 1,242 |
| Malay | II | 828 | 1,242 |
| Swahili | II | 828 | 1,242 |
| Albanian | III | 1,012 | 1,518 |
| Amharic | III | 1,012 | 1,518 |
| Armenian | III | 1,012 | 1,518 |
| Azerbaijani | III | 1,012 | 1,518 |
| Bengali | III | 1,012 | 1,518 |
| Bosnian | III | 1,012 | 1,518 |
| Bulgarian | III | 1,012 | 1,518 |
| Burmese | III | 1,012 | 1,518 |
| Croatian | III | 1,012 | 1,518 |
| Czech | III | 1,012 | 1,518 |
| Dari | III | 1,012 | 1,518 |
| Estonian | III | 1,012 | 1,518 |
| Finnish | III | 1,012 | 1,518 |
| Georgian | III | 1,012 | 1,518 |
| Greek | III | 1,012 | 1,518 |
| Hebrew | III | 1,012 | 1,518 |
| Hindi | III | 1,012 | 1,518 |
| Hungarian | III | 1,012 | 1,518 |
| Kazakh | III | 1,012 | 1,518 |
| Khmer | III | 1,012 | 1,518 |
| Kurdish | III | 1,012 | 1,518 |
| Kyrgyz | III | 1,012 | 1,518 |
| Lao | III | 1,012 | 1,518 |
| Latvian | III | 1,012 | 1,518 |
| Lithuanian | III | 1,012 | 1,518 |
| Macedonian | III | 1,012 | 1,518 |
| Mongolian | III | 1,012 | 1,518 |
| Nepali | III | 1,012 | 1,518 |
| Persian (Farsi) | III | 1,012 | 1,518 |
| Polish | III | 1,012 | 1,518 |
| Russian | III | 1,012 | 1,518 |
| Serbian | III | 1,012 | 1,518 |
| Slovak | III | 1,012 | 1,518 |
| Slovenian | III | 1,012 | 1,518 |
| Tajik | III | 1,012 | 1,518 |
| Thai | III | 1,012 | 1,518 |
| Turkish | III | 1,012 | 1,518 |
| Turkmen | III | 1,012 | 1,518 |
| Ukrainian | III | 1,012 | 1,518 |
| Urdu | III | 1,012 | 1,518 |
| Uzbek | III | 1,012 | 1,518 |
| Vietnamese | III | 1,012 | 1,518 |
| Icelandic (estimate) | III | 1,012 | 1,518 |
| Pashto (estimate) | III | 1,012 | 1,518 |
| Sinhala (estimate) | III | 1,012 | 1,518 |
| Somali (estimate) | III | 1,012 | 1,518 |
| Tagalog (estimate) | III | 1,012 | 1,518 |
| Tamil (estimate) | III | 1,012 | 1,518 |
| Telugu (estimate) | III | 1,012 | 1,518 |
| Arabic | IV | 2,200 | 3,300 |
| Cantonese | IV | 2,200 | 3,300 |
| Japanese | IV | 2,200 | 3,300 |
| Korean | IV | 2,200 | 3,300 |
| Mandarin Chinese | IV | 2,200 | 3,300 |
Turning hours into a date
Hours only become a plan once you know how many you can put in each week. At 30 minutes a day, done on 90% of days, you put in 3.15 hours a week. At an hour a day, 6.3. Divide the hours above by your weekly number and you have a count of weeks. The Time to Fluency Calculator does that arithmetic for you, and the CEFR level calculator works it out from whatever level you're at now.
For what these hours feel like in practice, why the same total plays out so differently depending on how you schedule it, and worked examples from each category, read the main guide: how long it takes to learn a language.
Count your hours as you go
Fluency Streak keeps a running total of real study time for each of your languages, so you always know how far along the table you are.
Download Free on the App Store →On Android? Get it on Google Play.
Where to go next
- How long does it take to learn a language? The main guide: categories, consistency and worked examples.
- How long it takes to learn Spanish, level by level.
- How long it takes to reach B2, and what each CEFR level means.