Mastering how to round in Excel
ROUND, ROUNDUP, ROUNDDOWN, MROUND, CEILING, FLOOR and TRUNC in Excel and Google Sheets, with when to use each and why cell formatting isn't rounding.
Rounding in Excel and Google Sheets
The most common assumption about rounding in spreadsheets is that it uses the same 'round half up' method taught in school. That assumption is wrong for several functions and for negative numbers. Understanding how to round in Excel and Google Sheets means learning the specific rounding rule each function applies, because the same number can produce different results depending on which function you choose. The exact syntax and behaviour of every rounding function are specified here so you can pick the right one for your data.
Rounding replaces a number with a nearby simpler number that has fewer significant digits or is a multiple of a given value. No single correct method exists. Every rounding method introduces a systematic bias or a tie-breaking rule, and newcomers most often get wrong the assumption that 'round half up' is universal. It is merely the most common convention. Many programming languages and scientific standards use 'round half to even' (bankers' rounding) to avoid cumulative bias in statistical sums.
Excel Round Function: ROUND, ROUNDUP and ROUNDDOWN
The Excel ROUND function syntax is ROUND(number, num_digits). It rounds to a specified number of decimal places using the half away from zero rule. For positive numbers this is identical to half up: 1.5 rounds to 2. For negative numbers it differs: -1.5 rounds to -2, not -1. Use a positive num_digits to round to tenths, hundredths, etc. Use a negative num_digits to round to tens, hundreds, thousands: ROUND(123, -1) equals 120, and ROUND(123, -2) equals 100. This is how to round to the nearest 10 or 100 using the standard Excel rounding function.
ROUNDUP(number, num_digits) always rounds away from zero regardless of the digit. ROUNDUP(1.001, 0) gives 2, not 1. ROUNDUP(-1.001, 0) gives -2. Use this when you need a conservative estimate that never understates the value.
ROUNDDOWN(number, num_digits) always rounds toward zero. ROUNDDOWN(1.999, 0) gives 1. ROUNDDOWN(-1.999, 0) gives -1. Use this when you need a floor that never overstates the value.
Negative Digits for Tens and Hundreds
A negative num_digits value in ROUND, ROUNDUP and ROUNDDOWN rounds to the corresponding power of ten. ROUND(123, -1) rounds to the nearest ten (120). ROUNDUP(123, -1) rounds up to 120. ROUNDDOWN(123, -1) rounds down to 120. This works for hundreds, thousands and beyond.
MROUND, CEILING and FLOOR for Multiples
MROUND(number, multiple) rounds a number to the nearest multiple of a given value. MROUND(1.125, 0.25) rounds to 1.25 because 1.125 is exactly halfway between 1.00 and 1.25, and MROUND uses half away from zero. If you need to round to the nearest 5, use MROUND(123, 5) which gives 125. This is the excel round to nearest 5 function.
CEILING.MATH(number, significance, mode) rounds up toward positive infinity. CEILING.MATH(1.1, 1) gives 2. For negative numbers it rounds toward zero unless you use the optional mode argument. CEILING.MATH(-1.1, 1) gives -1.
FLOOR.MATH(number, significance, mode) rounds down toward negative infinity. FLOOR.MATH(1.1, 1) gives 1. FLOOR.MATH(-1.1, 1) gives -2.
TRUNC and INT: How They Differ on Negatives
TRUNC(number, num_digits) truncates a number by discarding the decimal part without any rounding. TRUNC(1.9) gives 1. TRUNC(-1.9) gives -1. It is identical to rounding toward zero for positive numbers, but for negative numbers it simply removes the decimal portion. TRUNC(1.5) gives 1, while ROUNDDOWN(1.5, 0) also gives 1, they agree here, but TRUNC does not consider the discarded digits at all.
INT(number) rounds down to the nearest integer, always toward negative infinity. INT(1.9) gives 1, same as TRUNC. INT(-1.9) gives -2, which differs from TRUNC(-1.9) = -1. The distinction matters when working with negative values in financial calculations or time data.
Formatting vs Rounding: Why Totals Look Wrong
A common failure mode is formatting a cell to show two decimal places while the underlying value retains more digits. The displayed number looks rounded, but any formula that uses that cell sees the full precision. This causes totals that appear to add up incorrectly by a penny or two. The fix is to explicitly round the value using the appropriate function before using it in further calculations.
Floating-point representation in IEEE 754 binary64 cannot represent most decimal fractions exactly. The number displayed as 0.3 may be stored as 0.2999999999999999. Rounding that stored value can give a different result than rounding the displayed value. Always round the source data, not the formatted display.
Google Sheets Differences
Google Sheets ROUND uses the same half away from zero rule as Excel, with syntax ROUND(value, [places]). ROUNDUP, ROUNDDOWN, MROUND, CEILING, FLOOR, TRUNC and INT all behave identically to their Excel counterparts for both syntax and rounding rules. The only difference is the function names: Google Sheets uses CEILING and FLOOR without the .MATH suffix. Google Sheets MROUND matches Excel MROUND exactly.
When you need to round in Google Sheets, you can rely on the same tie-breaking behaviour as Excel. The Google Sheets function list documentation confirms these behaviours.
Common Questions
Does Excel round half up or half away from zero?
Excel's ROUND uses half away from zero. For positive numbers this is identical to half up (1.5 rounds to 2). For negative numbers it differs: -1.5 rounds to -2, not -1.
How do I round to the nearest 5 in Excel?
Use MROUND(number, 5). MROUND(123, 5) gives 125, and MROUND(122, 5) gives 120.
What is the difference between TRUNC and INT in Excel?
TRUNC discards the decimal part without rounding. INT rounds toward negative infinity. TRUNC(-1.9) equals -1, while INT(-1.9) equals -2.
Does Google Sheets round differently than Excel?
No. Google Sheets ROUND, ROUNDUP, ROUNDDOWN, MROUND, CEILING, FLOOR, TRUNC and INT all use the same rounding rules and syntax as their Excel counterparts.
Why does my total look wrong after formatting to two decimal places?
Formatting changes only the display, not the stored value. Use the ROUND function on the cell reference to round the actual value before using it in totals.
How do I round to the nearest hundred in Excel?
Use ROUND(number, -2). For example ROUND(123, -2) gives 100.
What is the MROUND function for?
MROUND rounds a number to the nearest multiple of a given value. Use it to round to the nearest 0.25, 5, 10, or any other multiple.