La Virgule Décimale

If you copy a French recipe, an academic citation, or a bank statement into an English-speaking spreadsheet without converting the separators, the numbers will silently rearrange themselves into something completely different. 3,14 is not three thousand one hundred and forty. 1 500 is not fifteen hundred-something with a typo. This page covers the French convention for writing and reading decimals and large numbers, what to do when you encounter the older period-as-thousands-separator style, and the international standards that quietly govern professional and scientific writing.

The core rule: comma for decimals, space for thousands

The standardised French convention, taught in schools and used by INSEE (the national statistics agency), AFNOR (the national standards body), and most modern publications, is:

  • Decimal separator: virgule (comma)3,14 (= 3.14)
  • Thousands separator: espace (space)1 500 (= 1,500)

The two conventions are the exact mirror image of the English (American/British) convention. This isn't a quirk of typography — it is the official European norm, codified by the SI (Système International) and the BIPM, and shared by most of continental Europe (Germany, Italy, Spain) as well as French-speaking countries.

La constante pi vaut environ 3,14.

Pi is approximately 3.14.

La distance Paris-Marseille est de 775 km.

The Paris–Marseille distance is 775 km.

Cette ville compte 1 500 000 habitants.

This city has 1,500,000 inhabitants.

Mon salaire net est de 2 350,75 € par mois.

My net salary is €2,350.75 per month.

The space in 1 500 000 is technically a non-breaking thin space (in print) or an espace insécable (in word processing) — its purpose is to keep the digits from being split across two lines. In handwriting people just use an ordinary space. Whatever the medium, the principle is the same: groups of three digits are separated by a space, never by a comma.

💡
If you remember nothing else: a comma in a French number is always a decimal point. When you see 1,5 on a French wine label or a chemistry textbook, that is one and a half. When you see 1 500 on a bank statement, that is fifteen hundred. Treat any comma between digits as a decimal — no exceptions in modern usage.

Reading decimals out loud

The decimal point is read as virgule. The digits after it are usually read as a single group (as in English with three or fewer digits), or one by one if there are many.

Pi égale 3,14159 — trois virgule un quatre un cinq neuf.

Pi equals 3.14159 — three point one four one five nine.

La température corporelle normale est de 37,2 °C — trente-sept virgule deux.

Normal body temperature is 37.2°C — thirty-seven point two.

Le taux d'inflation a atteint 2,7 % — deux virgule sept pour cent.

The inflation rate hit 2.7 percent — two point seven percent.

For small decimals (one or two digits past the comma), reading the post-comma portion as a single multi-digit number is also possible and sounds natural:

Il mesure un mètre soixante-quinze, soit 1,75 m.

He is one meter seventy-five, that is 1.75 m. (read as un virgule soixante-quinze)

Le sac pèse 2,5 kg — deux virgule cinq kilos.

The bag weighs 2.5 kg — two point five kilos.

In the context of prices specifically, the virgule is dropped entirely from speech — see numbers/prices-and-money for the full story. 12,50 € is spoken as douze euros cinquante, never douze virgule cinquante euros.

The older period-as-thousands convention

You will occasionally see a period used as the thousands separator in older French texts, on some legal documents, and in conservative typography:

  • 1.500 (= 1,500) — older / less common
  • 1 500 (= 1,500) — modern standard
  • 1500 (no separator) — informal / four-digit numbers are often written unspaced

Le manuel mentionne une somme de 25.000 francs — il date de 1985.

The textbook mentions a sum of 25,000 francs — it is from 1985.

In this older style, the period is unambiguously a thousands separator because the decimal is always a comma. But on a modern French document the period almost never appears between digits at all — it has been replaced by the space, partly to align with SI norms and partly to avoid confusion with English-language documents that use the period as a decimal.

💡
If a French text from before about 1990 shows 1.500 francs, that is one thousand five hundred. If you see the same writing today, it is mildly old-fashioned but still correct. If a modern French text shows 1.5, the writer has either made a typo or imported English convention — to a native French reader, 1.5 is unusual and slightly jarring, where 1,5 is automatic.

Four-digit numbers — the special case

Numbers from 1 000 to 9 999 are commonly written without any separator at all:

Mon code postal est 75001.

My postal code is 75001. (no separator in postal codes)

L'année 2024 a été particulièrement chaude.

The year 2024 was particularly hot.

Le modèle 1500 est en rupture de stock.

The Model 1500 is out of stock.

Years, postal codes, model numbers, phone-number-like identifiers, and other ordinal uses of large numbers never take a thousands separator. The space appears only in quantity contexts — counts, amounts, distances, populations.

En 2023, la population de Lyon était de 522 250 habitants.

In 2023, the population of Lyon was 522,250 inhabitants. (year: no space; population: space)

Spreadsheets, calculators, programming

This is where the convention matters most practically. French versions of Excel, LibreOffice Calc, and Google Sheets default to the comma decimal: typing 3,14 in a French locale gives you the number 3.14; typing 3.14 would be interpreted as text (or worse, as a date3.14 might become 3 January 2014).

Dans Excel en français, tape la formule avec une virgule : =SOMME(A1:A10)/3,14.

In French Excel, type the formula with a comma: =SUM(A1:A10)/3.14.

Le séparateur de liste devient le point-virgule au lieu de la virgule.

The list separator becomes a semicolon instead of a comma. (consequence: French Excel formulas use ; not , between arguments)

Programming languages, by contrast, are almost universally English-convention: Python, JavaScript, Java, and SQL all read 3.14 as the number and 3,14 as a syntax error or two separate values. When data crosses from a French spreadsheet to a programming context, this is one of the single most common silent bugs.

Avant d'importer ce CSV dans Python, il faut remplacer les virgules par des points.

Before importing this CSV into Python, you have to replace the commas with periods.

International norms

The official SI recommendation, repeated in the BIPM brochure (the international handbook for scientific units), is:

  • The decimal sign is either the comma or the period — both are acceptable as long as the choice is consistent within a document.
  • The thousands separator is a thin space. The use of a comma or a period for thousands is discouraged in scientific writing precisely because they conflict with the two acceptable decimal signs.

In practice, French scientific journals overwhelmingly use the comma decimal; English-language journals overwhelmingly use the period. International journals like Nature or Science require the period regardless of the author's mother tongue, which is why a French scientist writing in English carefully retypes 3,14 as 3.14 at submission time.

Dans l'article anglais, j'ai dû convertir tous les 0,5 en 0.5.

In the English article, I had to convert all the 0,5s to 0.5s.

Numbers in monetary and metric contexts

The placement of the unit after the number, with a non-breaking space, follows the same logic as the price symbol covered in numbers/prices-and-money. The same rule applies to kg, m, km, °C, %, etc.:

Le bébé pèse 3,4 kg à la naissance.

The baby weighs 3.4 kg at birth.

La pièce mesure 4,5 m sur 3,2 m.

The room measures 4.5 m by 3.2 m.

L'eau bout à 100 °C au niveau de la mer.

Water boils at 100°C at sea level.

Note the space between 100 and °C — this is the SI rule (a space goes between every numerical value and its unit, except for the degree symbol with angles, where there is no space: 45°). For percentages specifically, French typographic tradition also puts a space before the % sign: 2,7 % — not 2,7%.

Reading the time

The notation 8h30 or 8 h 30 for huit heures trente uses h (no period) as a separator. The decimal comma does not appear in time notation — 8,5 heures would mean eight and a half hours of duration, not half past eight. See numbers/dates-and-time for the full story.

Le train part à 8h30.

The train leaves at 8:30.

La réunion durera 2,5 heures — environ deux heures et demie.

The meeting will last 2.5 hours — about two and a half hours.

Common Mistakes

❌ Le produit coûte 1.5 €.

Incorrect in French — the decimal sign is a comma, not a period. To a French reader, this looks foreign or like a typo.

✅ Le produit coûte 1,5 €.

The product costs €1.50.

❌ La ville compte 1,500,000 habitants.

Incorrect — comma between digits is a decimal in French. This number reads as 'one and a half million-something'. Use spaces.

✅ La ville compte 1 500 000 habitants.

The city has 1,500,000 inhabitants.

❌ Pi égale trois point quatorze.

Incorrect — the decimal in French is read as 'virgule', not 'point'.

✅ Pi égale trois virgule quatorze.

Pi equals three point fourteen.

❌ En 1 985, j'avais dix ans.

Incorrect — years (and other identifying numbers like postal codes) are written without thousands separators. The space marks quantity, not identity.

✅ En 1985, j'avais dix ans.

In 1985, I was ten years old.

❌ =SOMME(A1, A2, A3)

Incorrect formula syntax in French Excel — when the decimal is a comma, the list separator becomes a semicolon to avoid ambiguity.

✅ =SOMME(A1; A2; A3)

=SUM(A1, A2, A3) in French Excel.

Key takeaways

In French, a comma between digits is a decimal point — always. The thousands separator is a space (or, in older texts, a period). Out loud, the decimal is virgule, never point. The convention isn't aesthetic — it is institutional, codified by SI, and applied across continental Europe. When you import French data into an English-speaking system, or vice versa, the separators are the single most common source of silent corruption: 1,500 in one convention is 1.5 in the other, and a forgotten conversion can mean a quote that's a thousand times off. Internalise the rule once and the rest follows.

Now practice French

Reading grammar gets you part of the way. The exercises are where it sticks — free, no signup needed.

Start learning French

Related Topics

  • Les Nombres CardinauxA1French cardinal numbers from zero to a billion: the regular 1-69, the vigesimal 70-99, the agreement rules on cent and vingt, the noun-like behavior of million and milliard, and the hyphenation rules under both traditional and reformed spelling.
  • Les Prix et l'ArgentA1How to read, say, and ask about prices in French — euros and centimes, the comma decimal, the way native speakers actually pronounce €12,50 at the till, and the polite formulas that keep a transaction smooth.
  • Les Grands NombresB1How French builds and pronounces large numbers — the agreement rules of cent (sometimes -s, sometimes not), the stubborn invariability of mille, the noun-status of million and milliard, the absence of 'and' in compound numbers, and the long-scale billion that quietly differs from English.
  • Pourcentages et FractionsB1How French expresses percentages and fractions — pour cent with its mandatory space, the fraction nouns (demi, tiers, quart), agreement with verbs after percentage subjects, the difference between un demi and la moitié, and the gender quirks of demi(e) pre- and post-nominal.