Skip to content

Track time

Time tracking in dotby is built around one idea: logging time should cost you less effort than not logging it. There are no modes to pick and no tabs to switch before you can type.

Type a duration and press Enter:

3h 20m

That’s logged. Leave the same box empty and press Enter instead, and it starts a live timer.

The same editor works everywhere — on the task, in the timer popover, and on your timesheet. One box, one grammar, no “which screen am I on” tax.

Unit Means Aliases
m minutes min
h hours hr
d days —
w weeks wk
mo months mon
y years yr

Combine them freely: 1h30m, 2w, 1mo 2w. 1:30 works too.

Two rules worth knowing:

  • m is always minutes and mo is always months. 1mo never reads as 1m plus junk.
  • A day and a week are your team’s, not the calendar’s. They use the project’s work schedule — 8 hours a day and 5 days a week by default — so 2w is 80 hours, not 336. Months and years are fixed multiples on top of that: 1 month is 4 weeks, 1 year is 12 months.

Forgot to start it? Click the “Started 1:13 pm” label while it is still running and drag the start time backwards. No stopping, no re-logging.

Pause and resume as often as you like. Each stretch is recorded separately and the total is the sum of them — a pause never inflates your hours.

The timer pill opens your recent days in place: per-day totals, one-tap resume, and inline editing of any entry without leaving the page.

If a new entry would overlap one you already logged, dotby warns you instead of quietly double-counting.

An entry is a block of time carrying one activity tag and one billable classification. The activity says what kind of work happened; billable says whether those hours may be invoiced somewhere else.

A single block can span several tasks — useful when one stretch of work touched three things. It can also have no task at all, if an admin has turned that on for the workspace. Meetings and admin time are real work; they just don’t live on a board.

Give a task an estimate in the same grammar (4h, 2w), and the task shows estimated against tracked side by side. Points and t-shirt scales work too, if your team sizes that way instead.

This is where the number earns its keep: after a few sprints you stop arguing about whether estimates are accurate and start reading how far off they usually are.

An activity type is a named, colored tag — Development, Design, Meeting, Support. Every workspace has one marked as the default, so logging time never blocks on a decision.

Their job is context: reports can show where the hours went without inventing a second Task hierarchy.

Every block is either Billable or Non-billable. This is classification, not a price: dotby stores no hourly rate, amount, earnings, payroll, or currency on time entries.

New entries inherit the workspace’s Default new time entries to billable setting. You can override it before starting or logging, change it while a timer is running without restarting the clock, or toggle it directly on your timesheet.

Changing activity while a timer runs still closes the current stretch and opens a new one, preserving its billable choice and Task links. Pause and resume also preserve it.

Personal reports show total, billable, and non-billable hours, trend, activity, project, heatmap, overlap warnings, and weekly goal progress. Goals always count all hours, even while a billable filter is active.

On a Task, the time section shows how many hours you logged there and the exact entries behind that total. It never includes another member’s hours.

Everyone can see and correct their own hours. Nobody can read or mutate another member’s time, even with an admin/manager role or an older stored capability. The same rule is enforced by the web app, mobile app, REST API, MCP, and agents.