tooloora

Work Hours Calculator – hours, breaks and pay

Add as many days as you need and get working time per day and in total, as h:mm and as decimal hours, including overnight shifts, a break reminder and CSV export. Nothing leaves your browser.

Runs locally — nothing is uploaded

Log your days

  • Start and end are still missing
  • Start and end are still missing
  • Start and end are still missing

Total

Enter a start and an end time, the table adds up as you type.

Runs entirely on your device, nothing is uploaded.

The table stays saved in this browser, you can close the page.

Work out your hours, day by day

Enter a start, an end and a break for each day, and the calculator gives you the working time as hours:minutes and as decimal hours, the total across all days and, if you want, the pay. Overnight shifts are counted correctly and missing breaks are flagged. Everything stays in your browser.

How do you calculate working time correctly?

Three quantities need to stay apart. Time on site is the span from start to end. Break is the time you are free to do as you like. Working time is time on site minus break, and only that counts for pay and for the law. Someone present from 8:00 to 17:00 with a 45-minute break has 9:00 on site and 8:15 of working time. The calculator shows both so the wrong number does not end up on your form.

What are decimal hours and when do I need them?

Payroll systems calculate with decimal hours, not with clock times. 8:15 is 8.25 hours, 7:20 is 7.33 hours, 8:45 is 8.75 hours. The conversion is minutes divided by 60, so 15 ÷ 60 = 0.25. This is where the classic mistake happens: 8:30 gets typed as 8.30 instead of 8.50, and a noticeable amount goes missing every week. The calculator prints both notations per row, rounded to two decimals.

How are overnight shifts counted?

If the end time is earlier than the start time, the calculator assumes the shift reaches into the next day and adds 24 hours. 22:00 to 06:00 therefore gives 8:00 on site. The date field is a label only and never enters the calculation, so a row stays unambiguous even when you note the day the shift started. One case is excluded on purpose: identical start and end times count as zero, not as 24 hours.

Which breaks does the law require?

The reminder follows German law, because that is where this calculator is used most. Section 4 of the Arbeitszeitgesetz requires at least 30 minutes of break for more than six and up to nine hours of working time, and 45 minutes for more than nine hours. Those breaks may be split into blocks of at least 15 minutes, and nobody may work more than six hours in a row without one. The reference figure is working time excluding breaks: nine hours on site with a 30-minute break means 8:30 of work, which stays in the 30-minute band.

The calculator flags a row only when the entered break falls short of that. It never shortens anything by itself, because a record should show what happened, not what should have happened. Section 3 adds the daily ceiling: eight hours per working day, extendable to ten as long as the average over six calendar months or 24 weeks stays at eight. This is a pointer to German law, not legal advice, and other countries set different rules.

Does working time have to be recorded at all?

In Germany, yes. The Federal Labour Court ruled on 13 September 2022 (case 1 ABR 22/21) that employers are already obliged under existing law to introduce a system for recording working time, derived from section 3(2) no. 1 of the Occupational Safety Act in the light of the Court of Justice of the European Union decision of 14 May 2019 (case C-55/18). A timesheet is therefore not paperwork for its own sake. For your own check this table is enough; the statutory duty needs a system provided by the employer.

Pay, and the limits of this calculator

Enter an hourly rate and the calculator multiplies it by the working time, showing the amount per day and in total, rounded to cents. That is a gross figure without premiums: night, Sunday and public holiday premiums, overtime supplements, taxes and social contributions are not part of it. For the net side use a salary calculator, for premiums your payslip.

Does the timesheet stay private?

Yes. The table is calculated in your browser and lives only in your device's local storage so that it is still there on your next visit. Working times are personal data: they show when a specific person was working and when they were not. That is why there is no upload, no account and no transfer to third parties here. The clear button, or clearing your browser data, removes the rows for good.

Frequently asked questions

How does the calculator handle a shift that runs past midnight?

If the end time is earlier than the start time, the calculator treats the end as being on the following day. A shift from 22:00 to 06:00 therefore counts as eight hours, not as minus sixteen. Identical start and end times count as zero, not as a full day, because that is almost always a typo rather than a 24-hour shift.

What is the difference between decimal hours and h:mm?

h:mm is the way people speak, 8:15 means eight hours and fifteen minutes. Decimal hours are the way payroll systems calculate: the same span is 8.25, because a quarter of an hour is 0.25 hours. The calculator shows both for every row and for the total, so you can copy whichever your form asks for.

Is the break reminder legally binding?

No. It mirrors section 4 of the German Working Hours Act (ArbZG): more than six and up to nine hours of working time require at least 30 minutes of break, more than nine hours require 45 minutes. The calculator never shortens your entry on its own, it only points out a gap. Collective agreements, company agreements and the law of other countries can demand more.

Does my timesheet get uploaded anywhere?

No. Every calculation runs in your browser, and the table is stored only in this browser's local storage so you can close the page and come back later. Working times reveal when a specific person was at work, which is personal data under the GDPR, so it is better off staying on your device. Clearing the table or your browser data removes it.

Can I get the table into Excel or Google Sheets?

Yes. The CSV export writes one line per completed day plus a total line, semicolon-separated and with a UTF-8 marker so that German Excel shows columns and umlauts correctly right away. Cells that would start with =, + or @ get an apostrophe in front so a spreadsheet cannot read them as a formula.