fgFormula Gym
Interactive lesson · Excel & Google Sheets

The Excel ROUNDDOWN function, explained interactively.

Last updated: April 2026

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.

01 · See it work

How to use ROUNDDOWN

  1. Type =ROUNDDOWN( and supply the number — a cell reference, literal, or any formula returning a number.
  2. Add a comma and num_digits — where to round to. 0 for the nearest integer toward zero, a positive value for decimal places, a negative value for tens / hundreds / thousands.
  3. Close the parenthesis. The result always moves toward zero — 99.49 rounds to 99 at num_digits = 0, never 100.
  4. 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.

FUNCTIONROUNDDOWN
Always rounds toward zero — positives go down, negatives go toward zero (less negative). Any non-zero fraction is simply discarded. No half-rule; the direction is unconditional.
ARG 1number
The value to round. A cell reference, a literal, or any formula returning a number. Negative numbers round toward zero too — -7.85 becomes -7 at 0 digits, not -8.
ARG 2num_digits
Decimal places to round to. Positive = decimals, 0 = nearest integer, negative = tens / hundreds / thousands. Zero gives integer truncation — same as dropping everything after the decimal point.
B2
fx
=ROUNDDOWN(A2, 0)
AB
1SourceROUNDDOWN (digits=0)
23.141593
312.7512
40.1250
599.4999
6154.6154
7-7.85-7
812345.67812345
B2 is the active cell — it holds =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).
02 · Syntax, argument by argument

ROUNDDOWN syntax and arguments

Two required arguments, no optionals. See Microsoft’s official ROUNDDOWN reference for the canonical specification.

=ROUNDDOWN(number, num_digits)
number
The value to round. Cell reference (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!.
num_digits
Integer specifying where to round. 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.
03 · In the wild

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.

=ROUNDDOWN(A2, 0)

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.

=ROUNDDOWN(A2, -2)

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.

=ROUNDDOWN(A2 / 12, 0) * 12

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.

=ROUNDDOWN(A2 / B2, 0)

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.

04 · Errata

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 −∞”.

05 · Kindred functions

ROUNDDOWN vs ROUND, ROUNDUP, FLOOR & INT

Five ways to reduce precision downward. Pick by which direction “down” means to you.

FunctionRuleArgsTypical use
ROUNDDOWNAlways toward zeronumber, num_digitsPrice floors, age from days, integer quotients, tax withholding
ROUNDHalf-up (0.5 rounds away from zero)number, num_digitsFinancial reporting, display rounding
ROUNDUPAlways away from zeronumber, num_digitsCapacity planning, pagination, price ceilings
FLOOR / FLOOR.MATHTo nearest lower multiple of significance (toward −∞)number, significanceRound to lower 50, 250, 0.05 — any non-power-of-10 multiple; handles negatives differently from ROUNDDOWN
INTToward negative infinity (integer only)numberQuick 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.

06 · Marginalia

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.