Yes—you can make a monthly timesheet template in Google Sheets by setting up columns for date, employee, start time, end time, unpaid break, and paid hours, then copying a simple hours formula down the month. Use one row per employee per workday for a basic schedule, or one row per shift if people may work multiple shifts in a day.
What a monthly timesheet should track
A useful timesheet records enough detail to explain how each total was calculated, without making daily entry cumbersome. For a straightforward employee schedule, create columns for Date, Employee, Project or task, Start, End, Unpaid break, and Paid hours. Add optional columns such as location, notes, approval status, or a manager’s initials if they serve a real workflow.
Decide what a row represents before entering data. One row per employee per day is easy to read when there is only one continuous shift. If a person can clock out and return later, use one row per shift instead; repeat the date and employee name for each shift. This avoids trying to squeeze separate start and end times into a single pair of cells.
- Date: The calendar day the shift began. Agree on how to label shifts that continue past midnight.
- Start and end: Actual clock times, entered as time values rather than text.
- Unpaid break: The length of unpaid time, entered as a duration such as 0:30 for 30 minutes.
- Paid hours: A calculated result, not a number staff have to work out themselves.
- Project or task: Optional, but helpful when hours need to be grouped by client, job, or department.
Set up the month in Google Sheets
In Google Sheets in a web browser, open a blank spreadsheet or start from a suitable item in the Sheets template gallery if one is available. A gallery template may not match your organization’s rules, so check its columns and calculations before using it. A blank sheet gives you control over the layout.
Put a date from the month being recorded in B1—for example, enter January 1, 2026, and format it as a date. Label A1 “Month” and make a header row on row 2: Date in A, Employee in B, Project in C, Start in D, End in E, Unpaid break in F, and Paid hours in G. In this example, rows 3 through 33 provide 31 rows, one for each possible day in a month. For several employees, plan for more rows or keep a separate tab for each employee.
With the first day of the month in B1, put this in A3, then fill it down through A33. The formula displays dates belonging to the selected month and leaves the extra rows blank in shorter months:
With the month’s first date in B1 and the first date row in A3, use =IF(MONTH(DATE(YEAR($B$1),MONTH($B$1),ROWS($A$3:A3)))=MONTH($B$1),DATE(YEAR($B$1),MONTH($B$1),ROWS($A$3:A3)),""). For January 2026, the first row returns January 1, 2026; the row for day 31 returns January 31, and rows beyond the month remain blank.
Format the date column with Format > Number > Date. Format Start and End as times, and Unpaid break as a duration. One way to set the latter is to use Format > Number > Duration. A duration is important: entering 0:30 as a time of day can be confusing, while a duration makes clear that the value means half an hour.
Calculate paid hours, including overnight shifts
With Start in D, End in E, Unpaid break in F, and Paid hours in G, enter the following formula in G3 and fill it down. It leaves the result blank until both clock times have been entered, accounts for a shift that crosses midnight, and subtracts the unpaid break:
With the shift’s start in D3, end in E3, and break duration in F3, use =IF(OR(D3="",E3=""),"",MAX(0,MOD(E3-D3,1)*24-IF(F3="",0,F3*24))). For a shift from 9:00 a.m. to 5:00 p.m. with a 30-minute unpaid break, it returns 7.5 hours. For a shift from 10:00 p.m. to 6:00 a.m. with the same break, it returns 7.5 hours.
The MOD calculation treats a negative end-minus-start time as a shift continuing into the next day. This is useful for overnight work, but it does not determine which date your workplace should assign to that shift. Agree on a date convention and apply it consistently. The formula also assumes the break is unpaid and that the break duration is entered as a time duration; it does not decide whether a break should be paid.
Format the Paid hours column as a number, such as two decimal places, rather than as a time of day. A value of 7.5 then means seven and a half hours. Do not round each shift automatically unless that matches your timekeeping policy: rounding individual entries can produce a different monthly total from adding exact durations and rounding once at the end.
Build monthly and employee totals
For a one-person sheet with daily entries in G3:G33, place a label such as “Monthly total” below the entries and sum the hours. With paid hours in G3:G33, use =SUM(G3:G33). If the illustrative entries are 7.5 hours on 20 workdays and blank on the other days, the result is 150 hours.
For a shared sheet with several employees, a summary table can total each person’s hours. Put an employee name in B36, then calculate that person’s total from the employee and hours columns. With employee names in B3:B100, paid hours in G3:G100, and the name to summarize in B36, use =SUMIF($B$3:$B$100,B36,$G$3:$G$100). If the matching rows contain 7.5, 8, and 6 hours, the result is 21.5 hours. Copy the formula down beside other employee names.
Keep the summary ranges broad enough for the rows you expect to use, but avoid including unrelated data. If this is a multi-person log, the 31-row daily-date setup is not enough by itself: add rows for each person and shift, and enter or copy the appropriate date on each row. A separate tab per month can make review easier, while one continuous log with a date column can make searching across months easier.
Make data entry clearer and safer
Reduce avoidable entry errors by separating input cells from calculated cells. For example, use one fill color for the date and clock-time fields and a different, muted fill for formula results. Add a note beside the headers explaining the required time format and whether breaks are entered as durations. Freeze the header row with View > Freeze so column labels stay visible as the sheet grows.
For employee names or project categories, a dropdown can help keep spelling consistent. Select the relevant cells and use Data > Data validation to configure a dropdown from a list or range. Consistent names matter because “Sam Lee” and “Samuel Lee” may be counted as different entries in a summary. Protect formula cells if several people will edit the sheet: use Data > Protect sheets and ranges, then set access appropriate to the team. Protection helps prevent accidental changes; it is not a substitute for controlling who can view the file.
Conditional formatting can draw attention to missing or unusual entries. Select the relevant range and choose Format > Conditional formatting. For example, highlight blank end times in rows where a start time exists, or visually flag a very long shift for review. Treat a flag as a prompt to check the record, not proof that the entry is wrong; legitimate work patterns vary.
Common problems and how to fix them
- The formula shows a decimal such as 0.3125. That is a fraction of a day, not necessarily a bad calculation. For decimal work hours, multiply the time difference by 24 as in the formula above, and format the result as a number.
- A time is treated as text. Check whether the cell contains a recognizable time value, and re-enter it using a consistent format such as 9:00 AM or 17:00. Formatting alone may not convert text that was pasted into the sheet.
- A break is subtracted incorrectly. Enter 30 minutes as a duration, not the number 30 and not a clock time such as 12:30 PM. Confirm that the break is meant to be unpaid before subtracting it.
- The monthly total is lower than expected. Look for hours stored as text, missing end times, rows outside the SUM range, or inconsistent employee names. Also confirm that overnight shifts are entered with the correct start and end values.
- A row for the next month appears. Check that B1 contains a real date in the intended month and that the date formula was copied into the intended rows. The example formula hides dates from the next month, but it depends on B1 being a valid date.
Google Sheets versus Excel and paper timesheets
Google Sheets is useful when several authorized people need to update a shared record and a manager wants to review entries without collecting separate files. In a browser, collaborators can work in the same spreadsheet, and the owner can manage sharing permissions. That convenience also means the spreadsheet should be shared only with people who need access, especially if it contains employee schedules or other sensitive details.
Excel can use similar date, time, and SUM formulas, but Google Sheets menu names and collaboration behavior are not identical to Excel’s. If a workbook is downloaded or opened in Excel, check that formulas, formats, and dropdown rules still behave as intended. A paper timesheet may be more suitable when staff cannot access a device at work, but totals then need to be transferred and checked manually. For a large workforce, complex shift rules, or formal approval and payroll workflows, dedicated time-tracking software may provide controls that a spreadsheet does not.
Costs, access, and recordkeeping
A basic template can be created in Google Sheets without buying a separate timesheet file. Whether a particular Google account or organization has additional storage, sharing, or administrative features depends on its plan and settings, so check the account’s current terms rather than assuming every feature is included. A paid template may save setup time, but inspect its formulas, permissions, and compatibility before entering real employee information.
Keep a clear approval process: staff should know when entries are due, who reviews corrections, and how a final period is marked as approved. Preserve the original entries or record corrections transparently instead of silently overwriting disputed figures. A spreadsheet can help organize time records, but it does not establish that a schedule or payroll calculation complies with applicable workplace requirements. Confirm recordkeeping and pay practices with the organization’s payroll specialist or a qualified professional.
Frequently Asked Questions
Does Google Sheets have a monthly timesheet template?
Sheets may offer relevant starting points in its template gallery, but the available choices can vary and a template may not match your workplace’s rules. You can also create a blank sheet with date, start, end, break, and hours columns and add the formulas above.
How do I calculate hours worked in Google Sheets?
Enter start and end times as time values, subtract any unpaid break duration, and convert the result to decimal hours. The MOD-based formula in this guide also handles a shift ending after midnight. Check that your break and date conventions match your organization’s process.
Can a Google Sheets timesheet calculate overtime?
A sheet can total hours and apply a rule you define, but overtime rules depend on the applicable policy and circumstances. Do not assume that a single weekly or daily threshold is correct for every worker. Confirm the rule with payroll or a qualified professional before building it into a formula.
How do I make a timesheet for multiple employees?
Use one row per employee per shift, with a consistent employee name in each row, then summarize hours with SUMIF or a pivot table. Add rows beyond the 31 calendar days when several people work on the same date; a single row per day cannot represent multiple employees accurately.
Can I use the same template every month?
Yes. Make a copy of the tab or file, change the month-start date, and check that the date formulas and summary ranges cover the entries for that month. If you keep one continuous log instead, include a date on every shift and filter the records by month when reviewing them.
Related
- INDEX MATCH in Google Sheets: Search Another Sheet
- How to Filter Rows in Google Sheets
- Word: Make One Page Landscape Without Changing Others
Try it: the Date Difference Calculator: days, months, years and weekdays between two dates, with the DATEDIF formulas.
More in How-to basics
- How to Add a Header to Every Page in Microsoft WordTo add a header to every page in Word, choose Insert > Header, select a layout, and type…
- Google Sheets IFS With Text: Syntax, Examples, and TipsYes—Google Sheets’ IFS function can test text directly: put the text in double quotes in each condition, then…
- Outlook Share Calendar Permissions: A Practical GuideOutlook calendar permissions control what another person can see or do in your calendar: depending on the access…
- How to Add a Custom Slide Number in PowerPointTo add a custom slide number in PowerPoint, turn on the slide-number field with Insert > Header &…
- Outlook Email Scheduling: How to Send Messages LaterTo schedule an email in Outlook, write the message, open the menu beside Send, choose Schedule send, and…
- Can You Split a Column in Google Sheets? Here’s HowYes. In Google Sheets, select the cells you want to divide and choose Data > Split text to…
Sources: Function behaviour and menu paths: Microsoft Support documentation for Excel. Method & sources
Spotted an error in this guide? Let us know.