Google Sheets Timesheet Template: Build One in 10 Minutes (Formulas Included)

Google Sheets Timesheet Template: Build One in 10 Minutes (Formulas Included) — Small business team meeting about schedules, hours, and payroll

You don't need to download anything to get a working timesheet — Google Sheets can do the job with seven columns and two formulas. This guide walks through the exact setup: columns, time math, weekly totals with overtime, conditional formatting that flags long days, and how to share the sheet with employees. It also covers where a spreadsheet timesheet stops being worth the effort.

Set up the columns

Open a new sheet and label row 1 left to right: Date (A), Time In (B), Time Out (C), Break Minutes (D), Daily Hours (E), Notes (F). Put the employee's name and the week's date range in a header row above that, because you'll eventually have dozens of these tabs and you want each one self-identifying when it's printed or exported to PDF.

Fill column A with the seven dates of the workweek — one row per day, Monday through Sunday or whatever your workweek is. Keeping it to exactly one week per tab (or one week per block of rows) matters more than it looks: federal overtime under the FLSA is calculated per workweek, time-and-a-half on hours over 40, so weekly subtotals aren't optional decoration. They're where the overtime math happens.

Format columns B and C as times before anyone types in them: select the columns, then Format → Number → Time. This forces entries like 9:00 AM and 5:30 PM to be stored as real time values instead of text, which is what makes the math in the next step work.

The formula that turns clock times into hours

In E2, enter: =(C2-B2)*24-D2/60. Google Sheets stores times as fractions of a day, so subtracting Time In from Time Out gives you a fraction — multiplying by 24 converts it to hours. Dividing break minutes by 60 converts the break to hours and subtracts it. In at 8:00 AM, out at 4:45 PM, 30-minute lunch: (16.75 − 8.00) − 0.5 = 8.25 hours.

Format column E as a plain number with two decimals (Format → Number → Number), not as a time. You want 8.25, not 8:15 — payroll math runs on decimal hours, and a classic spreadsheet timesheet error is treating 8:30 (eight hours thirty minutes) as 8.30 when it's actually 8.50.

Drag the formula down through all seven day rows. If someone works past midnight, the basic formula breaks because Time Out is 'earlier' than Time In — swap in =MOD(C2-B2,1)*24-D2/60, which handles overnight shifts correctly. If your team regularly crosses midnight, that one change saves you a weekly headache.

Weekly totals and the overtime split

Below the day rows, add three labeled cells. Total Hours: =SUM(E2:E8). Regular Hours: =MIN(SUM(E2:E8),40). Overtime Hours: =MAX(SUM(E2:E8)-40,0). That MIN/MAX pair caps regular time at 40 and pushes everything above it into overtime, which is exactly how the federal workweek calculation works.

If you're in a state with daily overtime rules (California is the well-known one), weekly-only math undercounts. You'd need a per-day overtime column with its own formula, and at that point the spreadsheet is getting genuinely complicated — check your state's rules before assuming the simple version covers you.

One more guardrail worth adding: conditional formatting. Select column E, then Format → Conditional formatting → 'Greater than' → 10, and pick a red fill. Now any day over 10 hours jumps out during review, which catches both genuine long days and typos like a 5:30 PM out-time entered as 5:30 AM.

Sharing it with employees without losing control

The simple setup: one spreadsheet per employee, shared to their Google account with Editor access, with a new tab duplicated each week. They fill in times, you review the totals. Use File → Make a copy on a clean template tab each week so formulas never get retyped.

If you want one master spreadsheet for the whole team, give each employee their own tab and use Data → Protect sheets and ranges to lock everyone out of tabs that aren't theirs — and to lock the formula column on every tab so nobody overwrites =(C2-B2)*24 with a hand-typed number. Protecting the formula cells is the difference between a timesheet and a suggestion box.

Set the spreadsheet's sharing to specific people, not 'anyone with the link.' Timesheets contain names and work patterns, and a public link to that is a problem waiting to happen.

Where a Google Sheets timesheet falls short

A google spreadsheet timesheet template records what people say they worked, after the fact. Nobody fills it in at 8:00 AM on Monday — they reconstruct the week on Friday from memory, and reconstructed time is rounded, generous, and occasionally just wrong. The sheet also can't tell you who's clocked in right now, can't stop a buddy from entering a coworker's times, and can't timestamp anything.

The hidden cost is yours, not theirs: chasing unsubmitted sheets, spot-checking formulas someone overwrote, copying totals into payroll by hand, and keeping a tab-per-week-per-employee structure organized for the multi-year record retention that wage laws expect. At two or three employees it's tolerable. At ten it's a part-time job.

A free time clock fixes the recording problem at the source — employees punch in and out in real time from a browser or a shared kiosk, the timestamps are real, and the weekly totals with overtime are computed for you. Kloqk's time clock is free, so the spreadsheet's main advantage (price) isn't actually an advantage. Keep Sheets for what it's great at; let the clock do the clocking.

Frequently asked questions

Does Google Sheets have a timesheet template?

Google's built-in template gallery doesn't include a dedicated timesheet, but you can build one in about ten minutes: columns for Date, Time In, Time Out, and Break Minutes, plus the formula =(C2-B2)*24-D2/60 to compute daily hours and a SUM with a 40-hour split for weekly regular and overtime totals.

What is the formula to calculate hours worked in Google Sheets?

Use =(TimeOut-TimeIn)*24-BreakMinutes/60, for example =(C2-B2)*24-D2/60. Sheets stores times as fractions of a day, so multiplying by 24 converts the difference to decimal hours. For shifts that cross midnight, use =MOD(C2-B2,1)*24-D2/60 instead.

How do I calculate overtime in a Google Sheets timesheet?

Total the week's hours with =SUM(), then split: regular hours =MIN(total,40) and overtime hours =MAX(total-40,0). Under the FLSA, hours over 40 in a workweek are paid at 1.5×. Some states add daily overtime rules, so check your state before relying on weekly-only math.

Should I use a spreadsheet or a time clock app for employee time tracking?

A spreadsheet works for a very small team that fills it in honestly and on time, but it relies on memory, has no real timestamps, and breaks when formulas get overwritten. A time clock records punches as they happen and totals everything automatically — and free options exist, so cost isn't the deciding factor anymore.

Free HR & payroll tips for small business

One short, useful email — wage-law changes, deadlines, and tools. No spam, unsubscribe anytime.

Keep reading

Track hours the easy way

Kloqk is a free time clock that handles punches, breaks, overtime, and payroll-ready reports.

Start free

Free HR & payroll tips for small business

One short, useful email — wage-law changes, deadlines, and tools. No spam, unsubscribe anytime.