Rounding and Probability Question

Let’s say I am kind of lazy, I don’t like to write the exact dollars and cents of my transactions in my checkbook register. Instead I round up or down to the nearest dollar, so if I bought something for $21.34 I would just write in $21 and if I bought something for $15.68 I would write $16.

Question: What is the probability that I am ever more than $2 off from the actual balance? Does it matter how many transactions I have done? More generally what are the odds I am $X off the correct amount?

I read a story once, probably in Readers’ Digest, about a woman who did just that. Her husband found out about it, and rebalanced the checkbook from the past two years, or so. Turns out, when he finished, she was off by less than $0.50.

If the purchase ammounts are completely random, one would think that all the purchases that end in $0.75 would cancel out all the $0.25 ones.

The more transactions you enter the greater the probability that you will be more than $2.00 off, but you will be off by a lower percentage of the total, if that’s more important than absolute error.

If you round like most people, and $X.01 to $X.49 goes down, and $X.50 to $X.99 goes up, there will be a small skewing of the data, because if you assume the cents value is random, 49 times out of 99 it will round down, compared to rounding up 50 times out of 99. If at .50 you round to the nearest even integer that eliminates that. For example, $1.50 rounds to $2.00, but $2.50 rounds to $2.00 as well.

Another factor to consider is the independence of the check amounts. If a large fraction of your checks are for periodic bills for the same amount, this might skew the results. As an extreme example, if all you ever wrote were your mortgage checks and htey were all for $1423.48, then after a year you’d definitely think you had $5.76 more in your account than you did. Things would only get worse with each subsequnet year.

I just ran a simulation in Excel with 5000 transactions. The total dollar amount of each set of transactions was right at $250,000. I ran it 30 times and the maximum amount the two differed after 5000 transactions was $43 with a good number under $1. The average difference looks like it is about $10 - $15 just by eyeballing it. We would have to plot the results over many trials to give a better answer but that should give you some idea.

But that’s assuming that every price has a non-zero cents value, which I don’t think is a fair assumption. If you also allow for the fact that some items can be a whole number of dollars, then this method of rounding is fair. $X.00 to $X.49 goes to $X, while $X.50 to $X.99 goes to $X+1. 50/100 each way.

Of course, the assumption that prices are truly random probably doesn’t hold in real life. Prices ending with .99 are far more common that prices ending with .01.

For the sake of simplicity, let’s assume that the amount gained or lost via rounding is a uniform distribution between -0.5 and 0.5. That is, fractional cents are possible and all cent values are equally probable.

The variance of this uniform distribution is 1/12. The variance of n draws from this uniform distribution is (n/12).

So yes, your chance of being $2 off depends critically on how many checks you have rounded.

If you wrote 100, the variance of your sum is 100/12 = 8.33, and the standard deviation = 2.89. To be $2 off you have to be >= 1.44 standard deviations from the mean.

Consulting a normal distribution table, we see that the probability of this = 1 - (0.4251*2) = 15%.

D’oh, I knew I wouldn’t get that right on the first try. I reversed the quotient. 2/2.89 = 0.69 standard deviations from the mean, probability = 1 - (.2549*2) = 49%.

If a typical person writes 10 checks per month, or 240 in two years, the probability of that happening = 8.76%.

I’m assuming here that the cents value of each purchase is uniformly distributed over the set {0, …, 99}. If not, it’s easy enough to adjust for, but I would need to know the actual distribution.

If I define the error to be the difference between the purchase price and the rounded purchase price, the expected value of the error is -.01 and the standard deviation is .29. If you have n transactions and n is fairly large–say, above 30 or so–the probability that you’re off by $2 is approximately equal to the probability that a standard normal random variable is between (-2 + .01n)/(.29sqrt(n)) and (2 + .01n)/(.29sqrt(n)). Obviously, the number of transactions does matter. For n = 5000 as in Shagnasty’s example, the probability that you’re within $2 is only about .04.

No, it’s assuming that every price that you round has a non-zero cents value. $X.00 doesn’t round down, as you’re claiming. Nor does it round up. It just plain doesn’t round, and is thus irrelevant. This might be more apparent if you assume hypothetically that the smallest unit of money were the 50-cent-piece: Then, all prices would end in .00 or .50 . None of the .00 prices would be changed at all, but all of the .50 prices would be increased.

It depends on whether you’re asked for the error per purchase or the error per rounded purchase. For the former, prices that end in 0 do matter, and they don’t for the latter.

But that’s only if you ignore sales tax, and I’m willing to bet that tax makes it at least fairly even.

Interestingly enough, the expected value of the difference is indeed either -$0.50 or $0.50! It depends on how you round the cents portion when it is 0.50. Assuming that the cents portions of the amount paid were evenly distributed between 0 and 99 cents … rounding down all amounts between 1 and 49 cents, and rounding up all amounts between 51 and 99 cents. All of these roundings will “cancel out” on average. Now, if you round 50 cents down, the expected value is -$0.50; if you round up, it’s +$0.50.

The expected value is 0.5 cents, not dollars, since the 50 cent case happens only 1/100^th of the time.

Let N be the number of checks you write.
For large N, the probability that you are within $X of the correct amount is given by


P = Q((-m-X)*sqrt(12/N)) - Q((-m+X)*sqrt(12/N))


where m=0.005*N and Q is the complementary cumulative distribution function for normal random variables.

Now, interestingly, for small values of X (say X less than 20), and values of N larger than 3000, the above is well-approximated by


P = X*sqrt(24/(pi*N))*exp(-N*15/1e5)

That is, it is a linear function of X (and thus, easy to calculate, given N)

For N = 5000, the probability that you are within $X of the correct amount is roughly equal to


P = 0.0185 * X

So, for X = 2 dollars, we have P = 0.0185*2 = 0.037 = 3.7 %

A graph.

I guess that explains why it was a story in Readers Digest!
I took vectors instead of statistics, so I don’t know how some of these numbers were obtained, but I like trying to figure it out.

Also, prices ending in .99 only really matter if you tend to purchase only one item per check. At the grocery store, you might be getting 50 plus items, so the values are going to end up all over the place.

Almost certain that you would hit the zero mark again and again, but the expected value of your error increases as time goes by. That is, if you get a whole lot of people to do this, the average of their errors will increase steadily with time.

See: “random walk”.

I suspect that a larger number of checks would end in 00 than any other number. Every charitable or political contribution, every gift to a relative, every payment for standard services (housecleaner, gardener, etc) would all be even dollars, for instance. That would skew the complete randomness of the cents. Further, since most purchases in the US end in Something-.95 or .99, depending on the sales tax, I’d say there are probably more checks written for amounts between 00 and 49 than for 50 - 99.

Not disputing the math, just wondering how random the distribution might be.