Time tracking without a timer
Most time trackers assume you'll press start, press stop, and remember to do both. This one assumes you know what you worked. You describe your recurring hours once, then confirm or correct the days as they happen.
The problem with the stopwatch model
A running timer only tells the truth if it is running exactly when you are working. In practice it isn't. You forget to start it, leave it running through lunch, take a call away from the desk, or work an evening on a laptop that never had the tab open. The result is a log you don't trust, which means reconstructing the week from memory anyway — with the added cost of having babysat a widget all week.
The alternative is to record completed work. You already know that Tuesday was a normal eight-hour day for one client and that Wednesday was six because you left early. Entering that takes seconds and is more accurate than a timer that was mis-driven.
Describe the shape of your week once
A work schedule is a recurring pattern attached to a client — for example, 9:00 AM for eight hours, Monday through Friday. You build one when you add the client, using quick picks for common patterns like Mon–Fri, every day, or weekends, then fine-tune the individual day toggles, the start time, and the duration.
Real weeks are rarely one clean block, so a schedule can hold several. A morning block and an afternoon block, split by an unpaid lunch. An overtime block at a higher rate. A second client on Thursdays. Each block can carry its own rate when it differs from the client's default, and each can carry effective and expiration dates — so a raise or a schedule change can be entered now and take effect on the date you set.
What the schedule buys you
- New time entries pre-fill with the hours you were scheduled to work that day, so logging is a confirmation rather than data entry
- The home dashboard can show earnings accruing in real time, because the app knows you're on the clock right now
- Goals and obligations can project forward from scheduled work instead of waiting for the month to end
- Bill rates come from the client's default or the block's own rate, and remain overridable per entry
Days that don't go to plan
Vacation, sick days, and unpaid gaps are recorded as schedule exceptions. A time-off entry carves its hours out of what you'd otherwise have been scheduled — and earning — that day, so the live counter and the pre-filled hours stay honest instead of quietly overstating the month.
Anything unusual in the other direction is just an ordinary entry. Click the day on the calendar, adjust the hours, and the change stands on its own without disturbing the pattern.
From logged hours to a sent invoice
Time and expenses live on the same calendar, a tab apart, color-coded per client. Every entry carries a billed or unbilled status, so you always know what's already gone out. When it's time to bill, unbilled time and expenses — receipts included — become invoice line items you can edit in a live preview that looks like paper, then download as a branded PDF. Invoices snapshot your company details, logo, and colors at the moment of creation, so an old invoice never changes because your letterhead did.