Short answer: Use a free Google Apps Script that adds up each employee's hours for a pay period, splits out overtime over 40 hours a week, works out gross pay from their hourly rate, and can email each person their hours. It runs in your own Google account; nothing is sent to us. Setup takes 5 steps: Make an Hours tab; Make a Rates tab; Paste the script; Build the totals; Send everyone their hours.
How to set it up
- Make an Hours tab. Add a tab called Hours with these columns from A to E: Date, Employee, Time in, Time out, Break (minutes). One row per shift. A shift that ends after midnight is counted correctly.
- Make a Rates tab. Add a tab called Rates with Employee, Hourly rate and Email. The names must match the Hours tab exactly.
- Paste the script. Open Extensions, then Apps Script, paste in the code from our email, and save. Reload the sheet and a Payroll menu appears.
- Build the totals. Choose Payroll, then Build pay period totals, and type the period, for example
2026-11-01 to 2026-11-14. A Summary tab shows each employee's regular hours, overtime hours, rate and gross pay. - Send everyone their hours. Choose Email each employee their hours to email each person their regular and overtime hours for that period, so they can flag mistakes before payday.
Want this set up for your business? Free written scope in 20 minutes
Get the script
Download it free
We'll email you the script (Code.gs). It runs in your own Google account; nothing is sent to us.
Have us install it for you
We set it up in your Google account in a short Connect session, connect it to your sheet and check that it runs.
Good to know
- Overtime here is hours over 40 in a Monday-to-Sunday week, paid at 1.5 times the rate. Some states also have daily overtime rules, so check yours.
- Gross pay is before taxes and deductions. The script does not run payroll or file anything; it gives you the numbers to enter in your payroll service.
Questions
What does this script do?
It is a free Google Apps Script that adds up each employee's hours for a pay period, splits out overtime over 40 hours a week, works out gross pay from their hourly rate, and can email each person their hours.
How do I set it up?
In 5 steps: 1. Make an Hours tab; 2. Make a Rates tab; 3. Paste the script; 4. Build the totals; 5. Send everyone their hours. The full steps are on this page.
Is it free, and does it send my data anywhere?
It is free: enter your email on this page and we email you the script (Code.gs). It runs in your own Google account; nothing is sent to us.
Can you install it for me?
Yes. We set it up in your Google account in a short Connect session, connect it to your sheet and check that it runs.
Want it wired into QuickBooks, your CRM or your payment system? Send us a short brief.
Pushbuild · Automate your business with Pushbuild: pushbuild.com/