The Excel ROUNDDOWN function, explained interactively.
ROUNDDOWN always rounds a number toward zero — positives move down, negatives move toward zero (less negative). No half-rule, no “ties” logic: any non-zero fraction is simply discarded. The right tool for floor-style calculations like price floors, conservative estimates, integer quotients, and age calculations where you never want to overstate.
How to use ROUNDDOWN
- Type
=ROUNDDOWN(and supply the number — a cell reference, literal, or any formula returning a number. - Add a comma and num_digits — where to round to.
0for the nearest integer toward zero, a positive value for decimal places, a negative value for tens / hundreds / thousands. - Close the parenthesis. The result always moves toward zero —
99.49rounds to99atnum_digits = 0, never100. - For standard half-up rounding, reach for ROUND. For always-away-from-zero, use ROUNDUP. For rounding to a specific multiple (like “next lower 50”), use FLOOR.
Flip the num_digits picker in the demo — 0 rounds to the nearest integer toward zero (watch row 6: -7.85 → -7, not -8). -2 snaps down to the nearest hundred toward zero. The dataset is identical to the ROUNDUP demo so the differences are visible row by row.
-7.85 becomes -7 at 0 digits, not -8.0 = nearest integer, negative = tens / hundreds / thousands. Zero gives integer truncation — same as dropping everything after the decimal point.| A | B | |
|---|---|---|
| 1 | Source | ROUNDDOWN (digits=0) |
| 2 | 3.14159 | 3 |
| 3 | 12.75 | 12 |
| 4 | 0.125 | 0 |
| 5 | 99.49 | 99 |
| 6 | 154.6 | 154 |
| 7 | -7.85 | -7 |
| 8 | 12345.678 | 12345 |
=ROUNDDOWN(A2, 0). num_digits = 0: rounds toward zero to the nearest integer. 99.49 → 99 (the fractional part is discarded). -7.85 → -7 (also toward zero — less negative, not more).ROUNDDOWN syntax and arguments
Two required arguments, no optionals. See Microsoft’s official ROUNDDOWN reference for the canonical specification.
A2), literal (7.99), or any formula returning a number. Text that can coerce to a number works ("3.14" → 3.14); anything else returns #VALUE!.2 = two decimal places (truncate to cents); 0 = nearest integer toward zero; -2 = nearest hundred toward zero. Decimals in num_digits are truncated toward zero.ROUNDDOWN examples
Four patterns that cover most real-world ROUNDDOWN use.
Example 1: ROUNDDOWN — round prices to the nearest whole dollar
The canonical floor case. You have a decimal price and want the whole-dollar amount — the cents are discarded, never rounded up. Useful for promotional pricing, VAT floors, or any context where overstating is unacceptable.
With A2 = 7.99: returns 7. With A2 = 12.49: returns 12. Even 12.99 returns 12 — no rounding up occurs regardless of how large the fractional part is.
Example 2: ROUNDDOWN with negative num_digits
Snap a value down to the nearest multiple of 10, 100, or 1,000 toward zero. Essential for banding data, grouping values into decade or century buckets, and producing conservative totals for reports.
With A2 = 1789: returns 1700(nearest hundred toward zero). With A2 = 1799: also 1700 — the entire range 1700–1799 maps to the same band. For nearest exact multiple other than powers of 10 (like 50 or 250), use FLOOR instead.
Example 3: ROUNDDOWN — floor to nearest dozen
Inventory and packaging often come in fixed units. To find how many complete dozens fit in a quantity, divide by 12 and ROUNDDOWN to 0, then multiply back.
With A2 = 74 units: 74 / 12 = 6.16, ROUNDDOWN gives 6, multiply back gives 72 — that’s 6 complete dozens. The leftover 2 units can be found with =MOD(A2, 12). Same pattern for cases of 6, 24, or any pack size.
Example 4: ROUNDDOWN for integer division
When dividing a total into equal shares, you often need the integer quotient — how many whole shares each person gets, with the remainder handled separately. ROUNDDOWN(A2 / B2, 0) is the cleanest way to express this.
With A2 = 100 and B2 = 3: returns 33. The remainder (100 - 33 * 3 = 1) can be retrieved with=MOD(A2, B2). This is equivalent to the QUOTIENT function in Excel, but ROUNDDOWN generalises to any number of decimal places.
Common ROUNDDOWN errors and fixes
Four failure modes, each with what to check and how to recover.
ROUNDDOWN returns #VALUE!
Cause: the input is text that won’t coerce to a number — currency symbols, thousand separators, percentages stored as text, or values imported from other systems.
Strip the non-numeric characters or use VALUE() where possible: =ROUNDDOWN(VALUE(SUBSTITUTE(A2, "$", "")), 0). Or fix upstream by applying Number format instead of Text before entering the data.
ROUNDDOWN gives unexpected results near zero with negative num_digits
Cause: ROUNDDOWN(50, -2) returns 0, not 100. Toward-zero means toward zero — 50 is already below 100, so the nearest hundred toward zero is 0.
If you want the nearest lower multiple of 100 that is still ≥ 0 for any positive input, check whether the value is already an exact multiple: =IF(MOD(A2,100)=0, A2, ROUNDDOWN(A2,-2)). For general floor-to-multiple use FLOORinstead.
ROUNDDOWN vs ROUND — seems identical but differs on anything above the truncation point
Cause: for values exactly at 0.5 or above, ROUND rounds away from zero but ROUNDDOWN always truncates. ROUND(2.6, 0) = 3, but ROUNDDOWN(2.6, 0) = 2. They only agree below the half-way point.
Use ROUND when you want the statistically fair result (half-up rule). Use ROUNDDOWN when you explicitly need a floor — “never overstate, always discard the remainder.”
ROUNDDOWN on negative numbers — always rounds toward zero, not toward −∞
Cause: users expect “rounding down” to mean moving toward −∞, so ROUNDDOWN(-2.6, 0) should give -3. It actually gives -2 — toward zero, not toward negative infinity. ROUNDUP(-2.6, 0) gives -3 (away from zero, more negative).
To floor a negative to the more-negative integer, use FLOOR.MATH(A2, 1) or INT(A2). Both of these consistently move toward −∞ regardless of sign. ROUNDDOWN is correct for tax withholding and similar contexts where the rule is “toward zero”, not “toward −∞”.
ROUNDDOWN vs ROUND, ROUNDUP, FLOOR & INT
Five ways to reduce precision downward. Pick by which direction “down” means to you.
| Function | Rule | Args | Typical use |
|---|---|---|---|
| ROUNDDOWN | Always toward zero | number, num_digits | Price floors, age from days, integer quotients, tax withholding |
| ROUND | Half-up (0.5 rounds away from zero) | number, num_digits | Financial reporting, display rounding |
| ROUNDUP | Always away from zero | number, num_digits | Capacity planning, pagination, price ceilings |
| FLOOR / FLOOR.MATH | To nearest lower multiple of significance (toward −∞) | number, significance | Round to lower 50, 250, 0.05 — any non-power-of-10 multiple; handles negatives differently from ROUNDDOWN |
| INT | Toward negative infinity (integer only) | number | Quick floor for positives; misbehaves on negatives vs ROUNDDOWN |
Rule of thumb: ROUNDDOWN when you need “toward zero at a given number of digits” — prices, quotients, conservative estimates; ROUND for normal half-up display rounding; ROUNDUP when the result must never be below the true value; FLOOR when the increment isn’t a power of 10; INT only for non-negative values where you need a quick integer truncation.
ROUNDDOWN frequently asked questions
6.01ROUNDDOWN vs ROUND: what’s the difference?▸
ROUND uses the half-up rule — 0.5 and above round away from zero, below 0.5 round toward zero. ROUNDDOWN ignores the half-rule entirely: any non-zero fraction is always dropped toward zero. ROUND(2.6, 0) returns 3; ROUNDDOWN(2.6, 0) returns 2. Use ROUNDDOWN when you want floor behaviour — conservative estimates, price floors, “always discard the remainder”.
6.02How does ROUNDDOWN handle negative numbers?▸
Toward zero — so negatives become less negative. ROUNDDOWN(-7.85, 0) returns -7, not -8. This surprises users who expect “down” to mean toward −∞. ROUNDDOWN’s rule is strictly toward zero regardless of sign. If you want mathematical floor (always toward negative infinity, so -7.85 → -8), use FLOOR.MATH or INT instead.
6.03Can ROUNDDOWN take negative num_digits?▸
Yes — negative num_digits rounds toward zero to the nearest tens / hundreds / thousands. ROUNDDOWN(1789, -2) returns 1700 (nearest hundred toward zero). Useful for banding data: 1789 belongs in the 1700–1799 band. Remember: for positive inputs this means the result is always ≤ the input.
6.04Is ROUNDDOWN the same as INT?▸
For positive numbers with num_digits = 0 they give the same result: ROUNDDOWN(7.99, 0) = INT(7.99) = 7. They differ on negatives: ROUNDDOWN(-7.85, 0) = -7 (toward zero), but INT(-7.85) = -8 (toward negative infinity). They also differ in capability — ROUNDDOWN supports any num_digits for non-integer precision; INT always produces an integer.
6.05What’s the difference between ROUNDDOWN and FLOOR?▸
ROUNDDOWN rounds to a number of digits (always toward zero). FLOOR rounds down to a multiple of a specified significance (toward negative infinity by default). FLOOR(1789, 50) returns 1750 — the next lower multiple of 50. ROUNDDOWN can’t express “next lower multiple of 50”; only powers of 10. For negatives they also differ: ROUNDDOWN(-7.85, 0) = -7, FLOOR(-7.85, 1) = -8.
Microsoft Excel is a registered trademark of Microsoft Corporation. Google Sheets is a trademark of Google LLC. Formula Gym is not affiliated with, endorsed by, or sponsored by either company.