2026-11-02
Reading looks idle to a time tracker. Here's how to check the hours instead.
Some work doesn't touch the keyboard. An annotator reads the labeling guideline before a new batch. A researcher checks a claim against a source in another tab. A reviewer watches a clip before marking it. If you pay people by the hour for that, someone eventually asks how to verify the hours. The usual answer is idle detection, which watches for keyboard and mouse input, and reading doesn't produce any. This post covers what idle detection measures, in the tools' own documentation, what Harvest's idle timer does differently, and the check that works for reading-heavy work: look at the output, then approve the timesheet. One thing first: Winnows doesn't verify hours either. It records the hours people enter.
What idle detection measures
Ango Hub, an annotation platform whose docs now live on iMerit's site, is unusually plain about it. Its editor "detects mouse movement, mouse clicks, keyboard input, scrolling, touch interactions, and focus events within its page." When none of those happen for the project's Idle Timeout, "active timing stops, idle timing begins." The default for a new project is 300 seconds, or five minutes.
Then the docs say what that leaves out, in two sentences worth quoting whole:
- "Reading an asset, watching a video, or listening to audio without interacting with the page can reach the idle timeout."
- "Activity in another application or the browser's address bar does not count as activity in the editor."
The first one is the reading. The second is the research, done in another tab. Scroll through a long document and the editor sees it. Read one screen, think about it, check a source somewhere else, and it doesn't. The docs also say what the number is: "The timer measures detected activity, not whether you are making annotation changes."
The five minutes are a grace period. The docs say time before the threshold "remains active time and is not reclassified as idle afterward." So a 20-minute clip watched without touching the page logs as five minutes active and fifteen idle. If watching it was the task, three quarters of the task is on record as idle.
Hubstaff works the same way, one second at a time. Its help center says activity is "calculated by marking each second tracked as active or inactive," and gives the rule in two lines: "A mouse movement or keyboard stroke = active." "No keyboard and no mouse movement = inactive." The same page says periods of 0% activity can be considered "not working." A minute spent reading a source is a minute with no keyboard and no mouse movement.
Harvest has an idle timer too. It asks the person.
Harvest's Mac and Windows apps "automatically detect when your computer has been idle," and "By default, the idle timer alert will go off at 10 minutes." The help article also says what the timer can't do: "It can’t differentiate accidental mouse movements (e.g., someone accidentally bumps into your desk while you’re away)." Put that next to Ango Hub's docs and you have the whole problem: a desk nobody is sitting at can count as work, and a page somebody is reading can count as idle.
The difference is who gets asked. Ango Hub's idle setting "does not display a separate inactivity dialog"; the timing just changes. Harvest's alert goes to the person running the timer, and the choice is theirs: stop the timer and remove the idle minutes, keep timing and remove them, save them as a new entry with its own project and task, or ignore the alert and leave the total as it is. The person at the desk is the one who knows whether those ten quiet minutes were reading. Harvest asks them.
Harvest's help center is just as plain about the rest. Harvest "does not take screenshots or video recordings of your computer," and it "does not track websites or apps you use."
Why a better threshold won't fix it
Ango Hub lets a project set the timeout anywhere from 5 to 10,000 seconds. No number in that range tells reading from a coffee break, because both look the same to the editor: a page nobody is touching. Raise it and the breaks count. Lower it and more of the reading drops out.
A screenshot doesn't settle it either. It shows what was on the screen, not whether anyone read it. And a count of input rewards input. Reading the guideline again before a hard batch lowers the score. Clicking straight through it doesn't.
Import your Harvest account and read the reconciliation
Free for 2 people and 1 active project; $9 per active member per month after that, no usage fees on anything. The import runs on the free plan.
Check the output, then approve the week
For reading-heavy work, the evidence for the hours is the work. Your labeling tool already has what was submitted. A researcher's hours end in a finding, a source list or a corrected record. The check is to set that next to the timesheet, a week at a time.
- Give reading its own task. Guideline review, research and QA reading get their own row, so those hours show up under their own name instead of being folded into labeling.
- Agree on a rough rate for each kind of task. Not a quota, a reference: about how many items an hour of labeling produces on this project, about how long a source check usually takes. A week far off it is easy to spot.
- Ask for a one-line note on each entry: what was read, what was checked, which batch. A week of notes takes a minute to read.
- Look a week at a time, not a minute at a time. A day that ran long on reading is normal. Hours and output that stop matching week after week are a conversation.
- Approve the week, or send it back with a question. That's the verification: someone who knows the work looked at the hours and the output together.
- Lock the period once it's paid, so the hours you approved are the hours that stay.
What Winnows does here, and what it doesn't
Winnows doesn't verify hours. There are no screenshots, no keystroke counts, no activity scores and no idle detection, so nothing in it can log reading as idle. It also can't tell you anyone was at the keyboard. If that's what you need, it's the wrong tool.
What it has is the check above. The week is one row per project and task: type a duration or run the timer, then submit the week when it's done. Approvals open the week itself before you decide: every entry and its note, then approve or send it back with a comment. A payroll lock date keeps closed periods closed. If you bill a client for the work, approved hours become unsent invoices in QuickBooks Online or Xero; Bill by the hour, invoice from your books covers that step.
Why there's no monitoring in it at all is in Time tracking that does not watch you. The short version: the person doing the work knows what the hour was, and the person approving it knows what the hour should have produced. A timesheet puts the two of them on the same page once a week. No idle timer was ever going to.
Import your Harvest account and read the reconciliation
Free for 2 people and 1 active project; $9 per active member per month after that, no usage fees on anything. The import runs on the free plan.