Back to Blogs

Product Philosophy

Why we enforce required fields on timer STOP, Not START

The one design decision Tickr is built around, and the edge cases we had to solve to make it work: mistakes, wrong start times and rules nobody can satisfy.

Tickr Team3 min read

Tickr's timer has one rule that shapes everything else: starting is never blocked, and saving is never incomplete. You can press START with an empty box. You cannot press STOP until the entry has what your workspace requires.

This post explains why we made that choice and the details that make it hold up in daily use.

Two goals that usually conflict

Teams want tracking to be effortless. Finance and project leads want every entry to have a project, a task and a description. Most tools pick one side: either they ask everything up front, which makes people start late, or they ask nothing, which fills reports with blanks.

We noticed the two goals only conflict if both are applied at the same moment. Effortless matters at the start, when someone is switching context. Completeness matters at the end, when the entry becomes a record. So we split them.

Start with zero required fields. Enforce complete data on STOP. Same rules, different moment.

What happens while the timer runs

Once the clock is running, the bar shows the time and the button turns red. You can keep typing the description, choose the project and add tags as the work takes shape. Everything saves as you go, so nothing is lost if you switch tabs.

The running timer is visible in every open tab: the tab icon turns red and the title shows a live clock. That matters, because a timer you cannot see is a timer you forget to stop.

What STOP checks

Each workspace decides which of description, project, task and tag an entry must carry. When you press STOP and something is missing, STOP refuses and its tooltip names exactly what is missing. Fill it in and STOP works.

Example: a workspace that requires project and task
START     -> clock runs, nothing required
(typing)  -> description saved as you go
STOP      -> refused: "Project and Task are required"
(choose)  -> project = Website, task = QA
STOP      -> entry saved, bar cleared

The edge cases we had to solve

Started by mistake

If STOP demands details, a timer started by accident would be stuck. So the timer menu has Discard Timer, which throws it away without saving. There is no undo, so the tooltip tells you how much time you are about to lose.

Started at the wrong time

Forgot to press START when the call began? Click the clock to correct the start time and the elapsed time recalculates. Late starts no longer have to mean lost time.

A rule nobody can satisfy

If a workspace required a tag but had no tags, every timer would be impossible to stop. Tickr does not allow that combination: a tag cannot be required while the workspace has no tags.

The trade-off

Moving the check to STOP means the person stopping the timer has to deal with the missing fields, sometimes at the end of a long task. We think that is the right place for it: the work is fresh, the person who did it is the one answering, and the answer takes seconds. The alternative is someone else chasing it days later.

If you want the operational side of this, read why required fields on START kill timesheet accuracy, or see the timer in the docs.