Almost everyone's gut reaction is that 0.999…, with nines going on forever, must be just a tiny bit less than 1. It feels like it's always falling a hair short. But it isn't short at all — it is exactly 1, the same number wearing a different costume. Here's the quickest way to believe it. You already accept that one third is 0.333…, with threes repeating forever. Multiply both sides by three. Three times one third is 1. Three times 0.333… is 0.999…. So 0.999… and 1 have to be the same thing. The slider shows what's really going on: each nine you add shrinks the gap to 1 by a factor of ten — to a tenth, a hundredth, a thousandth. There's no last nine, so there's no smallest leftover gap. The distance to 1 doesn't stop at some tiny value; it heads all the way to nothing.
Most people think 0.999… is a number forever creeping up on 1 but always falling a hair short. In fact it is the limit of its partial sums, that limit is exactly 1, and no number lies between them.
What's actually happening
Few facts in mathematics provoke as much stubborn disbelief as this one: 0.999…, with the nines repeating forever, equals 1 exactly. Not approximately, not in the limit as a figure of speech, but precisely and literally the same number. People argue about it in pubs and online for hours. The resistance comes from a very natural picture in our heads: we imagine 0.999… as a process, a number that keeps adding nines and forever creeps toward 1 without quite arriving. If it's always still climbing, surely it never gets there. The trouble is that this picture quietly misunderstands what an infinite decimal actually means.
Start with the proof that convinces most people on the spot, because it uses something they already accept. We are all happy to write one third as 0.333…, threes marching on forever. Now simply multiply both sides of that by three. On the left, three lots of one third is plainly 1. On the right, three lots of 0.333… is 0.999…. The two sides were equal before we multiplied, so they're equal after: 0.999… = 1. There's a second, equally clean argument. Call the number x = 0.999…. Multiply by ten to get 10x = 9.999…. Subtract the first equation from the second and the endless tail of nines cancels exactly, leaving 9x = 9, so x = 1. No sleight of hand, no rounding.
The deepest way to see it, though, is to be honest about what an infinite decimal is. It is not a number with infinitely many digits already laid down; it is the limit that its finite pieces approach. The pieces here are 0.9, 0.99, 0.999, and so on, each equal to 1 minus a tenth, a hundredth, a thousandth. That leftover gap, 10 to the minus n, shrinks by a factor of ten with every nine you add and races toward zero. Crucially, there is no final nine, so there is no smallest possible gap — any gap you propose is beaten by adding one more nine. In the real numbers, if two values have nothing strictly between them, they are the same value, and nothing fits between 0.999… and 1. The usual protest, that some infinitely small sliver must remain, fails for a simple reason: the ordinary number line contains no nonzero infinitesimals to be that sliver. The gap doesn't get tiny. It is gone. The simulator lets you watch it vanish, nine by nine.
0.999… equals 1 because the gap between them shrinks to zero, leaving no number in between — they are one point with two names.
- 1Try to write down a number that sits strictly between 0.999… and 1. Whatever you propose, 0.999… already has more nines than your number can beat.
- 2Now do the subtraction by hand: write 1.000… above 0.999… and subtract. The differences in every column race to zero, with no smallest nonzero remainder anywhere.
- 3Conclude that since nothing fits between them and their difference is zero, the two are the same number. The slider's shrinking gap is the same idea made visible.
Common questions
No. 'Infinitely close' would mean a nonzero infinitesimal gap remains, but the ordinary real number line contains no nonzero infinitesimals. The gap 10⁻ⁿ genuinely reaches zero, so the two values are equal, not merely close.
Everyone accepts that 1/3 = 0.333…. Multiply both sides by three: the left side is 1 and the right side is 0.999…, so 0.999… = 1. Alternatively, let x = 0.999…, then 10x = 9.999…, and subtracting gives 9x = 9, so x = 1.
Yes. Any decimal that ends can also be written with a trailing string of nines — for example 1 = 0.999…, 0.5 = 0.4999…, and 2.7 = 2.6999…. This double representation is a normal feature of the decimal system, not a flaw.