Maths and conditional totals

Excel EVEN and ODD Functions: Round to the Next Even or Odd Number

Round a number up to the next even or odd whole number.

EVEN and ODD are rounding functions, not tests, and that surprises almost everybody who meets them. =EVEN(47) does not tell you whether 47 is even — it returns 48, the next even number. =ODD(48) returns 49.

Both round *away from zero*, so a negative number goes further negative: EVEN(-3) is -4, not -2. That makes them consistent with ROUNDUP rather than with ROUND, and it means they never return a smaller magnitude than they were given.

The functions that actually test are ISEVEN and ISODD, which return TRUE or FALSE. If you want to know whether something is even, those are what you want; EVEN and ODD are for packing and pairing problems where a quantity has to come out to a round pair.

Syntax

=EVEN(number)   =ODD(number)

Arguments

number
Required
The value to round. Already-even numbers pass through EVEN unchanged, and already-odd ones pass through ODD unchanged.

The example data

Headers in row 1, data in A2:D5.

ABCD
1ItemOn handPer boxAdjustment
2Cordless drill4712-8
3Extension lead1402415
4Safety goggles63180
5Work gloves21030-22

Worked examples

=EVEN(B2)

Result: 48

47 rounded up to the next even number. It is not a test — the answer is a number.

=ODD(B2)

Result: 47

47 is already odd, so ODD returns it unchanged.

=EVEN(D2)

Result: -8

-8 is already even. Had it been -7, EVEN would return -8: away from zero, not toward it.

=ISEVEN(B3)

Result: TRUE

The function people usually meant to reach for. 140 is even, so this returns TRUE.

Now practise it

Reading about a formula is not the same as writing one. Open this function's exercise and type it into a real grid — you get instant feedback on exactly which cell is wrong and why.

Open the exercise: EVEN and ODD Functions

Common errors and how to fix them

Returns a number when you wanted TRUE or FALSE

Why it happens: EVEN and ODD round; they do not test.

How to fix it: Use ISEVEN and ISODD for a TRUE/FALSE answer, or =MOD(A2, 2) = 0.

#VALUE!

Why it happens: The argument is text.

How to fix it: Convert it to a number first.

Negative numbers round the wrong way

Why it happens: Both round away from zero, so -3 becomes -4 rather than -2.

How to fix it: That is the documented behaviour. Apply the function to ABS and restore the sign with SIGN if you need the other direction.

Tips worth knowing

  • ISEVEN and ISODD are the tests; EVEN and ODD are the rounders. The naming is unhelpful and this is the whole confusion.
  • EVEN is useful for pairing: items that must be ordered in twos round up to the next even quantity.
  • =MOD(A2, 2) = 0 does the same job as ISEVEN and works in every version of Excel.
  • Both ignore any existing decimals — EVEN(3.2) is 4, because it rounds to a whole number as well as to an even one.

Frequently asked questions

How do I check whether a number is even?

Use ISEVEN, not EVEN. =ISEVEN(A2) returns TRUE or FALSE; =EVEN(A2) returns the next even number, which is a completely different thing. =MOD(A2, 2) = 0 also works and is the older idiom.

Why does EVEN(-3) return -4?

Both functions round away from zero, so a negative number moves further from zero rather than closer to it. This makes them consistent with ROUNDUP, which behaves the same way.

What happens if the number is already even?

EVEN returns it unchanged. The same is true of ODD on an odd number. They only move a value when it does not already have the required parity.

Related functions

Guides that use it

Longer reads where this function does real work in a real sheet.