Skip to main content
CalcMax

Overtime Calculator

Range: 0 – 24

Range: 1 – 5

Range: 0.01 – 1,000,000,000

Result

307.50

Total pay

Regular pay
240.00
Overtime pay
67.50
Overtime hours
1.50 hours
Blended hourly rate
32.37

An overtime calculator answers a question a timesheet cannot: not how many hours a week you worked, but what one shift is worth once the hours past the regular day are paid at a higher rate. The shape of the page comes from that. Enter the clock times the shift started and ended, the number of hours in the shift that count as ordinary, the multiplier the extra hours are paid at, and the hourly rate, and the panel returns the total for the day, with the ordinary pay, the overtime pay, the overtime hours and the blended rate underneath it. The default shift runs 09:00 to 18:30 with eight ordinary hours at 30 an hour and a multiplier of 1.5, which is nine and a half hours: eight of them at 30 make 240.00, the remaining 1.5 at 45 make 67.50, and the day is 307.50. The middle figure is the one worth checking by hand, because 1.5 hours at one and a half times the rate is a multiplication anybody can run on a napkin. A clock time is used rather than a number of hours because the hours are then a result rather than an input, and that buys one behaviour worth knowing about: a shift whose end time is earlier than its start time is read as running past midnight, so 22:00 to 06:00 is eight hours and not minus sixteen. A night shift is exactly where overtime tends to accumulate, and reading it as a negative duration would make the page useless on it. Two conventions hold the arithmetic together. The hours are rounded to two decimals before any money is computed from them, so the figures on the panel explain each other rather than each being derived from a slightly different duration. And the shift length is read whole: this page takes the time between the two clock times as working time and does not subtract a break, because a break is a field on a different calculator and giving it a second home would give a working day two definitions. The last row is the blended rate, which is the day's total divided by its length: at the default it is 32.37, and it is neither the ordinary rate of 30 nor the overtime rate of 45, which is the whole point of printing it.

Overtime hours, and what each adds to a day at 30 an hour with a multiplier of 1.5

Overtime hoursOvertime payTotal pay
00240
0.522.5262.5
145285
290330
4180420
8360600

Every row locks the rate at 30, the multiplier at 1.5 and the ordinary hours at 8, and moves only the hours past that line, so the last column is 240.00 of ordinary pay plus whatever the middle column says. The first row is the one that earns its place: at no overtime the middle column is zero and the total is still 240.00, which is the difference between an overtime row that is empty and a day that was not paid. Reading down, the overtime pay moves in a straight line — half an hour is a quarter of two hours — because the multiplier is constant; nothing in the table compounds, and the eighth row is exactly eight times the one-hour row. The table stops at eight overtime hours, which with eight ordinary ones is a sixteen-hour day: past that the shift is long enough that the interesting question stops being the arithmetic.

Formula

Shift length = end time − start time(crossing midnight adds 24 hours) | Total pay = rate × ordinary hours + rate × multiplier × overtime hours

startTime
The clock time the shift begins, in 24-hour form. It is what makes the length a result rather than an input, and it is what lets a shift running past midnight be written the way it is written on a rota
endTime
The clock time the shift ends. Earlier than the start time means the shift crossed midnight, so the difference has 24 hours added to it; equal to the start time means a length of zero
regularHoursPerDay
How many hours of the shift are ordinary. It is the line the whole page turns on: hours up to it are paid at the rate, hours past it are paid at the rate times the multiplier
overtimeMultiplier
What the hours past that line are paid at, as a multiple of the ordinary rate. It is a field rather than a constant, so the page works for 1.5, for 2 and for whatever a contract or a local rule actually says
hourlyRate
The ordinary hourly rate. Both the ordinary pay and the overtime pay are multiples of it, which is why a rate of zero would turn the whole panel into zero rather than into an answer
overtimeHours
The shift length minus the ordinary hours, printed because the multiplier is applied to it: without this row the overtime pay cannot be checked by hand
blendedRate
The day's total divided by its length. It sits between the ordinary rate and the overtime rate, and how far between is a measure of how much of the shift was overtime

Use it for one shift whose hours past the ordinary day are paid at a higher rate, and for the two questions that follow from that: what the day comes to, and what the extra hours were worth. Use a weekly timesheet instead when the question spans a week of varying shifts, when breaks have to come off the hours, or when the extra pay depends on the week rather than on the day. The two pages differ by one line, and that line is the number of hours that count as ordinary.

Worked examples

  1. Default shift: 09:00 to 18:30, eight ordinary hours, 30 an hour at 1.5

    1. Shift length: 18:30 − 09:00 = 9.50 hours
    2. Ordinary hours: min(9.50, 8) = 8.00 | overtime hours: 9.50 − 8.00 = 1.50
    3. Ordinary pay: 30 × 8.00 = 240.00
    4. Overtime pay: 30 × 1.5 × 1.50 = 67.50
    5. Total pay: 240.00 + 67.50 = 307.50 | blended rate: 307.50 ÷ 9.50 = 32.37

    The blended rate of 32.37 is the row that carries the most information and is the easiest to skip. It is not the ordinary rate of 30 and not the overtime rate of 45: it is what the whole shift averaged, and one and a half hours of the nine and a half being overtime is what pulls it up by 2.37 rather than by more.

  2. A night shift: 20:00 to 06:00

    1. Shift length: 06:00 − 20:00 = −14.00, so 24 is added = 10.00 hours
    2. Ordinary hours: min(10.00, 8) = 8.00 | overtime hours: 10.00 − 8.00 = 2.00
    3. Ordinary pay: 30 × 8.00 = 240.00
    4. Overtime pay: 30 × 1.5 × 2.00 = 90.00
    5. Total pay: 240.00 + 90.00 = 330.00 | blended rate: 330.00 ÷ 10.00 = 33.00

    Without the midnight rule this entry would read as minus fourteen hours and the whole panel would collapse. With it, the shift is ten hours and two of them are overtime. This is the case the clock-time input exists for: a night shift written on a rota looks exactly like this, and asking for a duration instead would move the arithmetic onto the person filling the form.

  3. No overtime: 09:00 to 17:00

    1. Shift length: 17:00 − 09:00 = 8.00 hours
    2. Overtime hours: 8.00 − 8.00 = 0.00
    3. Ordinary pay: 30 × 8.00 = 240.00 | overtime pay: 30 × 1.5 × 0.00 = 0.00
    4. Total pay: 240.00 | blended rate: 240.00 ÷ 8.00 = 30.00

    An eight-hour shift against a limit of eight produces an overtime row of zero and a blended rate that equals the ordinary rate exactly. That is the arithmetic saying nothing was left over, and it is a more useful answer than a blank row: the shift is inside the line, and the page says so by paying it all at the rate.

  4. A doubled rate: 08:00 to 16:30 at 25 an hour with a multiplier of 2

    1. Shift length: 16:30 − 08:00 = 8.50 hours
    2. Ordinary hours: min(8.50, 8) = 8.00 | overtime hours: 8.50 − 8.00 = 0.50
    3. Ordinary pay: 25 × 8.00 = 200.00
    4. Overtime pay: 25 × 2 × 0.50 = 25.00
    5. Total pay: 200.00 + 25.00 = 225.00 | blended rate: 225.00 ÷ 8.50 = 26.47

    Half an hour at double time is 25.00 on a 25 an hour rate, and the blended rate only moves to 26.47 — a long way from the 50 that the overtime hour itself was paid at. The blended rate is a whole-shift average and never equals the overtime rate unless every hour of the shift was overtime.

Limitations

This page prices one shift. It does not know about a workweek, so anything a rule attaches to the week rather than to the day is outside it: a limit on weekly hours, a seventh consecutive day, or a threshold measured across several shifts. It does not subtract breaks, which is a decision rather than an oversight: the time between the two clock times is read as working time, so a shift with an unpaid lunch in it will be an hour too long and the pay on the panel will be too high. The page that subtracts a break is the weekly timesheet, and it is the right one for a shift with a lunch in it. The multiplier is yours to fill in and the page makes no claim about it: it does not check the number against any law, it does not know which country or state or contract the shift belongs to, and it has no opinion on whether 1.5 is the right multiple for the hours past the ordinary day. For context rather than as an assertion by this page, United States federal law sets a floor of one and one-half times the regular rate for hours beyond forty in a workweek, and some jurisdictions add daily rules on top of that, including a higher multiple past a longer daily threshold — which is one reason the multiplier sits in an input box rather than in the formula. Two conventions of the arithmetic are worth knowing. The shift length is rounded to two decimals before any money is derived from it, so the rows on the panel are consistent with each other; the cost is that a shift ending at 18:07 gets its minutes rounded twice, once into the hours and again when the pay is rounded, which can move a figure by a cent. And a shift of zero length returns a blended rate of zero rather than nothing at all: with no hours there is no blended rate to speak of, and a row that renders blank would look the same as a row that was calculated. A shift whose end time equals its start time is that case, and it is worth being explicit that the zero is the page's convention rather than a computed average. The page cannot tell you whether the rate or the multiple you entered is the one that applies to you, and it cannot back-pay a shift: it prices one day, once.

Frequently asked questions

Why enter clock times instead of the number of hours?
Because it moves one piece of arithmetic off the person filling the form. The shift length is then derived from the two times rather than typed in, and the derivation has a rule for the case that matters most: an end time earlier than the start time is read as crossing midnight, so 20:00 to 06:00 is ten hours. Typing a duration would work for a day shift and would leave a night shift to be worked out by hand, or entered as a negative number, which is exactly the case where overtime tends to pile up.
What is the blended rate, and who uses it?
It is the day's total pay divided by the day's length, so it is what the shift averaged across every hour in it. At the default it is 32.37 against an ordinary rate of 30 and an overtime rate of 45. It is not a rate anybody is paid: no hour of the shift is paid at 32.37. It is useful as a single number that says how much of the shift was overtime, and it is the figure a second job or a contract comparison would need if the question is what an hour of this work averages rather than what it is paid at.
Should a break be subtracted?
Not on this page, and the omission is deliberate. The time between the two clock times is read whole as working time, so a shift with an unpaid hour in the middle comes out an hour long and the pay on the panel is correspondingly high. A break is a field on the weekly timesheet calculator, which spreads a week over fourteen clock times and takes the break off each day; giving a break a second home here would mean two pages disagreeing about how long a working day is. Use that page when the break matters.
Does this page apply the legal overtime rate?
No. The multiplier is an input and the page does not check it. What it does is multiply the hours past your ordinary limit by whatever multiple you typed, which is what makes it usable across contracts and jurisdictions. For context: United States federal law sets one and one-half times the regular rate as the floor past forty hours in a workweek, and some places add daily thresholds with higher multiples — California, for example, sets twice the regular rate past twelve hours in a day. Which of those applies to a given shift is a question about where you work, not about arithmetic.
What happens if the shift is zero hours long?
The overtime rows come out at zero, which is arithmetically true, and the blended rate is shown as zero rather than left blank. That is a convention and it is worth naming: with no hours there is no average to compute, so the honest answer is that the figure does not exist. The page shows a zero because a blank row and a row that was computed and came out at nothing look the same on a panel, and the first of those is much more often a bug than a quantity. Entering 09:00 for both times is what produces this case.
Why is the total on this page called something different from the total on the timesheet page?
Because they are different quantities with different names worth keeping apart. The weekly timesheet returns gross pay: a week of hours at one rate, with breaks subtracted and no overtime in it at all. This page returns the total for a day, which includes the overtime. Two panels printing one label over two different figures is the failure mode being avoided, so the keys differ even though both are money and both sit at the top of their panel.

References

Related calculators