Available in:All versions (Works in Excel 2007, every later version, Microsoft 365 and Excel for the web)Examples need Excel 2021 or laterCategory:Math

ROUND

AFRONDEN in Dutch Excel

Rounds a number to a chosen number of decimal places, or to tens and hundreds when the count is negative.

Difficulty rating 2 of 5. Two arguments, but a negative num_digits and the difference between rounding a stored value and formatting its display trip people up.

Last updated: 13 October 2026

See the worked examples

Sheet excerpt: D2 holds the formula
RowABCD
1Entry no.Net amountVAT rateRecalculated VAT
225-0412€1,082.50€ 1.082,5021%21%€227.33€ 227,33=ROUND(B2 * C2, 2)=ROUND(B2 * C2; 2)
325-0413€2,340.20€ 2.340,2021%21%
425-0414€865.00€ 865,009%9%
525-0415€412.35€ 412,359%9%
625-0416€3,199.99€ 3.199,9921%21%
Formula cell (D2)Input

Result: €227.33€ 227,33

=ROUND(B2 * C2, 2)
=ROUND(B2 * C2; 2)

What ROUND does and when to use it

What it does: it replaces a number with the nearest number that has the digits you ask for, for example VAT of €12.3456 becomes €12.35.

When to use it: when the stored value must change, not only the display: amounts in whole cents on an invoice, percentages in a report, figures in thousands. For the nearest multiple of 0.05 or 250 use MROUND; when the direction matters, use ROUNDUP or ROUNDDOWN.

How Excel evaluates it

Excel evaluates number first, so any calculation inside it finishes before rounding starts. After that it works in three steps:

  • it looks at num_digits to decide which digit position is the last one to keep
  • it reads the digit right after that position: below 5 the kept digits stay as they are, 5 or above and the last kept digit goes up by one
  • it stores the result as a new number in the cell, with the digits beyond the chosen position gone

A 5 with nothing after it is exactly halfway, and Excel resolves that away from zero: 2.5 becomes 3 and -2.5 becomes -3. Some other software uses banker's rounding (2.5 becomes 2, 3.5 becomes 4); Excel's ROUND never does.

Watch out: A number format only changes what you see: the cell still holds every decimal, so a total of formatted cells adds up the hidden decimals. Only ROUND changes the stored value.

Mental model

Cutting a plank to the nearest centimeter mark: you look at the millimeter you landed on, and at exactly halfway you always cut on the longer side.

Terms used on this page: argument, cell

ROUND(number, num_digits)
ROUND(number; num_digits)
Arguments
ArgumentTypeMeaning
numberRequiredThe value to round; a number or a cell that holds one.
num_digitsRequiredDecimal places to keep: 2 for cents, 0 for whole numbers, -3 for thousands.

Return value:A number: rounded to num_digits decimal places

Formulas use commas (,) between arguments, as in English Excel. Formulas use semicolons (;) between arguments, as in Dutch Excel. Formulas use commas (,) between arguments, as in English Excel; Dutch Excel uses semicolons (;).

Worked examples

Beginner

Recalculate VAT on purchase invoices to whole cents

You test the VAT on the purchase journal (INK) of Veldhuis Installatie BV. The auditfile gives you the net amount and the VAT rate per entry. You recalculate the VAT yourself, to the cent, so you can compare it with the amount the client booked on account 1800, and you want to know which way an amount ending in exactly half a cent goes.

Sheet excerpt: D2 holds the formula
RowABCDE
1Entry no.Net amountVAT rateRecalculated VAT
225-0412€1,082.50€ 1.082,5021%21%€227.33€ 227,33=ROUND(B2 * C2, 2)=ROUND(B2 * C2; 2)
325-0413€2,340.20€ 2.340,2021%21%
425-0414€865.00€ 865,009%9%
525-0415€412.35€ 412,359%9%
625-0416€3,199.99€ 3.199,9921%21%
7
Formula cell (D2)Input

Formula in D2

=ROUND(B2 * C2, 2)
=ROUND(B2 * C2; 2)

Result: €227.33€ 227,33

Step by step
  1. Excel first finishes the calculation inside the first argument: B2 * C2 = 1082.50 × 0.21 = 227.325. num_digits is 2, so the second decimal is the last digit that stays.
  2. The digit after that position is the third decimal, a 5 with nothing behind it. The VAT sits exactly halfway between 227.32 and 227.33.
  3. ROUND resolves a tie away from zero, so the result is 227.33. Software that rounds to the nearest even digit would give 227.32, which is one cent below your recalculation. Excel does not do that.
  4. Copy the formula down:

    • row 3: 2340.20 × 0.21 = 491.442, the third decimal is 2, so 491.44
    • row 4: 865.00 × 0.09 = 77.85, nothing to round
    • row 5: 412.35 × 0.09 = 37.1115, the third decimal is 1, so 37.11
    • row 6: 3199.99 × 0.21 = 671.9979, the third decimal is 7, so 671.99 goes up to 672.00
  5. D2 now stores 227.33, not 227.325 shown with two decimals. Type =D2 * 1000 somewhere and you get 227330. Differences between D and the booked VAT are then real differences, not display noise.

Watch out: If the export stored the VAT rate as 21 instead of 21%, the formula returns 100 times too much VAT without any error. Check that C holds 0.21, shown as 21%.

More on this example: why it works

Why it works

ROUND looks only at the first digit it is about to drop. Anything from 0 to 4 leaves the kept digits alone, anything from 5 to 9 pushes the last kept digit up. Because the rule is fixed, the same invoice always gives the same recalculated VAT, which is what you need when you compare it with the booked amount.

Intermediate

Show a trial balance extract in whole thousands, credits included

You prepare an overview of the client's trial balance (saldibalans) at 31 December 2025 for the audit file, in whole thousands. Debit balances are positive and credit balances negative. You want one formula to copy down, and you want to switch between thousands and hundreds without editing it.

Sheet excerpt: D2 holds the formula
RowABCDEFG
1AccountDescriptionBalanceIn thousandsDigits
211001100Bank€128,470.00€ 128.470,00€128,000.00€ 128.000,00=ROUND(C2, $F$2)=ROUND(C2; $F$2)-3-3
313001300Receivables€61,500.00€ 61.500,00
418001800VAT payable-€2,500.00€ -2.500,00
540004000Payroll costs€15,499.00€ 15.499,00
680008000Revenue-€249,999.00€ -249.999,00
7
Formula cell (D2)Input

Formula in D2

=ROUND(C2, $F$2)
=ROUND(C2; $F$2)

Result: €128,000.00€ 128.000,00

Step by step
  1. Excel reads C2 (128470) and $F$2 (-3). A negative count means the rounding happens left of the decimal point: -3 is three places, so thousands.
  2. Think of it as 128470 / 1000 = 128.47, rounded to a whole number. The digit after the units is 4, so 128 stays 128, and multiplying back gives 128000.
  3. Copy down to D3. C3 is 61500, which is 61.5 thousand: exactly halfway. Away from zero means 62, so 62000.
  4. D4 rounds the credit balance -2500 on account 1800: -2.5 thousand, again halfway. Away from zero for a negative number is further down, so -3000, not -2000.
  5. D5 rounds 15499 to 15000, because 15.499 has a 4 after the units, and D6 rounds -249999 to -250000. The rounded column adds up to 128000 + 62000 - 3000 + 15000 - 250000 = -48000, while the raw column adds up to -47030.
  6. Without the $ signs, D3 would read F3 instead of F2, find an empty cell, treat it as 0 and return 61500 unrounded. Now change F2 to -2 and every cell rounds to hundreds: D2 becomes 128500.

Watch out: Rounded balances rarely add up to the rounded total. -48000 here, but ROUND of the raw total -47030 gives -47000. A reader who foots your overview finds a difference of 1000; say in a note that the figures are rounded individually.

More on this example: why it works, 1 more pitfall, 1 variation

Why it works

num_digits is a position, not a decimal count, so a negative value is a normal instruction: count that many places to the left and round there. The tie rule is the same in both directions from zero, which is why the credit balance of -2500 rounds to -3000 while its positive twin would round to 3000. The absolute reference keeps every copy of the formula pointed at the one cell that holds the setting.

More to watch out for

  • If F2 is accidentally cleared, ROUND treats the blank as 0 and rounds to whole euros, which looks fine at a glance. Give F2 a fill color so an empty cell stands out.

Variations

=ROUND(C2 / 1000, 0)
=ROUND(C2 / 1000; 0)

Show the balance as a count of thousands (128) instead of a rounded amount (128000), for a column headed 'x 1000'.

Advanced

Recalculate depreciation per asset and total the rounded lines

You recalculate the 2025 straight-line depreciation in the client's fixed asset register (activastaat). Each asset shows cost, annual rate and the months in use.

The client books every line in whole cents, and the total in the register is the sum of those lines. If your recalculated total is built from unrounded lines, it can differ from the register by a cent and you chase a difference that does not exist. You need a total built from the rounded lines.

Sheet excerpt: F2 holds the formula
RowABCDEFG
1AssetCostAnnual rateMonths in useDepreciation 2025
2Van€28,450.00€ 28.450,0020%20%77€12,367.91€ 12.367,91=SUMPRODUCT(ROUND(B2:B6 * C2:C6 * D2:D6 / 12, 2))=SUMPRODUCT(ROUND(B2:B6 * C2:C6 * D2:D6 / 12; 2))
3Welding robot€64,900.00€ 64.900,0010%10%1212
4Laptops€14,395.00€ 14.395,0020%20%55
5Office furniture€7,420.00€ 7.420,0020%20%55
6Pallet racking€8,890.00€ 8.890,0020%20%55
7
Formula cell (F2)Input

Formula in F2

=SUMPRODUCT(ROUND(B2:B6 * C2:C6 * D2:D6 / 12, 2))
=SUMPRODUCT(ROUND(B2:B6 * C2:C6 * D2:D6 / 12; 2))

Result: €12,367.91€ 12.367,91

Step by step
  1. Excel evaluates the inner expression on whole ranges. B2:B6 * C2:C6 * D2:D6 / 12 gives five annual-rate amounts for the months in use:

    • 28450 × 0.2 × 7 / 12 = 3319.1667
    • 64900 × 0.1 × 12 / 12 = 6490
    • 14395 × 0.2 × 5 / 12 = 1199.5833
    • 7420 × 0.2 × 5 / 12 = 618.3333
    • 8890 × 0.2 × 5 / 12 = 740.8333
  2. ROUND with num_digits 2 rounds every element of that array to cents: 3319.17, 6490.00, 1199.58, 618.33 and 740.83. These are the amounts the client books per asset.
  3. SUMPRODUCT receives the rounded array and adds it up: 3319.17 + 6490.00 + 1199.58 + 618.33 + 740.83 = 12367.91.
  4. Compare with rounding once at the end: the unrounded lines add up to 12367.9167, and ROUND(12367.9167, 2) = 12367.92. One cent apart. Neither is wrong; they are two different rules, and your recalculation has to follow the one the client books.
  5. Change the months of the welding robot to 6 and its line becomes 3245.00, so the total becomes 12367.91 - 6490.00 + 3245.00 = 9122.91.

Watch out: If the months column holds text from the export, such as 'n/a' for an asset that was sold, the multiplication returns #VALUE! for that element and the whole total becomes #VALUE!. Check with ISNUMBER or clean the column.

More on this example: why it works, 1 more pitfall, 2 variations

Why it works

ROUND accepts an array and rounds each element separately, and SUMPRODUCT adds arrays without needing the old Ctrl+Shift+Enter, so the rounding happens per asset inside one cell.

Formatting a depreciation column to two decimals would show the same five amounts but store the unrounded ones, and a SUM over them would give 12367.9167, shown as 12367.92. Rounding the value, not the display, is what makes your total agree with the lines the client booked.

More to watch out for

  • If the client books the total once, from unrounded lines, your rounded-line total is the one that differs by a cent. Ask which rule the register uses before you report the difference.

Variations

=ROUND(SUMPRODUCT(B2:B6, C2:C6, D2:D6) / 12, 2)
=ROUND(SUMPRODUCT(B2:B6; C2:C6; D2:D6) / 12; 2)

Round once, at the end: 12367.92. Choose this when the client books depreciation on the total rather than per asset.

=SUM(ROUND(B2:B6 * C2:C6 * D2:D6 / 12, 2))
=SUM(ROUND(B2:B6 * C2:C6 * D2:D6 / 12; 2))

The same result with SUM in Excel 2021 or Microsoft 365, where every function handles arrays; in Excel 2019 and earlier this needs Ctrl+Shift+Enter, which is why SUMPRODUCT is the safer habit.

MasterExcel 2021 or later (This example needs Excel 2021 or later)

Allocate an intercompany fee so the rounded parts add up exactly

The holding charges a management fee invoice of 8,435.198.435,19 to five group companies by a fixed key. You recalculate the intercompany charges to reconcile the balances.

Each share must be in whole cents, and the five shares must add up to 8,435.198.435,19 to the cent, otherwise the intercompany balances do not agree with the invoice. Rounding each share on its own overshoots by a cent here; the last line has to absorb the difference, and the formula must make that visible instead of hiding it.

Sheet excerpt: C2 holds the formula
RowABCDEF
1Group companyShareAllocatedFee invoice8435.198435,19
2Veldhuis Bouw BV30%30%€2,530.56€ 2.530,56=LET( total, E1, shares, B2:B6, rounded, ROUND(total * shares, 2), gap, ROUND(total - SUM(rounded), 2), last, SEQUENCE(COUNT(shares)) = COUNT(shares), rounded + IF(last, gap, 0) )=LET( total; E1; shares; B2:B6; rounded; ROUND(total * shares; 2); gap; ROUND(total - SUM(rounded); 2); last; SEQUENCE(COUNT(shares)) = COUNT(shares); rounded + IF(last; gap; 0) )
3Veldhuis Techniek BV25%25%€2,108.80€ 2.108,80
4Veldhuis Service BV20%20%€1,687.04€ 1.687,04
5Veldhuis Vastgoed BV15%15%€1,265.28€ 1.265,28
6Veldhuis Export BV10%10%€843.51€ 843,51
7
Formula cell (C2)InputSpilled result

Formula in C2

=LET(
  total, E1,
  shares, B2:B6,
  rounded, ROUND(total * shares, 2),
  gap, ROUND(total - SUM(rounded), 2),
  last, SEQUENCE(COUNT(shares)) = COUNT(shares),
  rounded + IF(last, gap, 0)
)
=LET(
  total; E1;
  shares; B2:B6;
  rounded; ROUND(total * shares; 2);
  gap; ROUND(total - SUM(rounded); 2);
  last; SEQUENCE(COUNT(shares)) = COUNT(shares);
  rounded + IF(last; gap; 0)
)

Result: €2,530.56 / €2,108.80 / €1,687.04 / €1,265.28 / €843.51€ 2.530,56 / € 2.108,80 / € 1.687,04 / € 1.265,28 / € 843,51

Step by step
  1. LET names the inputs: total is 8435.19 from E1 and shares is the column B2:B6, the fractions 0.30, 0.25, 0.20, 0.15 and 0.10.
  2. rounded multiplies the total by each share and rounds to cents:

    • 2530.557 becomes 2530.56
    • 2108.7975 becomes 2108.80
    • 1687.038 becomes 1687.04
    • 1265.2785 becomes 1265.28
    • 843.519 becomes 843.52
  3. SUM(rounded) is 2530.56 + 2108.80 + 1687.04 + 1265.28 + 843.52 = 8435.20, one cent more than the invoice. gap is ROUND(8435.19 - 8435.20, 2) = -0.01. The outer ROUND is there because a subtraction of two decimals can carry binary noise such as -0.010000000000218.
  4. last builds a column of TRUE and FALSE: SEQUENCE(COUNT(shares)) is 1 to 5, and only the fifth position equals COUNT(shares), which is 5. So last is FALSE, FALSE, FALSE, FALSE, TRUE.
  5. The final expression adds gap only where last is TRUE: the first four shares are unchanged and the fifth becomes 843.52 - 0.01 = 843.51. The five values spill from C2 to C6 and add up to 8435.19 exactly.
  6. Change E1 to 8000.00 and the shares become 2400.00, 2000.00, 1600.00, 1200.00 and 800.00; the gap is 0 and the last line is untouched. The correction only appears when the rounding needs it.

Watch out: The mirror-image mistake is ROUNDDOWN or ROUNDUP per share to force the direction. Every share then leans the same way, the gap grows with the number of lines, and the last line carries a correction of several cents that looks like an error.

More on this example: why it works, 2 more pitfalls, 1 variation

Why it works

Rounding is done once, per share, on the stored values, so the sum of what you see is the sum of what is stored. The difference is then measured, rounded to cents itself, and placed on one deliberate line instead of being spread invisibly by a number format.

Do not use this construction when nobody reconciles the parts to the total, for instance an internal estimate: a plain ROUND(total * share, 2) per row is clearer. The alternative is to put the difference on the largest share rather than the last one, which hides it better in the figures but makes the audit trail harder to explain.

More to watch out for

  • If the shares do not add up to 100%, gap silently absorbs the shortfall too: shares of 0.30, 0.25, 0.20, 0.15 and 0.05 put 421.75 extra on the last line. Check SUM(B2:B6) = 1 in a cell next to the table.
  • The workbook option 'Set precision as displayed' does the opposite of this formula: it permanently rounds every stored value to its format. Never turn it on in a client file to fix a rounding difference.

Variations

=ROUND($E$1 * B2, 2)
=ROUND($E$1 * B2; 2)

The plain per-row version, copied down with E1 locked as $E$1; use it when the parts are not reconciled to the total.

Common mistakes

Common mistakes
SymptomCauseFix
Total one cent off the linesThe line amounts show two decimals and the total shows two decimals, but the total is one cent off from what the lines add up to on paper.Wrap each line amount in ROUND(..., 2) before summing, or round the total and state that rule on the invoice.
1234 stays 1234ROUND(1234, 2) returns 1234 unchanged when you wanted 1200.Rounding to hundreds needs a negative count: ROUND(1234, -2). Positive counts only touch digits after the decimal point.
A whole number instead of 0.05 stepsYou expected the nearest 0.05 and used ROUND(price, 0.05); the result is a whole number.num_digits counts digits, it is not a step size; 0.05 is truncated to 0. Use MROUND(price, 0.05), or ROUND(price / 0.05, 0) * 0.05.
12.34% becomes 12%ROUND(B2, 2) on a cell that displays 12.34% returns 0.12, which displays as 12%.A percentage is stored as a fraction: 12.34% is 0.1234. To keep two decimals of the percentage you need four decimals of the stored value, ROUND(B2, 4).

Used in combinations

  • Journal entries where debit does not equal creditList the entries whose debit and credit totals differ: take the unique entry numbers, total debit and credit per entry with SUMIFS, and keep the unequal ones with FILTER over HSTACK, all named in one LET.Excel 2024 or later (This combination needs Excel 2024 or later)
  • Round-sum journal entries with FILTER, MOD, ROUND and ABSFlag ledger lines whose amount is an exact multiple of 1,000 (and above a minimum): ABS removes the sign, ROUND clears floating-point noise, MOD tests the multiple and FILTER lists the lines.Excel 2021 or later (This combination needs Excel 2021 or later)