Skip to content

How to Add and Subtract Time Durations, and How Time Expressions Work

By Sufi Inam Ul HassanReviewed by Muhammad Javaid Iqbal18 min readUpdated 30 September 2026

How to add and subtract time durations by hand, plus a full guide to the Time Calculator's typed expression syntax, with worked examples and common mistakes.

Add three hours and forty-five minutes to two hours and thirty minutes on paper, and the "45 + 30" part does not stay 75, it becomes 1 hour and 15 minutes carried into the next column. That single carry is the entire reason time arithmetic feels different from ordinary addition, and it is exactly what a calculator has to reproduce correctly before its answer can be trusted. This guide covers how to add and subtract time durations by hand, with several worked examples, then turns to a faster way to do the same arithmetic: typing a short expression like "1d 2h 3m 4s - 2030s + 28h" into a single box and letting a small parser read it. The Time Calculator's Add/Subtract Time Values and Time Calculator in Expression tabs run every number below directly.

A short history of dividing time into 60

Every hour has 60 minutes and every minute has 60 seconds because of a choice made roughly four thousand years ago, long before clocks existed. Babylonian mathematicians worked in base 60 rather than base 10, and the reason was practical: 60 divides evenly by 1, 2, 3, 4, 5, 6, 10, 12, 15, 20 and 30, eleven whole-number divisors in total. Ten has only four (1, 2, 5 and 10). A base with more divisors makes more fractions come out as whole numbers instead of repeating decimals, a genuine advantage for a civilization doing arithmetic without decimal notation, let alone a calculator.

That same base-60 habit did not stay confined to time. A circle is divided into 360 degrees, itself 6 times 60, and each degree splits into 60 arc-minutes and each arc-minute into 60 arc-seconds, the same naming pattern and the same reasoning applied to angles instead of hours. The habit survived for thousands of years: Ptolemy's astronomical tables used it in the second century, and by the time mechanical clocks with minute and second hands became common in the 16th and 17th centuries, base 60 was already the only convention anyone building one had ever known.

It was not for lack of trying that a decimal alternative never stuck. Revolutionary France briefly mandated decimal time in 1793, a 10-hour day of 100 decimal minutes and 100 decimal seconds each, alongside its now-familiar metric system. It was abandoned within about a year and a half, partly because every existing timepiece and habit already ran on base 60, and partly because relearning "quarter past" was a far larger undertaking than redefining a unit of length. Base 60 has been the standard ever since, which is why a modern time calculator still carries at 60, not 10 or 100.

How to add and subtract time durations by hand, step by step

The method a calculator runs is the same one a person can do with a pencil, just faster and without the risk of a dropped carry. Every duration converts to a single count of seconds, that count gets added or subtracted, and the total converts back into hours, minutes and seconds by dividing off whole units from the largest down to the smallest.

Converting a duration to seconds is a straight multiplication: hours times 3600 (the number of seconds in an hour), plus minutes times 60, plus the seconds figure itself. Converting a total number of seconds back the other way divides in the same order: the whole number of hours is however many whole 3600-second blocks fit into the total, what is left over is divided by 60 for whole minutes, and whatever remains after that is the seconds figure, always between 0 and 59 by construction.

Example 1, a straightforward addition. Add 4:20:50 and 1:50:35. Converting both to seconds: 4:20:50 is (4 × 3600) + (20 × 60) + 50 = 14400 + 1200 + 50 = 15650 seconds, and 1:50:35 is (1 × 3600) + (50 × 60) + 35 = 3600 + 3000 + 35 = 6635 seconds. Adding those totals gives 15650 + 6635 = 22285 seconds. Converting back: 22285 divided by 3600 is 6 whole hours (21600 seconds) with 685 left over; 685 divided by 60 is 11 whole minutes (660 seconds) with 25 left over as the seconds figure. The result is 6:11:25.

Example 2, a subtraction that goes negative. Subtract 5:45:00 from 2:15:00. In seconds, 2:15:00 is 8100 and 5:45:00 is 20700, so the difference is 8100 − 20700 = −12600 seconds. Converting the size of that gap, ignoring the sign for a moment: 12600 divided by 3600 is 3 whole hours (10800 seconds) with 1800 left over, and 1800 divided by 60 is exactly 30 minutes with nothing left over. Reattaching the sign gives −3:30:00. The negative sign means the duration being subtracted, 5:45:00, was 3 hours and 30 minutes longer than the duration it was taken from, not that the calculation failed.

Example 3, a chain of three terms with mixed signs. Add 1:15:30, add 0:45:45, then subtract 0:30:15. In seconds that is 4530 + 2745 − 1815. Adding the first two gives 7275; subtracting the third gives 5460 seconds. Converting back: 5460 divided by 3600 is 1 whole hour (3600 seconds) with 1860 left over, and 1860 divided by 60 is 31 minutes with nothing left over. The result is 1:31:00. A fourth, fifth or twentieth term changes nothing about the method: each term's seconds add to or subtract from the same running total, and the conversion back to hours, minutes and seconds happens once, at the end.

One rule trips people up doing this by hand for the first time: minutes and seconds must already be proper remainders, below 60, before the conversion makes sense. A duration is not correctly written as "1 hour and 75 minutes," because 75 minutes already contains a whole extra hour; it needs to be re-expressed as "2 hours and 15 minutes." The Time Calculator's Add/Subtract Time Values tab enforces exactly this rule on every row, rejecting a minutes or seconds entry of 60 or more rather than quietly producing a wrong total, while placing no upper limit on the hours figure itself, since a duration, unlike a single clock reading, is free to run past 24 hours.

Why "hours" has no ceiling but minutes and seconds do

A common point of confusion is why a duration can read "26 hours" but never "75 minutes." Hours, minutes and seconds are not independent digits on a clock face here, they are the decomposed pieces of one duration, and only one piece is allowed to be the "leftover" unit at each step of the conversion. Once a total has been divided by 60 twice, first to peel off whole hours and then whole minutes, both remainders are guaranteed to land below 60 by the nature of division. Hours are what is left after that peeling is done, so nothing bounds them from above; a video running 26 hours across several sittings, or a payroll period logged over multiple long shifts, is an ordinary duration despite exceeding a single calendar day. Anyone logging worked hours across a pay period rather than a single shift may also want the companion guide on how to calculate hours worked for payroll, which covers rounding rules and overtime thresholds this page does not.

Internally, every duration here is one count of time in seconds, exact until fractional milliseconds and seconds enter the picture, which is why a whole second is the smallest accepted unit. That same arithmetic underlies a time addition calculator, a time difference calculator, a date and time calculator, and a plain time converter alike: convert to seconds, combine, convert back. Counting the duration of time between two readings or running a time countdown toward a deadline are the same calculations with time by another name.

Every method in this guide can be reduced to time in seconds. Convert each part to seconds, add or subtract, and convert back: that is how a program does it, and it answers how many minutes or how many hours a duration holds by dividing the total by 60 or by 3,600. Any time converter works this way. Hour minute conversion is a multiplication or division by 60, and milliseconds and seconds follow the same pattern at a factor of 1,000. Counting the seconds of the day from midnight is the same idea: 3:00:00 AM is second 10,800.

UnitIn minutesIn seconds
1 minute160
1 hour603,600
1 day1,44086,400
1 week10,080604,800

As a check, 1 hour 30 minutes is 5,400 seconds, which is 90 minutes or 1.5 hours.

The Time Calculator expression syntax, formally

The third tab on the Time Calculator reads one line of text instead of separate fields, and the grammar behind it is intentionally small enough to describe completely in a few rules rather than needing a manual.

A term is a number, whole or decimal, immediately followed by exactly one unit letter: d for days, h for hours, m for minutes or s for seconds. The letter can be upper or lower case, so 2H and 2h mean the same thing. An operator is a single + or a single -, and nothing else is ever treated as an operator, no *, no /, no ^. Terms and operators can be separated by spaces or written with no space at all; whitespace is decoration, not part of the grammar. Two terms written next to each other with no operator between them are implicitly added, which is what makes "1d 2h 3m 4s" at the start of the reference expression mean 1 day plus 2 hours plus 3 minutes plus 4 seconds without needing three plus signs typed out. An operator, when one is written, always applies to exactly the next term and no more.

Everything outside that short list is rejected on purpose. There are no parentheses, because a flat left-to-right list of terms never needs grouping. There is no multiplication or division, because "3 times 2 hours" is a different kind of question than this tool answers, and folding it in would mean explaining an order-of-operations rule a simple duration shorthand has no real use for. There is no unit besides d, h, m and s, so a week, a month or a year, each a length that depends on which specific one is meant, are left out of a grammar built entirely around fixed-length units.

Reading the parser step by step

It helps to see the reference expression, "1d 2h 3m 4s - 2030s + 28h", the way the parser itself sees it: first broken into tokens, then evaluated left to right.

Tokenizing splits the raw text into a flat sequence: a term for 1d, 2h, 3m and 4s, an operator -, a term for 2030s, an operator +, and a term for 28h. No operator sits between the first four terms, so evaluation begins by adding them: 1 day (86400 seconds) plus 2 hours (7200 seconds) plus 3 minutes (180 seconds) plus 4 seconds is 93784 seconds. The - operator applies to the next term, 2030s, subtracting 2030 seconds for a running total of 91754. The + operator applies to the final term, 28h (100800 seconds), for a final total of 192554 seconds, which the calculator displays as 53:29:14, the same unbounded-hours format as the Add/Subtract Time Values tab.

A second example leans more on subtraction: "3d - 12h + 45m - 200s". The first term, 3 days, is 259200 seconds. Subtracting 12 hours gives 216000. Adding 45 minutes gives 218700. Subtracting 200 seconds gives a final total of 218500 seconds, which converts to 60:41:40, the same pattern as the manual method above, run automatically instead of by hand.

Malformed input, and why each kind fails

A deliberately narrow parser only earns its usefulness if it fails clearly rather than guessing, so it is worth knowing what each failure means.

A trailing operator, an expression like "1d + 2h -" that ends right after a + or -, fails because every operator promises exactly one more term; nothing after it means the expression is incomplete, not that the last valid total should stand. Two operators in a row, such as "1d + - 2h", fails for a related reason: only a term can follow an operator, so a second operator has nowhere valid to attach. A bare number with no unit, like the "5" in "2h + 5", is rejected with a message asking for a unit specifically, since the likely mistake is simply forgetting to type the letter. An unrecognized unit letter, such as the x in "5x", fails the same way, naming the character that was not understood. A unit letter immediately followed by another letter, as in "1day" rather than "1d" followed by a space, is caught deliberately rather than read as "1d" with the trailing "ay" silently dropped, since dropping characters is exactly how a small typo turns into a wrong answer nobody notices. Finally, an expression that opens with an operator, like "-5h + 10h", is rejected because this parser defines an operator only in terms of joining two terms together; the fix is to reorder the expression so a plain term comes first, "10h - 5h".

Manual math, the Add/Subtract tab, and the expression tab compared

Manual, on paperAdd/Subtract Time Values tabTime Calculator in Expression
What it needsKnowing the carry rule for base 60A separate row per duration, with a +/- toggle eachOne typed line following a fixed grammar
Best suited toLearning or checking the method itselfA handful of durations entered one at a timeA duration already written as shorthand elsewhere, pasted in directly
SpeedSlowest, and error-prone under time pressureFast, with the total updating as each row is filled inFastest for a duration that is already in text form
What can go wrongA dropped or mis-sized carryA minutes or seconds value of 60 or more in one rowA syntax mistake, caught immediately with a specific error

None of the three is "correct" for every case; they are the same method for how to add and subtract time durations, just at three levels of manual effort. Checking a homework answer calls for doing it on paper once. Entering a handful of durations is what the Add/Subtract Time Values tab is for. A duration that already exists as shorthand text, copied from a video editor's export or a note, is fastest dropped straight into the expression tab rather than re-typed field by field.

Common mistakes

The most frequent mistake is borrowing the wrong amount, subtracting 1 minute instead of converting it to 60 seconds first, producing a total off by an easy-to-miss amount rather than an obviously wrong one. The second is dropping the sign on a negative result and reporting it as if the subtraction went the other way; the size stays correct, the meaning reverses. The third, specific to the expression syntax, is expecting a comma as a decimal separator, "1,5h" instead of "1.5h"; the parser only recognizes a period. The fourth is typing a duration the way it might be spoken, "an hour and a half," instead of the grammar it expects, "1h 30m" or "1.5h".

Clock questions the same method answers

Most everyday time questions are one addition or subtraction with a rollover at midnight. If it is 4:30 PM, what time will it be in 10 hours? 4:30 PM plus 10 hours is 26:30, which is 2:30 AM the next day. Going backward works the same way: at 9:00 AM, 12 hours ago is what time? 9:00 PM the previous day. Larger jumps just add whole days, so 48 hours from now is the same clock time two days later, ignoring daylight saving changes. The gap between a start and an end, the elapsed time, is the subtraction done the other way round, which is what an elapsed time calculator automates, while a time adder handles the forward direction.

Put the method to work

That covers how to add and subtract time durations both by hand and with a calculator: every number above was checked by hand, then confirmed against the same Time Calculator that runs on this site, so any worked example here can be typed in directly to see the identical total appear. Use the Add/Subtract Time Values tab for a handful of durations entered one at a time, Add/Subtract Time From a Date when the question involves an actual calendar date and clock time, or Time Calculator in Expression for a duration already written as shorthand text. For the gap between two full dates and times instead, the Time Duration Calculator and the Hours Calculator cover that related but different question.

Frequently asked questions

Why do people divide time into 60 minutes and 60 seconds instead of 100?

The 60-based system comes from Babylonian mathematics, which favored 60 because it divides evenly by 1, 2, 3, 4, 5, 6, 10, 12, 15, 20 and 30, more whole-number divisors than 100 has. That made fractions of an hour easy to work with using only whole numbers, a real advantage before decimal notation existed. The same base-60 habit also splits a circle into 360 degrees and a degree into 60 arc-minutes and 60 arc-seconds, the same naming pattern time uses.

What happens if I type a comma instead of a decimal point in the expression box, like "1,5h"?

It is read as two separate tokens rather than one decimal number, since the parser only recognizes a period as a decimal point. "1,5h" fails at the comma: the parser reads "1" as a number with no unit immediately after it (a comma is not d, h, m or s), and returns the same "missing a unit" error a bare number would. Use a period instead, "1.5h", or avoid the decimal entirely and write it as two whole-number terms, "1h 30m".

Can the expression parser handle a leading minus sign, like "-5h + 10h"?

No, by deliberate design. Every valid expression on this calculator must start with a plain term, a number and a unit, not an operator, so "-5h + 10h" is rejected rather than read as negative five hours plus ten hours. This keeps the parser's rule set to exactly one job, deciding what an operator BETWEEN two terms means, without also having to special-case an operator that appears before anything else has been read. The same result is reachable by rearranging the expression to put the positive term first, "10h - 5h".

Why doesn't the expression tab support parentheses or multiplication?

Because every one of those would turn a short, predictable shorthand into a general-purpose calculator with its own order-of-operations rules to get right and explain. Multiplication would raise the question of what a number times a duration even means, and parentheses only matter once an expression is more than a flat left-to-right list, which duration shorthand never needs to be. Keeping the grammar to two operators and one kind of term makes every valid expression readable at a glance and makes every invalid one fail with a specific, useful error instead of an ambiguous one.

What is the largest duration this calculator can handle accurately?

Far larger than any real duration anyone would type in. JavaScript, the language this calculator runs in, represents whole numbers exactly up to 9,007,199,254,740,991, about nine quadrillion. Even a duration of a billion days, converted to seconds, is nowhere near that ceiling, so accuracy is never a practical concern for a shift length, a project timeline or any other real-world duration. The ceiling exists purely as a fact about how computers store numbers, not as a limitation anyone will actually run into.

Is manual time subtraction the same as regular subtraction with borrowing?

It is the same idea, applied with a base of 60 instead of a base of 10. Ordinary subtraction borrows a 10 from the next column when a digit is too small to subtract from directly; time subtraction borrows a 60 (converted from a minute into 60 seconds, or an hour into 60 minutes) when the minutes or seconds being subtracted are larger than the minutes or seconds available. The mechanism is identical, only the size of one borrowed unit changes.

Why does subtracting a larger duration from a smaller one show a negative time instead of an error?

Because a negative duration is a real, meaningful answer here, not a broken one: it says the amount being taken away was bigger than the amount it was taken from, and by how much. Treating it as an error would throw away that information and force a second calculation just to find out which duration was larger. Showing a signed result keeps both facts, the size of the gap and its direction, in one number instead of two.

Put this into practice with the free Time Calculator.