---
title: "How to Calculate Work Hours with a Lunch Break"
description: "Take the shift span, then subtract the minutes you were not working; the traps are units and the size of the break. Overnight shifts work the same way."
canonical: "https://freeaigeneration.com/en/guides/how-to-calculate-work-hours-with-a-lunch-break/"
robots: "noindex"
lang: "en"
---

# How to Calculate Work Hours with a Lunch Break

Thirty minutes off a nine-to-five day leaves seven and a half hours. If you need to calculate work hours with break time removed, that single subtraction is the whole method: a span you already know, minus the minutes you were not working. What goes wrong is usually the units or the size of the break rather than the arithmetic.

## The break lives in one field, in minutes

Each row of the work hours calculator has an "Unpaid break" field measured in whole minutes. Leave it empty or type zero and no deduction happens. Type 30 for half an hour, 45 for three-quarters of an hour. Typing 0.5 will not give you half an hour, because the field counts whole minutes.

The label is literal: the break is unpaid and it is subtracted from the time between start and end. There is no paid-break option and no attempt to detect the lunch period from the two clock times. If your break is paid, the number you want is the span with nothing deducted, and this page is not the right model for it.

## Three breaks, worked out

09:00 to 17:00 with a 30-minute break: 480 − 30 = 450 minutes = 7:30, or 7.5 decimal hours.

08:00 to 16:30 with a 45-minute break: 510 − 45 = 465 minutes = 7:45, or 7.75 decimal hours.

09:00 to 10:00 with a 60-minute break: 60 − 60 = 0, reported as 0:00. Exactly zero is accepted and is not treated as an error.

That last case is the useful edge of the design. The calculator does not clamp the day to a minimum, does not refuse a break as long as the shift, and does not quietly substitute a default lunch. It reports what the arithmetic produces.

## Where it refuses the break

A break longer than the span is not a negative day. The row shows "The break is longer than the time between start and end" and contributes zero to the total, so 09:00 to 10:00 with 90 minutes is an error rather than a credit of minus 30 minutes.

Two smaller rules follow from the same design. The break cannot be negative, and it carries no seconds. A one-minute break is a valid entry, and so is a break that consumes the entire shift.

## Overnight shifts subtract the same way

Start 22:00 and end 06:00 is one wrap past midnight, an 8-hour span. Enter a 30-minute break and the day is 480 − 30 = 450 minutes, decimal 7.5. The wrap is applied before the deduction, so the two clock times never have to be reordered by hand.

## One break per day, and what that implies

Each row holds one shift and one break. Two breaks in a day — a short morning pause and a longer lunch — have to be added together and entered as a single number of minutes. Splitting the day into two rows to get two break fields is not an option, because a row is a day.

Whether a break should be paid, how long it must be and whether it can be split are matters of workplace policy and law rather than arithmetic; the calculator never asserts a length. The general gross-to-net deduction and its edge cases are covered in [how to deduct break time from work hours](/en/guides/how-to-deduct-break-time-from-work-hours/), and the full day formula around the same break field is in [how to calculate work hours in a day](/en/guides/how-to-calculate-work-hours-in-a-day/).

The [Work Hours Calculator](/en/utilities/date-time/work-hours-calculator/) applies the deduction in whole minutes and reports the day in h:mm and decimal hours. It runs in your browser, no FreeAIGeneration account required, and the grid is gone as soon as the tab closes.
