ExcelReady
CourseMock testsFunction guidesBlog
Start freeStart learning for free
ExcelReady

Be Excel-ready before day one. Hands-on practice in your browser, with instant feedback.

Learn

  • Course
  • Mock tests
  • Function guides
  • Blog

Test prep

  • Excel level test
  • Excel test practice
  • Free screening quiz
  • Certificate

Company

  • About
  • Editorial policy
  • Contact
  • Terms
  • Privacy

© 2026 ExcelReady. All rights reserved.

  1. Blog
  2. Dates
  3. How to Calculate Average Time and Durations in Excel

How to Calculate Average Time and Durations in Excel

By ExcelReady Team·Updated November 3, 2026·6 min read

The short answer

To average times in Excel, use =AVERAGE(B2:B6) on cells that hold real time values, then format the result as h:mm with Format Cells (Ctrl+1, Mac: ⌘1). For durations that can pass 24 hours, use the [h]:mm format. To get the average in minutes instead, multiply by 1440: =AVERAGE(B2:B6)*1440.

Key takeaways

  • Excel stores a time as a fraction of a day, so AVERAGE works on times like any other number.
  • Format the result as h:mm, or [h]:mm when the average can be more than 24 hours.
  • Multiply a time by 1440 for minutes or by 24 for decimal hours.
  • Clock times that cross midnight need +1 for the after-midnight times before you average, or the result lands near noon.
  • Times stored as text are ignored by AVERAGE. Convert them with VALUE first.
On this page+
  1. How Excel stores time
  2. How to average time in Excel
  3. Average durations over 24 hours: use [h]:mm
  4. Show the average in minutes or decimal hours
  5. Average clock times that cross midnight
  6. Fix text times, blanks and zeros
  7. Average the time between two columns
  8. Practise it

To get an average time in Excel, use =AVERAGE() on cells that hold real time values and format the answer as h:mm. That works for call lengths, start times and shift durations. Three cases need extra care: averages over 24 hours, clock times that cross midnight, and times stored as text. This guide covers all of them for anyone tracking time in a report or a job test.

How Excel stores time#

Excel stores a time as a fraction of a day. Midnight is 0, noon is 0.5 and 6:00 AM is 0.25. One hour is 1/24 and one minute is 1/1440.

You typeExcel storesWhy
12:000.5Half a day
6:000.25A quarter of a day
1:000.0416671 ÷ 24
0:010.0006941 ÷ 1440

Because times are numbers, AVERAGE, SUM, MIN and MAX all work on them. The format decides whether you see 0.5 or 12:00. Dates work the same way, as whole numbers; see why Excel dates are numbers.

How to average time in Excel#

Average times with AVERAGE, then apply a time format to the result.

AB
1CallDuration
2C-1011:25
3C-1021:32
4C-1031:18
5C-1041:41
6C-1051:04
  1. Click an empty cell, such as D2.
  2. Type =AVERAGE(B2:B6) and press Enter.
  3. If you see a decimal like 0.058333, press Ctrl+1 (Mac: ⌘1), choose Custom and type h:mm.

The result is 1:24. The five calls add up to 7 hours (420 minutes), and 420 ÷ 5 = 84 minutes. Use h:mm:ss if you need seconds. The AVERAGE function guide covers what AVERAGE includes and skips.

The same works for clock times. If four people started work at 8:55, 9:10, 9:05 and 8:42, =AVERAGE(B2:B5) returns 8:58, the average start time.

Average durations over 24 hours: use [h]:mm#

The value AVERAGE returns is correct even when it's more than a day. The problem is the display: h:mm shows only the hours left over after whole days.

Say three projects took 30:00, 26:30 and 21:00 hours. The average is 25 hours 50 minutes, but with h:mm the cell shows 1:50, because 24 of the hours become a hidden day.

Fix it with a custom format that has square brackets:

[h]:mm

Now the cell shows 25:50. The brackets tell Excel to keep counting hours past 24. Use [m]:ss for total minutes and seconds. The guide to custom number formats explains the codes, and the guide to time difference in Excel uses the same format for totals.

Show the average in minutes or decimal hours#

Multiply a time by the number of units in a day to turn it into a plain number:

WantFormulaResult for the calls above
Minutes=AVERAGE(B2:B6)*144084
Decimal hours=AVERAGE(B2:B6)*241.4
Seconds=AVERAGE(B2:B6)*864005040

Format these results as General or Number, not as time. A decimal-hours number is handy for pay or billing, because you can multiply it by an hourly rate.

The opposite is useful too. If your data is in plain minutes (85, 92, 78…), average them and divide by 1440 to get a time:

Excel formula
=TEXT(AVERAGE(B2:B6)/1440,"h:mm")

This returns the text 1:24. TEXT is great for labels and sentences, such as ="Average call: "&TEXT(AVERAGE(B2:B6),"h:mm"). But the result is text, so you can't do more maths with it. The TEXT function guide lists the time codes.

Average clock times that cross midnight#

Plain AVERAGE fails for times on both sides of midnight. Take four bedtimes: 23:30, 0:30, 23:00 and 1:00. To Excel, 0:30 and 1:00 are early in the day, so the average comes out as 12:00: noon, which is clearly wrong.

The fix is to add 1 (one day) to the after-midnight times before averaging, then remove whole days from the result:

Excel formula
=MOD(AVERAGE(IF(B2:B5<0.5,B2:B5+1,B2:B5)),1)
  • B2:B5<0.5 finds times before noon, which here means after midnight.
  • +1 moves those times into the next day, so 0:30 counts as 24:30.
  • MOD(…,1) keeps only the time part of the answer.

Formatted as h:mm, the result is 0:00: midnight, which matches the data. In Microsoft 365 and Excel 2021 this works as a normal formula. In Excel 2019 and older, confirm it with Ctrl+Shift+Enter. Adjust the 0.5 cut-off if your data has real morning times. Shift lengths have a similar problem; adding hours to a time shows how MOD handles times that roll past midnight.

Fix text times, blanks and zeros#

AVERAGE only uses numbers, so a few kinds of cells change the answer without warning:

  • Times stored as text. Imported values like "1:25" may be text. They usually sit on the left of the cell, and AVERAGE skips them; if every cell is text, you get #DIV/0!. Convert a column with =VALUE(B2) in a helper column, then average that.
  • Blank cells. AVERAGE ignores truly empty cells, which is usually what you want.
  • Zero times. A 0:00 entry counts as a real value and drags the average down. To leave zeros out, use =AVERAGEIF(B2:B6,">0").
  • Averages by group. For one team's average, use =AVERAGEIF(A2:A20,"Team A",B2:B20) and format it as h:mm.

The guide to AVERAGE, MIN and MAX shows how to find the shortest and longest time in the same list.

Average the time between two columns#

If you have a start time and an end time on each row, find each duration first, then average:

  1. In D2, type =C2-B2 and fill down. Use =MOD(C2-B2,1) if any shift ends after midnight.
  2. Average the durations: =AVERAGE(D2:D6).
  3. Format the result as h:mm, or [h]:mm for long durations.

In Microsoft 365 you can skip the helper column with =AVERAGE(C2:C6-B2:B6), but the helper column makes your work easier to check.

Practise it#

Averages and time values both come down to numbers and formats. Practise AVERAGE, MIN and MAX in a live spreadsheet to summarise a list in seconds, then learn how Excel stores dates as numbers, which is the same idea that makes time maths work. Try the exercise on this page to turn an average in minutes into h:mm.

Try it yourself

This is a live spreadsheet. Type the formula in the green cell and press Enter.

Call lengths in B2:B6 are in minutes. Click D2 and show their average as hours and minutes with =TEXT(AVERAGE(B2:B6)/1440,"h:mm"). Press Enter.

fx
ABCDE
1
Call
Minutes
2
C-101
85
Average
3
C-102
92
4
C-103
78
5
C-104
101
6
C-105
64
7
8
9

Tip: Average the minutes first, divide by 1440 (minutes in a day) to make a time, then wrap it in TEXT with "h:mm".

Practise this in a lesson

LessonAVERAGE, MIN and MAXSummarize a list with its average, smallest and largest values.LessonHow Excel stores dates: DATE, YEAR, MONTH, DAYLearn why every date is secretly a number, then build dates with DATE and take them apart with YEAR, MONTH and DAY.Function guideAVERAGECalculate the mean in Excel with AVERAGE. See how it treats blanks and zeros, avoid common errors, and practice in a live sheet.Function guideTEXTFormat dates, prices and percentages inside labels with Excel's TEXT function. Format codes, common mistakes and a live practice exercise.

Frequently asked questions

How do I calculate average time in Excel?

+

Use =AVERAGE on the cells that hold the times, for example =AVERAGE(B2:B6). Then format the result cell as h:mm, or [h]:mm if the average can be more than 24 hours.

Why does my average time show a decimal?

+

The result cell has a General or Number format, so Excel shows the time as a fraction of a day, such as 0.0583. Open Format Cells and choose a time format like h:mm to see it as 1:24.

How do I average minutes and seconds in Excel?

+

If the cells hold real times, average them and use the format mm:ss or [m]:ss. If they hold plain numbers of seconds, average them and divide by 86400 to turn the result into a time.

How do I average time over 24 hours in Excel?

+

AVERAGE gives the right value, but the h:mm format hides whole days. Use the custom format [h]:mm, with square brackets, so 25 hours 50 minutes shows as 25:50 instead of 1:50.

Why does AVERAGE return #DIV/0! for my times?

+

The times are probably stored as text, so AVERAGE finds no numbers. Text times usually sit on the left of the cell. Convert them with VALUE or by retyping, then average again.

Sources

  • AVERAGE function - Microsoft Support
  • TEXT function - Microsoft Support
  • Create a custom number format - Microsoft Support

Written and checked by the ExcelReady Team. First published November 3, 2026. The practice exercise runs in the same formula engine as our lessons. Found a mistake? Read our editorial policy or email hello@excelready.app.

On this page

  1. How Excel stores time
  2. How to average time in Excel
  3. Average durations over 24 hours: use [h]:mm
  4. Show the average in minutes or decimal hours
  5. Average clock times that cross midnight
  6. Fix text times, blanks and zeros
  7. Average the time between two columns
  8. Practise it

Keep reading

Dates· 6 min read

Calculate the Difference Between Two Times in Excel

To calculate the difference between two times in Excel, subtract the start time from the end time: =C2-B2. Format the result as h:mm to see hours and minutes, or multiply by 24 to get decimal hours: =(C2-B2)*24. For shifts that end after midnight, use =MOD(C2-B2,1) so the result is never negative.

Dates· 6 min read

How to Add Hours and Minutes to a Time in Excel

To add hours to a time in Excel, use =A2+TIME(3,30,0) to add 3 hours 30 minutes, or =A2+B2/24 when B2 holds a number of hours like 3.5. Excel stores a day as 1, so one hour is 1/24 and one minute is 1/1440. Format the result as a time, and wrap it in MOD(...,1) if it can pass midnight.

Math· 5 min read

AVERAGE, MIN and MAX in Excel With Examples

AVERAGE returns the mean of a range, MIN returns the smallest number and MAX returns the largest. All three take the same input: =AVERAGE(B2:B6), =MIN(B2:B6) and =MAX(B2:B6). They skip empty cells and text but count zeros, and =MAX(B2:B6)-MIN(B2:B6) shows how spread out the values are.

More on dates

  • Build a Biweekly Pay Schedule in Excel
  • Calculate Age or Years of Service in Excel
  • How to Change the Date Format in Excel
  • Convert Decimal Hours to Time (hh:mm) in Excel
  • How to Convert Text to Dates in Excel
  • Convert Time Zones in Excel With a Simple Formula
All dates articles →

Don't just read about Excel. Do it.

Practise real formulas in a live spreadsheet with instant feedback, right in your browser. Nothing to download.

Start learning for free