PTO tracker template for Google Sheets and Excel
This free PTO tracker is a spreadsheet with one row per time off request and a Totals tab that counts each person’s days against their allowance. It works in Google Sheets and Excel.
| A | B | C | D | E | F | G | H | I | J | K | L | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Person | From | To | Days | Type | Note | Status | Requested | Clash | Thread | Updated | ||
| Ben Okafor | ben@greenleafstudio.example | 2026-11-05 | 2026-11-06 | 2 | Holiday | Approved | 2026-10-20 | Ana Silva 2026-11-05 to 2026-11-06 | Time off 5-6 Nov, 2026-10-20 | 2026-10-28 | ||
| Ana Silva | ana@greenleafstudio.example | 2026-08-10 | 2026-08-14 | 5 | Holiday | Approved | 2026-07-01 | Summer week, 2026-07-01 | 2026-07-01 | |||
| Ana Silva | ana@greenleafstudio.example | 2026-11-05 | 2026-11-06 | 2 | Holiday | Acme banners done first | New | 2026-10-26 | Ben Okafor 2026-11-05 to 2026-11-06 | Day off request, 2026-10-26 | 2026-10-28 | |
| Chen Wu | chen@greenleafstudio.example | 2026-10-27 | 2026-10-27 | 1 | Sick | New | 2026-10-27 | Off sick, 2026-10-27 | 2026-10-28 | |||
| Dara Kelly | dara@greenleafstudio.example | 2026-10-30 | 2026-10-30 | 0.5 | Holiday | Afternoon | New | 2026-10-27 | Friday afternoon, 2026-10-27 | 2026-10-28 | ||
Time offTotals
Shown with fictional example rows. Your copy starts blank. Updated 14 Nov 2026.
What goes in each column
| Person and Email | Who is asking. Use the same spelling every time so the Totals tab adds up. |
|---|---|
| From and To | The first and last day off, as YYYY-MM-DD. For one day, use the same date twice. |
| Days | Working days from From to To, Monday to Friday, minus public holidays. Use 0.5 for a half day. To count weekdays in the sheet, type =NETWORKDAYS(C2, D2) in row 2, then take off any public holidays yourself. |
| Type | Holiday, Sick or Other, from the dropdown. Keep reasons and health details out of the sheet. |
| Note | Practical details only, such as “afternoon” or “cover arranged”. |
| Status | New when it arrives, then Approved, Declined or Cancelled once you decide. |
| Clash | Who else is off on the same days. The row turns orange while Clash has a name in it. |
| Requested, Thread and Updated | When they asked, where (the email link, or its subject and date), and when you last changed the row. |
The Totals tab
Type each person once, with their yearly allowance. Approved, Waiting, Sick and Left then update by themselves from the Time off tab. Approved and Waiting count Holiday rows; Other rows are logged but don’t use the allowance.
| Person | Allowance | Approved | Waiting | Sick | Left |
|---|---|---|---|---|---|
| Ana Silva | 25 | 5 | 2 | 0 | 20 |
| Ben Okafor | 25 | 2 | 0 | 0 | 23 |
| Chen Wu | 25 | 0 | 0 | 1 | 25 |
| Dara Kelly | 25 | 0 | 0.5 | 0 | 25 |
Time offTotals
Tips
- Add each person once on the Totals tab, with their yearly allowance. The other Totals columns fill in by themselves.
- Keep one row per request. When someone changes their dates, set the old row to Cancelled and add a new one.
- Filter the Time off tab by Status to see the requests waiting for your decision.
PTO tracker questions
- Is this PTO tracker really free?
- Yes. Download it and use it as you like. There is no signup.
- Does it work in Google Sheets and Excel?
- Yes. Both tabs, the dropdowns and the Totals formulas work the same in each.
- How do I count half days?
- Type 0.5 in Days. The Totals tab adds half days like any other number.
- What is in the CSV file?
- Only the Time off tab, because a CSV file holds one tab. Use the Excel file for the Totals tab and its formulas.
- Can it calculate PTO accrual?
- No. It counts days taken against a yearly allowance, not hours earned each pay period.
- Can an AI fill it in from my email?
- Yes. Time Off Keeper reads your Gmail and adds the rows for you, in the AI you already use. It never approves anything; you still decide.