Free · Clock times & durations · Circular mean · Visualization

Average Time Calculator — Find the Mean of Clock Times or Durations

Calculate the average of clock times of day or of durations in hours, minutes and seconds. Paste one value per line — for example 8:30, 9:00, 9:45 for wake-up times, or 0:01:23, 0:01:45 for lap times. Clock mode uses the circular mean, so times that cross midnight (11:00 PM + 1:00 AM) correctly average to midnight instead of the misleading noon. Includes a clock-face visualization, per-item deviation table, R coefficient, and worked examples.
🕐 Clock-time & duration modes 🔵 Circular mean (midnight-safe) 📊 Clock face & bar chart 🔒 100% in-browser

Average Time Calculator

Pick clock times or durations, enter one value per line, and the average updates as you type.
0 values
Average clock time
Your average will appear here as you type.

💡 Clock mode: 12-hour and 24-hour formats may be mixed — each line is parsed independently. Duration mode: accepts 01:23:45, 1h 23m 45s, 1.5h, or 5400s. Invalid lines are skipped with a warning rather than blocking the whole calculation.

Ready to calculate Enter times or durations above — the average, a clock-face or bar-chart visualization, and a per-item deviation table will appear below.

Worked Examples — Clock Times and Durations

Small reference cases with the correct answer using the circular mean.
Swipe
CaseInputsCorrect averageNotes
Same-side-of-midnight clock times8:00, 9:00, 10:009:00:00All same side of midnight, so circular and linear agree
Crosses midnight23:00, 1:0000:00:00Linear mean gives 12:00 (wrong); circular gives midnight
Near-midnight cluster23:50, 00:05, 23:55, 00:1000:00:00All within 15 minutes of midnight
Morning cluster6:30, 6:45, 7:00, 7:1506:52:30Uniformly spaced; average is the middle
Average of two8:30, 9:3009:00:00Two values; midpoint on the clock
Durations1:30:00, 2:00:00, 0:45:0001:25:00Total 15300 s ÷ 3 = 5100 s = 1h 25m
Short durations1m 23s, 1m 45s, 2m 5s00:01:44Total 313 s ÷ 3 ≈ 104.3 s ≈ 1m 44s
Widely spread (bad for mean)2:00, 8:00, 14:00, 20:00—R ≈ 0; the mean is not meaningful. Tool warns about this.

What is an average time calculator?

An average time calculator takes a list of times and returns their mean. But "time" is a word that covers two very different things, and the two are averaged with completely different methods. The first is a clock time — a moment of the day, such as 8:30 AM or 14:35. The second is a duration — an amount of elapsed time, such as 1 hour 30 minutes or 45 seconds. Clock times wrap around every 24 hours, so averaging them requires a technique called the circular mean. Durations do not wrap, so a plain arithmetic mean works fine. This tool handles both under one roof, with a mode toggle at the top of the card.

Getting the mode right matters because the two averages look identical but mean completely different things. Averaging three wake-up times of 6:45, 7:10 and 6:30 gives 6:48:20 — a moment of the day. Averaging three durations of 45m, 1h 10m and 30m gives 48m 20s — an amount of elapsed time. Same digits, completely different interpretation. If you paste clock times into a duration calculator you get a number that looks plausible but is nonsense; the mode toggle prevents that class of mistake.

Under the hood, the clock mode always works in seconds since midnight and produces the average as a direction on the clock face rather than as a numeric mean. That single design choice is what makes the tool correct when the input crosses midnight, and it is the biggest gap in every competing calculator we analysed — they all use the plain arithmetic mean and silently return the wrong answer for any input that wraps past 24:00.

💡 Quick example. The average of 23:00 and 01:00 is 00:00 (midnight), not 12:00 (noon). Both times are two hours either side of midnight. The tool's circular mode gets this right; a naive linear average would not.

Two modes — clock times and durations

The mode tab at the top of the calculator controls which arithmetic is performed. Both modes share the same input box, the same live updates, the same copy and share buttons, but the interpretation and the math are different.

Swipe
AspectClock times modeDurations mode
What it averagesTimes of the day (moments)Elapsed amounts
Example inputs8:30, 9:00, 9:451h 30m, 45m, 2h
ArithmeticCircular mean (default) or linear meanPlain arithmetic mean
Wrap-aroundHandled — input can cross midnightNot applicable
Mean makes sense whenTimes cluster within a few hours (R > 0.7)Always
Typical queriesAverage wake-up, average log time, average meeting startAverage lap, average response time, average commute

How to average clock times — and why plain arithmetic fails

The obvious approach is to convert each clock time to seconds since midnight, add them all up, and divide by the count. That works perfectly as long as the times are all on the same side of midnight. It fails the moment they cross. Here is the failure with the simplest possible case:

  • 23:00 = 82,800 seconds since midnight.
  • 01:00 = 3,600 seconds since midnight.
  • Plain arithmetic mean: (82,800 + 3,600) ÷ 2 = 43,200 seconds = 12:00 noon.

Noon is obviously the wrong answer — the two times are two hours either side of midnight. The mistake is that seconds-since-midnight treats 23:00 as "very late" and 01:00 as "very early," when visually they are neighbours on the clock face. The circular mean solves this by treating each time as a direction on a circle rather than a linear number.

The circular mean formula

Convert each clock time to an angle on a 24-hour circle, then average the angles as vectors. The two components (sine and cosine) are what make the technique immune to the wrap-around problem, because both 23:00 and 01:00 have similar cosine values near midnight.

φi = (secondsi ÷ 86400) × 2π
mean_φ = atan2( Σ sin φi, Σ cos φi )
mean_seconds = (mean_φ ÷ 2π) × 86400

The result is the direction that best fits all the input angles. For 23:00 and 01:00, the two components cancel at exactly 00:00, giving the correct answer of midnight.

💡 This method has a name. It is standard in directional statistics and is used for compass bearings, wind direction, and seasonal phenology data. The relevant reference is Mardia & Jupp, Directional Statistics (2000) — the same circular-mean formula.

The R coefficient — is the mean even meaningful?

Circular statistics produce a second useful number alongside the mean: the mean resultant length, usually written R. It is a number between 0 and 1 that measures how tightly the input angles cluster.

  • R = 1 — every input is identical. The mean is obviously that value.
  • R ≈ 0.9 — times are tightly clustered (within about an hour of each other). The mean describes them well.
  • R ≈ 0.7 — times are scattered within a few hours. Mean is still useful but represents the general tendency.
  • R ≈ 0.3 — times are widely scattered. Mean is a rough summary at best.
  • R ≈ 0 — times are spread evenly around the clock (2:00, 8:00, 14:00, 20:00). The mean is meaningless — no single time represents this set.

The tool computes R for every clock-mode calculation and warns you when it drops below 0.3. Without R, a user averaging four uniformly-spread times would get a misleading answer (any of the four would look equally valid as "the mean"); with R, they see immediately that the mean is not a useful summary.

Average of two times — quick answers

The simplest case is averaging two times. Here are the ones users search for most often, all verified against the tool:

Swipe
TimesAverageNotes
8:30 and 9:309:00:00Simple midpoint
9:00 and 9:309:15:00Simple midpoint
10:00 and 14:0012:00:00Simple midpoint (noon)
22:00 and 02:0000:00:00Crosses midnight — linear mean would give noon
23:00 and 01:0000:00:00Crosses midnight
23:30 and 00:3000:00:00Crosses midnight
18:00 and 06:0000:00:0012 hours apart — direction is ambiguous but tool defaults to midnight

How to average durations

Averaging durations is much simpler — no wrap-around, no circular statistics. Convert each duration to seconds, average the seconds, convert back:

  1. Convert each duration to total seconds. 1 h 30 m = 1 × 3600 + 30 × 60 = 5,400 s. 2 h = 7,200 s. 45 m = 2,700 s.
  2. Add them up. 5,400 + 7,200 + 2,700 = 15,300 s.
  3. Divide by the count. 15,300 ÷ 3 = 5,100 s.
  4. Convert back. 5,100 s = 1 h 25 m 0 s.

Durations in this tool accept several formats so you can paste whatever you have: 01:23:45 (HH:MM:SS), 1:23 (H:MM by default), 1h 23m 45s, 83.5m, or 5010s. The short-form interpretation of a two-segment colon value is configurable in case your data uses minutes:seconds for short durations.

How to average times in Excel and Google Sheets

Excel and Google Sheets both have an AVERAGE function, and both can average a column of times directly — but there are three gotchas that catch almost every user.

The basic formula

If your times are in cells A1 to A10, formatted as Time, then =AVERAGE(A1:A10) returns the arithmetic mean. Format the result cell as [h]:mm:ss (with the square brackets) if the total can exceed 24 hours, otherwise the display will roll over at 24:00 and look wrong.

Gotcha 1 — the linear mean fails across midnight

Sheets' AVERAGE uses the plain arithmetic mean. If your wake-up times occasionally cross midnight (22:30, 00:15, 23:45), Excel will compute a mean around midday, which is nonsense. To fix it in a sheet you need helper columns:

  1. In a new column, compute the angle: =2*PI()*HOUR(A1)/24 + 2*PI()*MINUTE(A1)/1440 + 2*PI()*SECOND(A1)/86400.
  2. In two more columns, take =SIN(angle) and =COS(angle).
  3. Average the sine and cosine columns: =AVERAGE(B:B) and =AVERAGE(C:C).
  4. Convert back: =MOD(ATAN2(mean_sin, mean_cos) / (2*PI()), 1) * 24 — the result is decimal hours since midnight.

Gotcha 2 — different cell formats

If some cells are formatted as Time and others as Text (a common issue when pasting), AVERAGE ignores the text cells. The result is wrong without any error. Verify every cell is a real time value before averaging.

Gotcha 3 — durations vs clock times

A duration like 01:30:00 and a clock time like 01:30:00 look identical in Excel but are conceptually different. If you mix them in one column, averages become meaningless. Use one column for durations, another for clock times.

💡 Easier alternative. Paste the times here instead. This tool handles all three gotchas automatically — it uses the circular mean by default, ignores invalid lines, and keeps the two modes separate.

Worked examples

Average wake-up time

Inputs on four consecutive days: 6:45, 7:10, 6:30, 7:00.

  1. Seconds: 24,300, 25,800, 23,400, 25,200.
  2. Linear mean: (24,300 + 25,800 + 23,400 + 25,200) ÷ 4 = 98,700 ÷ 4 = 24,675 s.
  3. 24,675 s = 6:51:15.

Since all times are on the same side of midnight, the circular mean agrees. R is close to 1 because the four times are all within 40 minutes of each other.

Average log time that crosses midnight

Inputs from an automated job that fires near midnight: 23:50, 00:05, 23:55, 00:10.

  1. Seconds: 85,800, 300, 86,100, 600.
  2. Linear mean: (85,800 + 300 + 86,100 + 600) ÷ 4 = 172,800 ÷ 4 = 43,200 s = 12:00 noon — nonsense.
  3. Circular mean: φ values are 6.236, 0.022, 6.250, 0.044 rad. Σ cos ≈ 3.996, Σ sin ≈ 0.000, mean_φ ≈ 0, mean_seconds ≈ 0 → 00:00:00.

The circular mean correctly gives midnight — the times are clustered within ±10 minutes of 00:00.

Average lap duration

Five laps: 1:23, 1:45, 2:05, 1:38, 1:52 (all in M:SS).

  1. Switch the two-part input option to "Interpret as M:SS (minutes:seconds)".
  2. Seconds: 83, 105, 125, 98, 112. Total = 523 s. Average = 104.6 s.
  3. Average = 1:44.6 → rounded to 1:44 or 1:45 depending on precision.

Average sleep midpoint (chronobiology)

Sleep researchers and the "chronotype" community often want the average sleep midpoint — the time halfway between falling asleep and waking up. Compute it per night as a clock time (e.g., asleep at 23:30, awake at 7:00 → midpoint 03:15), then paste the midpoints here one per line. Because sleep midpoints frequently cross midnight, the circular mean is the standard method — the same one used in circadian-rhythm papers.

Where people use this tool

  • Sleep and habit tracking. Average wake-up, average bedtime, average sleep midpoint across a week of logged values. The circular mean handles the case where someone occasionally falls asleep after midnight.
  • Log and event analysis. Average timestamp of a recurring event (cron job, backup, deploy) — a classic case for the circular mean because the events frequently land on both sides of midnight.
  • Meeting and schedule tuning. Average actual start time of a recurring meeting to see whether it consistently slips past its nominal start.
  • Sports and fitness. Average lap time, average split, average duration of intervals. Durations mode handles any HH:MM:SS or unit-form input.
  • Engineering and operations. Average API response time, average job runtime, average build time. Usually expressed in milliseconds — enter as seconds (0.120s, 0.145s) or minutes depending on magnitude.
  • Commute and travel planning. Average of several commute durations in unit form (32m, 28m, 45m).
  • Circadian and chronobiology research. Averaging activity onsets, melatonin onset times, or sleep midpoints — the circular mean is the standard method in this field, and the R coefficient is reported alongside.
  • Education. Students learning circular statistics need a concrete tool to check their hand calculations against.

Common mistakes

  • Using the linear mean for times that cross midnight. This is the single biggest mistake and the reason the tool defaults to the circular mean. Averaging 22:00 and 02:00 linearly gives 12:00 (noon), which is wrong by half a day.
  • Averaging clock times and durations in the same calculation. Clock times and durations are not interchangeable. The mode toggle is there to prevent this — pasting clock times into duration mode or vice-versa produces a plausible number that means nothing.
  • Ignoring the R coefficient. A mean reported without R can mislead. Four times of 2:00, 8:00, 14:00 and 20:00 are uniformly distributed; any "average" of them is meaningless, but without R the number looks just as authoritative as a tightly-clustered mean.
  • Treating a time of 12:00 as noon when the context means midnight. In 24-hour format 12:00 is noon; midnight is 00:00. In 12-hour format, 12:00 AM is midnight and 12:00 PM is noon — the opposite of what many people instinctively think.
  • Assuming second-level precision is available when it isn't. If your inputs are 8:30 and 9:00 (no seconds), the average 8:45:00 looks like it has second-level precision but does not. Round to the input's precision when reporting.
  • Confusing HH:MM with MM:SS in duration mode. A duration written 1:23 could be 1 hour 23 minutes or 1 minute 23 seconds depending on context. The two-part option lets you pick which. Default is H:MM (larger unit first), which matches most job-runtime conventions.
  • Mixing AM and PM into 24-hour times without converting. In 24-hour mode, hours must be 0–23. Entering 13:00 AM is invalid; the parser will reject the line and flag it.
  • Expecting the median to equal the mean. For skewed or outlier-heavy inputs the median will differ noticeably. Both are shown — the gap between them tells you how much the mean is being pulled around.

Privacy and data storage

The entire calculator runs in your browser using vanilla JavaScript. Nothing you type is uploaded, logged, or stored on a server. There is no account, no login, and no network request after the page loads — the tool works offline once cached. If you use the Share button, the input is encoded into the URL hash on your own device; it is never transmitted to AIToolsPros or any third party.

Limitations

  • The circular mean assumes a 24-hour period. It cannot be used to average times-of-day that span more than one day, because a cycle length of 24 hours is baked into the math.
  • Only one mode per calculation. If your input mixes clock times and durations in the same box, some lines will parse and others will fail — the tool reports which lines were skipped.
  • Sub-second precision is not supported. Inputs are rounded to the nearest second during parsing, and the average is reported at one-second resolution.
  • 12-hour format requires AM or PM on every such line. A bare 8:30 is treated as 24-hour time (08:30).
  • Durations must be non-negative. Elapsed time cannot be negative in this calculator; if you have signed durations, add a constant offset before averaging and subtract it after.
  • The tool does not implement weighted means. If you want to give some inputs more influence than others, you need a spreadsheet.
  • The visualization renders every input as a dot on the clock face. With more than about 60 inputs, the dots overlap enough to make the display less useful. The per-item table still shows every value.

Frequently asked questions

How do you calculate the average of clock times?

Convert each clock time to seconds since midnight, then take the circular mean — not a plain arithmetic mean. Convert each time to an angle on a 24-hour circle, average the sine and cosine components, then take the arctangent of the resulting vector. This is the only method that gives the correct result when the times span midnight, such as averaging 11:00 PM and 1:00 AM (which gives midnight, not midday).

What is the difference between averaging clock times and averaging durations?

Clock times wrap around every 24 hours, so averaging them requires circular statistics. Durations do not wrap — they are just numbers of seconds — so a normal arithmetic mean works fine. Both are supported in this tool: choose Clock times for averages like the average wake-up time of day, and Durations for averages like the average lap time or average response time.

What is the average of 8:30 and 9:30?

The average of 8:30 and 9:30 is 9:00. Both times are on the same side of midnight, so the circular mean and the plain arithmetic mean agree. Add the two values as seconds since midnight (30,600 + 34,200 = 64,800) and divide by two, giving 32,400 seconds = 9:00:00.

What is the average of 11:00 PM and 1:00 AM?

The average is midnight (00:00). A plain arithmetic mean of 23:00 and 01:00 would give 12:00 noon, which is obviously wrong because both times are near midnight. The circular mean computes the average direction of the two angles on the clock face, which points at 00:00.

What is the circular mean?

The circular mean is the mean of angles rather than the mean of linear values. Each time is converted to an angle on a 24-hour circle, the sine and cosine components of all angles are averaged, and the arctangent of the resulting vector gives the mean angle. It is standard in statistics for directional or cyclical data such as compass bearings, wind direction, and times of day.

What does the R (mean resultant length) value mean?

R is a number between 0 and 1 that measures how tightly the times cluster around the mean. R = 1 means every input time is identical. R = 0 means the times are spread randomly around the clock, so the mean is not meaningful. Above about 0.7 the mean is a good description; below about 0.3 the times are widely scattered and the mean should be used with caution.

How do I calculate the average duration in hours, minutes and seconds?

Convert each duration to total seconds (hours × 3600 + minutes × 60 + seconds), add them all up, divide by the number of durations, then convert the average back into hours, minutes and seconds. For example, 1:30:00 + 2:00:00 + 0:45:00 = 15,300 seconds total; divided by 3 gives 5,100 seconds, which is 1 hour 25 minutes.

How do I average times in Excel or Google Sheets?

In Excel or Google Sheets, enter each time in a cell formatted as Time, then use =AVERAGE(A1:A10). Set the result cell's number format to [h]:mm:ss so totals and averages past 24 hours display correctly instead of rolling over. Note that the sheet AVERAGE function uses the linear mean, so if your data crosses midnight you must add 24 hours to the early-morning values before averaging, or compute the circular mean in helper columns (see the article section above for the formulas).

Can I average times that span midnight?

Yes, and the tool handles this correctly because it uses the circular mean. Enter the times as normal (23:50, 00:05, 23:55, 00:10) and the average is computed as a direction on the clock, so it lands near midnight instead of the incorrect 12-hour average.

Can I mix 12-hour and 24-hour formats in one calculation?

Yes. Each line is parsed independently. A time with AM or PM is treated as a 12-hour time, while a time without is treated as a 24-hour time. This means you can paste a column that includes both 8:30 AM and 20:30 without conflict.

How do I find my average wake-up time?

Choose Clock times mode, set the display format to 12-hour, and enter one wake-up time per line (for example, 6:45 AM, 7:10 AM, 6:30 AM, 7:00 AM). The average shown is your average wake-up time of day. If you have weeks of data, paste one value per line and the average updates live.

How do I find the average response time or average runtime?

Choose Durations mode and enter each duration on its own line — either in HH:MM:SS format (0:01:23, 0:01:45, 0:02:05) or in unit form (1m 23s, 1m 45s, 2m 5s). The average is calculated in seconds and displayed as hours, minutes and seconds.

Can I average times that include seconds?

Yes. Every time in Clock times mode accepts HH:MM:SS, and every duration accepts seconds as well. The final average is computed at one-second resolution.

Does the tool handle decimal durations?

Yes. You can enter 1.5h, 90.25m, or 5400.5s and the tool converts each to seconds before averaging. The final average is rounded to the nearest second.

What is the difference between mean and median for times?

The mean is the arithmetic or circular average — sensitive to outliers. The median is the middle value when all inputs are sorted — insensitive to outliers. This tool shows the mean as the primary result and both the median and the earliest/latest times as secondary statistics so you can spot when a single outlier is skewing the mean.

Is anything I paste uploaded?

No. The calculator runs entirely in your browser using vanilla JavaScript. Nothing you type is uploaded, logged or stored on a server. There is no account, no login and no network request after the page loads — the tool works offline once cached.

Sources & methodology

Scroll to Top