Loona Automation

Semi-Monthly & Monthly Timesheet Calculator

Paid twice a month? Enter the whole month once and see both semi-monthly pay periods side by side — with overtime calculated the legal way, week by week.

In short: build a full month of shifts and get totals for the 1st–15th and 16th–end pay periods plus the whole month. Overtime is still scored inside each Sunday–Saturday workweek, because that is how the law counts it.
Time Card CalculatorHours CalculatorOvertime CalculatorCalifornia Overtime CalculatorTime and a Half CalculatorMinutes to Decimal Hours Converter

Semi-Monthly & Monthly Timesheet Calculator

One row per date. Monday–Friday start ticked; untick days you did not work. Overtime is scored per workweek (Sunday–Saturday), then the month is totalled for the 1st–15th and 16th–end pay periods.

How It Works — The Rule Behind This Calculator

Semi-monthly pay (24 paydays a year) splits the month into the 1st–15th and the 16th–end. That split is only about when you are paid. Overtime law does not recognise pay periods at all — it counts hours inside a workweek. This calculator therefore does both jobs honestly: it attributes every hour to its Sunday–Saturday workweek to find the overtime, then presents the totals in the two semi-monthly periods your payroll uses.

One honest limitation: if your employer's official workweek does not start on Sunday, your overtime attribution at a period boundary can differ by a few hours. The monthly total hours and pay shown here stay the same either way in most cases; your employer's workweek definition is the official one.

Related Hours Tools

Frequently Asked Questions

What is the difference between semi-monthly and biweekly pay?

Semi-monthly means 24 paydays a year (for example the 15th and the last day). Biweekly means 26 paydays a year (every second Friday). The pay-period lengths differ, but overtime is always calculated per workweek in both systems.

Why is overtime not calculated on the whole month?

The FLSA defines overtime strictly by the workweek — hours over 40 in one workweek. A month always contains parts of four or five workweeks, so monthly totals are built up from the weekly splits, never the other way round.

Which days are pre-ticked?

Monday to Friday. Untick weekends you did not work, or tick them if you did — every date's hours come only from rows left ticked.

Can I use this for a single semi-monthly period?

Yes — read the row for the period you need (1st–15th or 16th–end) in the results table. The whole-month row is there for monthly-paid staff.

How it works — the formula

A month contains pieces of five or six different workweeks, and overtime law only recognises the workweek — so this calculator scores the month week by week and only then presents it as a month. Every worked day is measured, the days are grouped into Sunday–Saturday workweeks, and each week is split on its own: first 40 hours regular, the rest overtime. The month's totals are the sum of those weekly splits, and the same day-by-day split is re-added into the two semi-monthly periods (1st–15th and 16th–end) so you can see gross pay per period.

The formula: Per day: paid minutes = (clock-out − clock-in, +24h if overnight) − break (unless breaks are paid). Per Sunday–Saturday week: regular = first 40 hours, overtime = hours past 40. Month gross = (regular hours × rate) + (overtime hours × rate × 1.5), summed over all weeks in the month.

Worked example

Take February 2026: you work Monday to Friday, 9:00 AM to 6:00 PM, with a 30-minute unpaid break, at $20/hour — 8.5 paid hours a day. Each Sunday–Saturday week contains five such days, 42.5 hours, so every week splits into 40 regular + 2.5 overtime. Across the month's four full weeks that is 170:00 hours — 160:00 regular and 10:00 overtime — and a gross of $3,500.00 ($3,200.00 + $300.00). Each semi-monthly period shows 85:00 hours and $1,750.00 of gross pay.

Frequently asked questions

Which workweek does this page use?

Weeks are grouped Sunday to Saturday, and overtime is counted inside those weeks. If your employer's official workweek starts on another day, the boundary weeks of a month can attribute overtime slightly differently — the method is identical, but your employer's workweek definition controls your actual pay.

What are the grid's default times?

Every date starts at 9:00 AM in and 5:30 PM out with a 30-minute break, and Monday to Friday dates start ticked as worked. Change any day individually — a half day, a day off, a longer Friday — and the weekly splits, period totals and gross all recalculate from the grid as entered.

Can I untick a holiday or add a Saturday?

Yes. Unticking a weekday removes its hours entirely (the standard way to handle holidays, sick days and vacation), and ticking a Saturday or Sunday adds that day to its workweek — which is often what pushes that week past 40 hours into overtime.

Why does a month with the same daily hours show different overtime in different months?

Because overtime follows the Sunday–Saturday weeks, not the calendar. A month whose weekdays split as 5-5-5-5 across four weeks behaves differently from one split 3-5-5-5-2 across five partial weeks, even with identical daily hours — the edge weeks may not reach 40 hours, or a worked weekend may land in a week that does.

Does a shift that crosses midnight work here?

Yes. A clock-out at or before the clock-in is counted into the next day, so a 10:00 PM to 6:00 AM shift measures 8 hours (before break) on the date it starts — the same overnight handling used across the Loona Hours tools.

Disclaimer: Estimates only — not payroll or legal advice. Your employer's payroll rules and state law control your actual pay. Figures are rounded for display; your pay stub and payroll department are the official record.

Embed this calculator on your website — free

Add this calculator to your own website or blog — it is completely free, needs no sign-up, and always shows the latest version. Copy the code below and paste it into your page where you want the calculator to appear. Keeping the small “Powered by Loona Automation” credit line under the embed helps keep this tool free — but you are free to style or remove it; the tool works either way.