Time calculator
Calculate the time between two clock times, or add and subtract hours, minutes and seconds.
For a weekly total from daily start and end times with unpaid lunch deductions, use Time calculator with lunch.
Calculation rules and supported inputs
The calculator uses clock times without a date. An hour has 60 minutes, a minute has 60 seconds and a calculation day has exactly 24 hours. Your browser’s time zone does not affect the result.
For the time span, the start time is subtracted from the end time. If the end time is on the next day, 24 hours are added before subtracting. Identical times therefore give either 0 or 24 hours. More than 24 hours is possible too: from 09:00 to 10:00 on the next day is 25 hours. Only the same day and the next day can be chosen.
“On the same day” is the default. If the end time is earlier, choose “on the next day” or correct the times. The chosen day is kept when you change the times.
A break you enter is subtracted once from the time span. Empty break fields count as 0. The break cannot exceed the time span. Statutory breaks are not subtracted automatically; working-time rules and pay are not checked.
When adding or subtracting, the duration you enter is added to or subtracted from the start time. The result always shows the clock time and how many days it lies before or after the start day. For example, 23:30 plus 2 hours and 45 minutes is 02:15 on the next day.
Clock times run from 00:00 to 23:59:59. 24:00 is not accepted as a time; for an end at midnight, use 00:00 and the next day. A duration of 24 hours is allowed. The duration can be up to 999,999 hours, 59 minutes and 59 seconds. Negative inputs, fractions of a second and decimal hours as input are not supported.
Internally, the calculation uses whole seconds. Decimal hours are calculated by dividing the seconds by 3,600. Only the display is rounded to two decimal places, rounding half up. One minute is shown as 0.02 hours. This rounded number is not used in further calculations. The display in hours, minutes and seconds stays exact.
The calculator does not determine the actual elapsed time between calendar dates and does not convert between cities or time zones. Daylight saving time, leap seconds and legal working-time or pay rules are not taken into account.
Calculation rules v1
Frequently asked questions
- How do I calculate the time between two times across midnight?
- Enter the start time and the end time and choose “on the next day”. From 23:50 to 00:10 is then 20 minutes. With “on the same day”, an earlier end time is shown as an error. Choose “on the next day” for this calculation.
- Are identical times 0 or 24 hours apart?
- It depends on the chosen day. From 00:00 to 00:00 on the same day is 0 hours; on the next day it is 24 hours. Enter 00:00 instead of 24:00 and set the day of the end time.
- Can I subtract a break and read the result in decimal hours?
- Yes. In “Time between”, the break you enter is subtracted from the time span. 8 hours and 30 minutes minus a 30-minute break is 8 hours, that is 8.00 decimal hours. Statutory breaks and pay are not calculated. The decimal display is rounded: one minute is shown as 0.02 hours, not 0.01 hours.
- Why is daylight saving time not taken into account?
- The actual elapsed time needs a date and a time zone. Where daylight saving time applies, the actual time from 01:30 to 03:30 on a changeover day can be one hour or three hours. A pure clock-time calculation gives two hours in both cases. Some clock times are skipped or occur twice on a changeover day. Because this calculator does not ask for calendar dates, it does not calculate an actual duration across a daylight saving changeover.
- How do I add and subtract several durations?
- Choose “Total time” and enter each duration in its own row, using the hours, minutes and seconds fields. Two rows are shown initially. Use “Add row” for more; rows from the third onward can be removed with “Remove row”. After the first row, choose “Add” or “Subtract” for each row and enter the duration without a minus sign. For example, 1:45 + 2:30 − 0:20 = 3:55 (hours:minutes), shown as 3:55:00, 3.92 h (rounded) and 235 min. Decimal hours are rounded to two decimal places; total minutes are shown as a whole number when exact, otherwise rounded to two decimal places with seconds included.
- Are my inputs or results saved?
- Calculations run in your browser. semku does not send the inputs and results of this calculator to the server and does not save them in browser storage. For “Undo”, the state before the reset is kept temporarily in memory. It is discarded on new input, a changed selection or after undoing the reset. It may remain if you leave the page and return using the Back button. Copied text can remain in your clipboard. This page sends usage statistics and automatic error reports, but they do not include the times you enter or the results. See “Privacy on this page”.
Privacy on this page
Calculations run in your browser. The times you enter and the results are not sent to the server or saved in browser storage. The state kept for “Undo” exists only in temporary memory; reloading the page returns the inputs to their initial state.
To understand how the page is used and to improve the service, this page sends semku’s own usage statistics and automatic error reports. They go only to the dedicated endpoint under semku.com/api/telemetry/v1/. They are not used for advertising or third-party tracking.
The usage statistics include stages of use (such as starting an operation or requesting a copy), the times they occur and fixed identifiers that distinguish the page and feature. They do not include the times you enter, the results shown or the text you copy. Inputs are not sent as hashes or as size categories either. The full URL and search terms are not sent.
Operations and sessions are distinguished by randomly generated identifiers. In the browser, these identifiers exist only in temporary memory and are not written to cookies or browser storage. No identification based on cookies or combined device characteristics is used.
Error reports contain the error type, code and time, and, where available, a registered program-source identifier with line and column numbers. The error message text and stack traces are not sent. Usage statistics and error reports also carry the site identifier, the deployment version and a random record identifier. For access records such as IP addresses, browser signals (User-Agent Client Hints), region and language, see the paragraph below.
The feedback form sends the rating you chose and the text you typed in the free-text field when you press the send button. The form also sends a random ID that distinguishes the submission, along with the page, site, deployment version and type of request. There are no fields for your name, email address or phone number, and the times you enter are not attached automatically. Before sending your text, the widget removes leading and trailing whitespace and, if you selected a rating, adds [+1] or [-1] at the start; it makes no other changes to your text. After receipt, the collector standardizes line endings and removes leading and trailing whitespace. Please do not enter personal data, passwords, authentication keys or payment details.
To improve the service, we record the country and state/province-level region at the time of your visit (an estimate based on the connecting network), which site you came from including the page path, and one display-language setting announced by your browser (for example, en-US). Location is kept to country and region only; no city or precise position is recorded. When you use the service, connection records, including your IP address, are automatically generated and retained to maintain service security and identify abnormal access. Cloudflare is the data processor for this site. Collection of this item is enabled only after this notice is published; we do not collect it retrospectively for use before collection is enabled. Query strings such as search terms are not recorded, and neither is the full list of preferred languages or the raw request headers. Collection of this information is currently disabled and will only be enabled after this notice is published. If we enable collection, we will collect and use signals your browser reports about its type and version, along with an indication of whether automation tools are being used, to identify bots. These browser signals are estimates and do not conclusively identify your browser's type or version or whether automation tools are being used. We do not collect it retrospectively for use before collection is enabled. The raw User-Agent request header is not recorded. These records are per visit only and use no identifier that links one visit to another. Recording starts only with visits after this notice is published and is not applied retroactively to earlier visits. The region and the referring site have been recorded since 2026-09-20; the display language since 2026-09-24. Browser signals are not recorded yet.
Separately, when you visit the site, the hosting provider records your IP address, the time of the request and user-agent information about your browser and device in Cloudflare Pages’ standard access logs.
For details, see the privacy policy.
Calculations run in your browser without sending your times or results to the server. See “Privacy on this page” for information about access data.