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

CategoryFSI weeksFSI class hoursSelf-study hours to B2Languages
I24–30552–690828–1,03511
II368281,2425
III441,0121,51849
IV882,2003,3005

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

LanguageFSI categoryFSI class hoursSelf-study hours to B2
DanishI552828
DutchI552828
FrenchI6901,035
ItalianI552828
NorwegianI552828
PortugueseI552828
RomanianI552828
SpanishI6901,035
SwedishI552828
Afrikaans (estimate)I552828
Catalan (estimate)I552828
GermanII8281,242
Haitian CreoleII8281,242
IndonesianII8281,242
MalayII8281,242
SwahiliII8281,242
AlbanianIII1,0121,518
AmharicIII1,0121,518
ArmenianIII1,0121,518
AzerbaijaniIII1,0121,518
BengaliIII1,0121,518
BosnianIII1,0121,518
BulgarianIII1,0121,518
BurmeseIII1,0121,518
CroatianIII1,0121,518
CzechIII1,0121,518
DariIII1,0121,518
EstonianIII1,0121,518
FinnishIII1,0121,518
GeorgianIII1,0121,518
GreekIII1,0121,518
HebrewIII1,0121,518
HindiIII1,0121,518
HungarianIII1,0121,518
KazakhIII1,0121,518
KhmerIII1,0121,518
KurdishIII1,0121,518
KyrgyzIII1,0121,518
LaoIII1,0121,518
LatvianIII1,0121,518
LithuanianIII1,0121,518
MacedonianIII1,0121,518
MongolianIII1,0121,518
NepaliIII1,0121,518
Persian (Farsi)III1,0121,518
PolishIII1,0121,518
RussianIII1,0121,518
SerbianIII1,0121,518
SlovakIII1,0121,518
SlovenianIII1,0121,518
TajikIII1,0121,518
ThaiIII1,0121,518
TurkishIII1,0121,518
TurkmenIII1,0121,518
UkrainianIII1,0121,518
UrduIII1,0121,518
UzbekIII1,0121,518
VietnameseIII1,0121,518
Icelandic (estimate)III1,0121,518
Pashto (estimate)III1,0121,518
Sinhala (estimate)III1,0121,518
Somali (estimate)III1,0121,518
Tagalog (estimate)III1,0121,518
Tamil (estimate)III1,0121,518
Telugu (estimate)III1,0121,518
ArabicIV2,2003,300
CantoneseIV2,2003,300
JapaneseIV2,2003,300
KoreanIV2,2003,300
Mandarin ChineseIV2,2003,300
Self-study hours to B2 = FSI class hours × 1.5, rounded.

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.

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.