How to track on-call hours when the pages come after hours
· 7 min read
Keep two separate records: the hours you were on standby, which come straight from the rota, and the hours you spent responding to pages, which come from a short log of each incident. The second record is the one people lose, because nobody writes down start and end times at three in the morning. An automatic record of when you were at your Mac fills that gap after the fact.
Standby time and response time are different things
On-call work has two parts, and mixing them makes any total meaningless:
- Standby. You are reachable and near a laptop, but not working. This is a block on the schedule: Tuesday 6 pm to Wednesday 9 am.
- Response. A page arrived and you were at the keyboard dealing with it.
Whether either is paid, repaid as time off or treated as part of a salary depends on your contract, your employer’s policy and local law. This post is about keeping the record, not about what you are owed. Before a rotation starts, ask your manager or HR which of the two they want reported, and in what form. Then keep both anyway, for yourself.
The minimum log for each page
A page needs five facts:
- The date and time it arrived.
- The time you started working on it.
- The time you stopped: resolved, handed off or declared safe until morning.
- One line on what it was.
- Whether it created follow-up work the next day.
Your alerting tool already keeps the first fact, and usually the time you acknowledged the page as well. Its history is the official trail, so learn where it is.
The third fact is the weak one. Incidents rarely end cleanly. You fix the thing, watch a graph for a while, write a note for the morning and close the lid. Ten minutes later you could not say whether you stopped at 2:40 or 3:15. Write the time down before you go back to sleep if you can. For the nights you do not, there is the Mac.
Reconstructing a night from your Mac
Punchcard is a Mac menu bar app that notices which app is in front during your day, by name only. It prints a receipt at the closing time you set, with the top five apps, the rest as MISC and a day total. There are no timers to start, which is the point here: it was already recording when the page arrived. It needs no macOS permissions to work.
The receipt shows time per app, not clock times, so for on-call the useful part is the CSV export. It has one row per session: start, end, app, idle and seconds. A night incident appears as a cluster of rows beginning shortly after the page: the terminal, the browser, the chat app, the terminal again.
- Export the CSV from Punchcard.
- Open it in a spreadsheet.
- Filter to the dates of your shift. A session that runs past midnight sits on the next calendar date, so include both. Working past midnight explains the seam.
- Find the rows that fall outside your normal working hours.
- The first start in the cluster is when you sat down. The last end is when you stopped. Put those two times in your log.
- Sum the seconds column for the cluster and divide by 3,600 for hands-on hours.
If you have switched on “Itemize websites” in Settings, rows from a supported browser also carry the site name. That helps tell an incident from a sleepless hour of reading: a cluster on your monitoring dashboard and your code host is plainly work. Only the site name is kept, never the full address or page title.
The CSV export works without a license, and tracking never expires, so this method costs nothing. Printing receipts after the first two needs the $9 one-time license.
What the Mac record cannot see
Be straight with yourself, and with anyone you show this to, about the gaps:
- The phone. Acknowledging a page from bed, joining a call from your phone, replying in chat on the way to the laptop. Punchcard has no iPhone app and sees none of it.
- Standby itself. Being reachable is not an activity a Mac can record. That number comes from the rota.
- Which incident. There are no projects or tags, and Punchcard never records window titles. It can show the terminal was in front from 2:14 to 2:51. It cannot say what you ran.
- Remote machines. Work done on a server through a remote session shows as the app you used to reach it.
- Watching and waiting. If you sit looking at a graph without touching the Mac for a long stretch, part of that may be treated as time away. For the log, use the first start and the last end of the cluster as your span, and treat the summed seconds as hands-on time.
- A work-issued Mac. Check whether you are allowed to install software on it. Punchcard has no account, and the tracked data stays in a file on the Mac, but your employer’s policy decides.
So the Mac record supports your log; it does not replace it. The alerting tool says when the page fired. The CSV says when you were at the keyboard. Your one-line note says what it was.
A routine that survives a bad week
- At the start of the shift, write the standby window in your log: start, end, total hours.
- After each page, add the five facts. If it is the middle of the night, add them in the morning while the alert history is still easy to find.
- At the end of the rotation, export the CSV and reconcile. Fill in any missing start or end times from the clusters.
- Total four numbers: standby hours, number of pages, response hours, and response hours that fell during the night.
- Send what was asked for, in the format asked for, and keep your own copy.
The fourth step is the one that pays off over months. A rotation with two pages at 3 am costs more than one with six pages at 8 pm, even at the same response hours, and the plain total hides that. With several rotations on file, you can show whether the load is rising, whether one service causes most of the pages, and whether the rota is being shared fairly. Those conversations go better with dates and durations than with “it felt like a rough week”.
It also helps you. On-call hours are easy to leave out of your own sense of how much you work. Overtime you didn’t notice covers how to spot that pattern in a daily record.
Questions
Will this prove my hours to my employer? It is your own record, and good supporting detail. The alerting tool’s history is the official trail for when pages fired. A session export showing you at the keyboard for the forty minutes after each one is consistent with it and fills in the end times.
Do I have to tell Punchcard I am on call? No. There is nothing to start or stop. It records which app is in front whenever you are using the Mac, at any hour.
Can it separate on-call work from a normal late night? Not by itself. It has no tags. You separate them by time: match each cluster of rows to a page in the alert history.