◷ timesheetcalculator.co
Free tools. Clear totals.

Semi-Monthly Timesheet Calculator

Pay periods that follow the calendar, with overtime still on the workweek.

Week of 2026-10-26 · Pending — 6 context days without complete records or confirmation
Mon10-26outside pay period · prior half
Tue10-27outside pay period · prior half
Wed10-28outside pay period · prior half
Thu10-29outside pay period · prior half
Fri10-30outside pay period · prior half
Sat10-31outside pay period · prior half
Sun11-01
Week of 2026-11-02 · Complete
Mon11-02
Tue11-03
Wed11-04
Thu11-05
Fri11-06
Sat11-07
Sun11-08
Week of 2026-11-09 · Complete
Mon11-09
Tue11-10
Wed11-11
Thu11-12
Fri11-13
Sat11-14
Sun11-15

This semi-monthly timesheet calculator builds the real calendar dates of a half-month — the 1st through the 15th, or the 16th through the end of the month — and totals the periods you enter per date. Weekly overtime keeps its fixed workweek boundary: the covered workweeks are evaluated separately, with days from the neighbouring half-month entered as context.

Real calendar halves, 13 to 16 days

Pick a year and month, then the first half (1–15) or the second half (16–end). The rows are the actual dates: 15 days in the first half; 13 days for a common February’s second half, 14 in a leap year; 15 for a 30-day month; 16 for a 31-day month. Nothing is stretched from a 14-day biweekly template, and the 16-date second half of a 31-day month is not the first half plus 14 days — each date is generated from the real calendar, including leap years.

Weekly overtime stays on fixed workweeks

A half-month is a pay period, not a workweek, so this page never applies a 40-hour threshold to 15 pooled days and never resets overtime at the 16th. Each fixed workweek (Monday or Sunday start) that overlaps the period is evaluated on its own seven days with the shared engine, exactly as the weekly card does. A workweek split across two pay periods keeps its hours together for the overtime decision, and no averaging between weeks happens anywhere.

Entering prior-half context days

When a workweek straddles the boundary — for example the week of the 27th reaching into the new month — the days that fall outside this pay period appear as clearly marked context rows. Enter the hours from the neighbouring half-month there, or tick the week’s confirmation that those context days had no work. While context days are neither entered nor confirmed, the week is marked pending: the period’s net hours still display, but the affected overtime and the pay total stay pending instead of silently treating the missing days as zero.

Reading totals, overtime and pay

The period total is the sum of your in-period day totals. Overtime is attributed along each workweek in date order: only the minutes above the weekly threshold that land on in-period dates count here, so a week that crosses the boundary contributes exactly the overtime its in-period days earned. Estimated pay is regular minutes × rate plus in-period overtime × rate × multiplier, shown only when a rate is entered and every covered week is complete; otherwise the panel says pending. Different rates per job, taxes and daily/state rules stay outside.

Pay periods are not workweeks

Semi-monthly schedules pay twice a month — typically 24 periods a year — while biweekly schedules produce 26; the two counts are different things, and neither replaces the fixed workweek as the overtime boundary. If your records fit a two-week rhythm, the biweekly timesheet calculator is the closer match. This page exists for the calendar-month payroll rhythm: its periods vary in length, and the tool follows the calendar rather than a fixed span.

Exports, limits and privacy

Download CSV and Copy summary list the in-period records in date order, then one summary line per covered workweek with its context hours and status, then the period totals and the pay state. Printing gives the same readable report. Periods and context days are stored per real date in this browser, so switching months and back never re-dates your work; Reset clears this tool’s saved card only. Invalid times and incomplete pairs are flagged with the same rules as the weekly card, including overnight handling assigned to the starting date.

Frequently asked questions

How many days does a semi-monthly period have?

The first half is always the 1st–15th, or 15 days. The second half runs from the 16th to the end of the month: 13 days in a common February, 14 in a leap year, 15 in a 30-day month and 16 in a 31-day month. The page generates the real dates for the month you pick.

Is overtime calculated on the 15-day pool?

No. The 40-hour threshold is applied to each fixed workweek the period overlaps, on its own seven days. A 15-day pool would be an 80-hour-style error by another name, and no averaging between workweeks happens.

What are context days for?

A workweek that starts before the period (or ends after it) still shares its hours with the period. Context rows hold the neighbouring half-month’s days so the weekly overtime is computed on the whole week; they are marked outside the pay period and never counted in the period totals.

Why does my pay say pending?

At least one covered workweek has context days with neither entered hours nor a confirmation that they had no work. The period’s net hours remain visible, but the overtime and pay stay pending until the context is entered or confirmed — missing days are never assumed to be zero.

What happens to a week that extends past the month end?

The same rule applies in both directions: days after the period end belong to the next half-month, appear as context rows, and keep that week’s overtime pending until they are entered or confirmed as days without work.

Does my saved work move when I switch months?

No. Every period and context day is stored under its real calendar date. Moving between months or halves only changes which dates are on screen, so restoring a saved card can never attach work to the wrong day.