When writing large numbers, should a comma be inserted?

Solution 1:

In the English-speaking world, it is common to use commas every three decimal places in numbers of four or more digits, counting right to left.

When you do use a comma for a thousands-separator, do please make sure to write the digits flush against the comma — that is, without a space to either side of the comma: 10,000, unlike in your own example.

The only common exception to this common practice of using commas for a thousands separator is in 4-digit years, like “in 1776 ᴀᴅ” or “around 1500 ʙᴄ”. But if you are using more digits, even years take them, as in “around 15,000 ʙᴘ” (before present). The lack of a comma in a 4-digit figure is one way of indicating that it is meant to be read out in hundreds not thousands; for example, “around fifteen hundred”.

This makes them easier to read, and is even more important in a font like Georgia with proportional-width digits (the font you are presumably currently reading this posting in):

  • The constant c is 299792458 => 299,792,458 (meters/second)
  • The constant c is 670616626.969746072 => 670,616,626.969746072 (miles/hour)
  • The constant c is 1802617493294.67744153600 => 1,802,617,493,294.677441536 (furlongs/fortnight)

You don’t ever see commas to the right of the decimal point, but you might see thin spaces, this time going left to right instead:

  • The constant c is 299792458 => 299,792,458 (meters/second)
  • The constant c is 670616626.969746072 => 670,616,626.969 746 072 (miles/hour)
  • The constant c is 1802617493294.67744153600 => 1,802,617,493,294.677 441 536 (furlongs/fortnight)

And indeed some people, including Bringhurst himself (albeit this depends on whether you’re using titling figures or not), recommend the use of thin spaces instead of commas:

  • The constant c is 299792458 => 299 792 458 (meters/second)
  • The constant c is 670616626.969746072 => 670 616 626.969 746 072 (miles/hour)
  • The constant c is 1802617493294.677441536 => 1 802 617 493 294.677 441 536 (furlongs/fortnight)

In computer programming, you really cannot get by with either a comma or a thin space. Coding typically uses an underscore to represent a space (like between words in identifiers), and some languages such as Perl and Java indeed permit the underscore in numbers:

  • The constant c is 299792458 => 299_792_458 (meters/second)
  • The constant c is 670616626.969746072 => 670_616_626.969_746_072 (miles/hour)
  • The constant c is 1802617493294.677441536 => 1_802_617_493_294.677_441_536 (furlongs/fortnight)

See how much easier those are to read?

Of course, you can also use scientific notation, such as Avogadro’s famous number of 6.02 (well, 6.022 141 29) × 10²³ in “scientific” notation, or 6.02e23 in programmer notation.

That would lead to a figure of 1.802 617 × 10¹² or 1.802617e+12 for the last figure, which helps in some regards and hurts in others. Heck, unless high precision is needed, just say ~1.8 trillion and be done with it.

See also this question.

Solution 2:

For year numbers, commas should never be inserted, except possibly for years in the extremely distant future or past. This can be a useful tool for removing ambiguity: "2016 coins" versus "2,016 coins".