40% OFF! — Limited Time Offer
← Back to Articles

July 19, 2026

·By El Alaoui Mohamed

Revit Rounding Functions: round(), roundup(), rounddown() Explained

Revit rounding functions for construction-ready dimensions

TL;DR

Revit's three rounding functions — round() to nearest, roundup() always up, rounddown() always down — work on plain numbers, not lengths. To round a dimension, strip the unit by dividing, round, then multiply the unit back: round(Length / 25mm) * 25mm rounds to the nearest 25mm. Choose roundup() for material quantities (you can't buy 3.2 sheets) and rounddown() for how many units fit in a space.

Key Takeaways

  • round(x) goes to the nearest integer, roundup(x) always up, rounddown(x) always down.
  • All three take a unitless number — feed them a raw length and you get "inconsistent units."
  • The pattern for lengths: round(Length / increment) * increment.
  • roundup() for quantities you purchase; rounddown() for how many pieces fit.
  • Round only at the end of a calculation chain — rounding intermediates compounds the error.
  • Match formula increments to real construction modules: stud spacing, brick courses, panel widths.

Division creates dimensions that don't exist on a tape measure. 2437mm / 3 is 812.333…mm — perfectly valid math, completely useless on site. The rounding functions are how a formula's output becomes something a contractor can actually build.

The Three Functions

FunctionBehaviorround of 3.2round of 3.8
round(x)Nearest integer34
roundup(x)Always up44
rounddown(x)Always down33

The Unit-Stripping Trick

All three functions accept a plain number — pass a length directly and Revit reports inconsistent units. The universal pattern divides the unit out, rounds the bare number, and multiplies the unit back in:

❌ Rounded = round(Raw_Length) ← inconsistent units ✓ Rounded = round(Raw_Length / 1mm) * 1mm ← nearest millimeter ✓ Rounded = round(Raw_Length / 25mm) * 25mm ← nearest 25mm increment ✓ Rounded = round(Raw_Length / 5mm) * 5mm ← nearest 5mm

Raw_Length / 25mm cancels the units into a pure ratio, the rounding happens on that number, and * 25mm turns it back into a buildable length. Change the increment to match whatever module your project uses.

Choosing the Right Function: Real Cases

roundup() — Material Quantities

You cannot order 3.2 sheets of plywood. Quantity formulas round up, always, or the last piece of wall goes unclad:

Sheet_Count = roundup(Wall_Length / Sheet_Width)

rounddown() — How Many Fit

The opposite problem: shelves pins, balusters, lockers — how many complete units fit in the available space. Rounding up here means the last one doesn't fit:

Locker_Count = rounddown(Available_Width / Locker_Module)

round() — Display Dimensions

When a calculated dimension feeds a schedule or a label and just needs to look sane, round to the project's precision:

Label_Height = round(Calculated_Height / 5mm) * 5mm

Brick Coursing — The Classic

Openings in masonry want to land on course heights (a 75mm module for standard UK brick + joint). Force any requested height onto the coursing grid:

Coursed_Height = round(Requested_Height / 75mm) * 75mm

Round Late, Not Early

Rounding inside a chain of calculations compounds error. Three intermediate roundings of up to 12.5mm each can drift the final result by over 35mm. Keep every intermediate value at full precision — covered in the arithmetic chapter — and round exactly once, at the end, where the value meets the real world.

❌ Step1 = round(A / 3 / 25mm) * 25mm Step2 = round(Step1 * 1.618 / 25mm) * 25mm ← error compounds ✓ Final = round((A / 3 * 1.618) / 25mm) * 25mm ← one rounding, at the end

When Rounding Meets Conditions

Rounded values often feed decisions — “if more than 4 fixings are needed, switch to the heavy bracket.” That hand-off from arithmetic to logic is where IF statements take over.

Chapter 4 of 10

Dimensions that match construction reality

All 10 formula chapters, worked examples, HD Video Vault, and the Formula Cheat Sheet. 40% off at $18.