Staaarter

Increment a Clock Time

Adds a duration written with combinable h/m/s suffixes to a base HH:MM:SS clock time, returning the resulting time and noting when the addition crosses midnight into a following day. A free online tool from Staaarter, right in your browser.

Runs locallyUpdated 2026-08-05
By Staaarter Team
clock-timearithmetic

Overview

Introduction

Adding a duration to a clock time by hand means tracking carries across minutes and hours and remembering to wrap back to 00:00:00 at midnight, a fiddly bit of arithmetic that's easy to get wrong under time pressure.

This tool does that addition instantly, accepting a duration written the way people naturally think of one, like "2h45m" rather than a raw seconds count.

What Is Increment a Clock Time?

A clock-time arithmetic tool that adds a duration to a base HH:MM:SS time and returns the resulting time of day.

It treats the base value as a wall-clock time rather than a calendar timestamp, so the result wraps at 24 hours instead of rolling into a specific new date.

How Increment a Clock Time Works

The base time is converted to a total count of seconds since midnight, and the duration string is parsed by summing each h/m/s component's value in seconds.

The two totals are added together, then the sum is reduced modulo 86400 seconds in a day to get the resulting time, with any full days that were crossed reported in a short note.

When To Use Increment a Clock Time

Use it to work out an end time from a start time and a known duration, like a meeting, a shift, or a task's estimated length.

For subtracting a duration from a time instead, use Decrement a Clock Time.

Features

Advantages

  • Accepts a natural, combinable h/m/s duration format instead of requiring a raw seconds count.
  • Correctly wraps past midnight and reports how many days the result moved forward.
  • Handles durations longer than 24 hours without any special input needed.

Limitations

  • Only works on a time of day, it has no concept of a calendar date, so it can tell you a result wrapped to the next day but not which date that day is.
  • The duration format requires no space between a number and its unit letter, so "2 h" is rejected while "2h" is accepted.

Examples

Adding a duration within the same day

Input

09:15:00
2h45m

Output

12:00:00

9:15 AM plus 2 hours 45 minutes lands exactly on noon, no wrap needed.

Adding a duration that crosses midnight

Input

23:30:00
90m

Output

01:00:00 (wrapped to the next day)

23:30 plus 90 minutes passes midnight, landing at 01:00:00 the following day.

Best Practices & Notes

Best Practices

  • Watch for the wrap note in the output whenever a duration might be close to or larger than the remaining time until midnight.
  • Combine multiple units in one duration string, like "1h30m15s", instead of running the tool multiple times for each unit.

Developer Notes

The duration parser scans the input with `/(\d+)([hms])/gi` and requires the sum of matched substring lengths to equal the full input length, which rejects stray characters while still allowing any subset and order of h/m/s tokens; the wrap count is computed as `Math.floor(newTotal / 86400)` and the displayed time as the remainder after subtracting that many full days in seconds.

Increment a Clock Time Use Cases

  • Calculating a meeting or shift end time from a start time and duration
  • Working out when a timer or countdown that started at a known time will finish
  • Checking whether a task starting late in the day will finish before or after midnight

Common Mistakes

  • Putting a space between the number and unit letter in the duration, like "2h 45m", which fails the strict parser.
  • Forgetting that the result is a time of day only, if the duration wraps multiple days ahead the tool reports how many days but not the resulting calendar date.

Tips

  • Use Decrement a Clock Time with the same duration to sanity-check a result by working backward from it.
  • Feed the output straight into Format a Clock Time if you need it displayed in 12-hour AM/PM form.

References

Frequently Asked Questions