How to keep a work log automatically on a Mac
· 6 min read
The most reliable automatic work log on a Mac is assembled from things the Mac already records: which app was in front, what the calendar held, what you sent and saved. Set it up once and most of the log writes itself every day; the part that cannot be automated is one sentence about what the work was for. Here is how to get both.
What “automatic” can honestly mean
A work log answers two questions: where did the time go, and what did I do with it. Only the first can be fully automatic. A Mac can see that you spent three hours in a code editor; it cannot know whether those hours fixed the bug or made it worse. Any tool that claims to log what you did without your help is either reading your screen (and you should ask why) or guessing.
So the goal is a log where the time side is collected for you, the what side takes a line at the end of the day, and neither part depends on you remembering to press a button at nine in the morning.
Records your Mac already keeps
Before installing anything, notice what is already there.
- Screen Time. Open System Settings, choose Screen Time, then App & Website Activity. It lists app totals for today and the past week. It is the quickest look at where a day went, but it is built for limiting use rather than keeping records: days are not saved in a form you can keep, there is no export, and if you share across devices your iPhone is mixed in.
- Calendar. Every meeting you accepted is already logged with a start and end time. For a lot of knowledge work this is half the day, and it needs no effort.
- Sent mail and messages. The Sent mailbox sorted by date is a surprisingly good record of when you were working and what about.
- File modification times. In Finder, open Recents (or any project folder), choose View > as List, and sort by Date Modified. What you touched, and when, is right there.
- Version control. If you write code,
git log --since="yesterday"is a work log you never had to keep.
These are all partial, and none of them survives well past the week. The gap is a single daily record that is kept for you and stays readable.
Set up a daily receipt
Punchcard is a Mac menu bar app that fills that gap. It notices which app is in front during the day, and at the closing time you set, it prints a paper receipt: one line per app with the time, a day total, a date, a stamp. There is nothing to start or stop.
- Download Punchcard and open it. It runs on macOS 13 Ventura or later, Apple silicon and Intel, and asks for no macOS permissions at all: no Accessibility, no Screen Recording, no Full Disk Access.
- Set a closing time. That is the only setting that matters. No setup wizard, no projects, no tags, no account.
- Work normally. The app records app names only: never window titles, document names, URLs, keystrokes or screen contents.
- At closing time, the receipt feeds out of a slot, line by line. Tear it off by dragging down.
- Keep it. Export the receipt as a PNG (1080 by 1350, built for posting) into a folder, or copy the plain text into whatever note you keep.
On Sunday a week roll prints, and at the end of the month a month roll. If the Mac was asleep or shut at closing time, the receipt prints when it can, headed SORRY WE MISSED YOU, so a missed evening does not leave a hole.
Be clear about the limits, because they shape how you use it. Punchcard logs where the time went by app. It does not know what task you were on, which client the hours belong to, or which document was open. It has no timers, no projects, no billable rates, and no integrations, so it will not push anything into another tool. If your log needs to be split by project, this is not that; a per-project tracker or a notebook column is.
Add the one line that tracking cannot
The receipt gives you the time side of the log. The what side takes a sentence, and the trick is to write it while the receipt is in front of you, because the app lines are a prompt.
A format that holds up:
2026-08-21
Total 7h 10m. Editor 4h 05m, browser 1h 40m, Mail 50m, Messages 35m.
Finished the export feature; afternoon went to the review thread.
Two lines copied, one line typed. See a-time-log-you-can-post-the-receipt-format.html for a longer look at why this shape sticks when longer logs do not.
Put the notes somewhere boring and permanent: a single text file per month, a note in Notes with a date heading per day, a folder of PNGs named by date. The only requirement is that it opens in five years.
Where the log lives
Punchcard keeps everything in one SQLite file at ~/Library/Application Support/Punchcard/punchcard.sqlite. Nothing is sent anywhere; the app contains no networking code, and the release build fails if a networking symbol appears. If you want the raw log rather than receipts, choose Export CSV and you get the app totals by day as a file you can open in Numbers, Excel or a text editor. Keep that in the same folder as the notes and the log is complete.
If you ever want the log gone, Burn the roll deletes everything the app has recorded.
For the wider question of what an automatic tracker can and cannot know, automatic-time-tracking-on-a-mac-how-it-works-and-what-it-sees.html goes through it app by app. And if you are keeping the log to share with a team rather than yourself, how-to-share-a-summary-of-your-workday-with-a-remote-team.html covers the posting side.
Questions
Can the log be fully automatic, with no typing at all?
The time side can. The receipt prints by itself and the CSV export keeps the totals. What you cannot get automatically is the meaning of the time, and a log without that is a list of app names. One sentence a day is the shortest honest version.
Does Punchcard log what I was working on?
No. It records app names and time, nothing else. It never sees window titles, file names or URLs, which is also why it needs no macOS permissions. The sentence about the work is yours to add.
What about time away from the Mac?
Meetings in a room, phone calls, a walk to think: none of it appears on the receipt. The calendar covers some of that. For the rest, the daily sentence is the place.