Skip to content

Spend today on purpose.

Focus Timer is a day planner with a timer built in. Plan the day in blocks, time it as you live it, and see the plan next to what you really did.

Free. The demo needs no account.

An example day: Friday, 3:12 pm. A backend engineer is 23 minutes into the coding block planned for now.

The home screen of Focus Timer on an example day. A strip shows the day's plan above what has been logged so far. Under it a timer is running on the block planned for now, with the day's log beneath, beside a ring showing how much of the day's goal is done and the time each category has had.

Fri 16 Oct

Review the dayOpen plan
6 am12 pm6 pm
PlanLog
NowJob lease, then the drain test
until 3:45 pm
NextTea
3:45 pm, 15m
21:36

Log

  • 11m
  • 38m
  • 10m
  • 33m
  • 14m
  • 9m
  • 1h 2m
  • 12m
  • 13m
  • 1h 31m
  • 13m
  • 16m
  • 29m
  • 25m
  • 9m
  • 38m
  • 34m
81%
Today · Build
of 3h 30m goal
12-day streak

Today by category

Build2h 51mof 5h 50m
Coding2h 9mof 4h
Tests0mof 1h
Review42mof 50m
Work1h 24mof 1h 15m
Meeting43mof 30m
Email25mof 30m
Stand-up16mof 15m
Home22mof 2h
Chores9mof 1h
Cooking0mof 1h
Errand13m
Break2h 3mof 2h 30m
Meal1h 40mof 1h 15m
Walk0mof 45m
Tea23mof 30m
Self34mof 1h 55m
Reading0mof 1h
Routine34mof 40m
Planning0mof 15m
Drift23m
News14m
Phone9m

Why plan a day

The example day as a strip: twenty-four hours, the plan in the upper lane and what has been logged so far in the lower.
6 am12 pm6 pm
PlanLog

This line is one day. The plan is on top, and what happened is under it.

It is one turn of the Earth.

The Earth does not wait for a plan. Since you opened this page it has carried you hundreds of kilometres.

365 turns make one lap of the Sun.

A long life is about 80 laps. That is 29,200 days.

Today is one of them.

Left to itself, a day goes to whatever turns up.

By evening it is hard to say where it went.

So decide what the day is for before it starts.

Then do one thing at a time, and let a timer keep the record.

First things first

Lay out the day in blocks.

Type one line for each block, or fill the day from your ideal week and adjust it. Blocks cannot overlap, and when you lengthen one the blocks after it move with it.

The example day's plan as a list of blocks, each with its times, its category and its length.
Build5h 50m planned of 3h 30m
  • 40m
  • 30m
  • 30m
  • 50m
  • 15m
  • 2h
  • 15m
  • 45m
  • 30m
  • 30m
  • 2h
  • 15m
  • 1h
  • 5:00 pm5:15 pm5:00 – 5:15 pm15m free
  • 45m
  • 6:00 pm6:15 pm6:00 – 6:15 pm15m free
  • 1h
  • 30m
  • 7:45 pm8:15 pm7:45 – 8:15 pm30m free
  • 1h
  • 9:15 pm9:30 pm9:15 – 9:30 pm15m free
  • 15m

One thing at a time

Run one timer for whatever you are doing.

Start it from the plan, or type what you are starting and press Enter. It keeps counting if you close the tab, and it is waiting on your phone when you pick it up. Start the next thing and the one you left is saved, so the log runs on without a gap.

The example day's log so far: one row for each session, with its times, its category and its length, each starting where the one before it ended.

Log

  • 11m
  • 38m
  • 10m
  • 33m
  • 14m
  • 9m
  • 1h 2m
  • 12m
  • 13m
  • 1h 31m
  • 13m
  • 16m
  • 29m
  • 25m
  • 9m
  • 38m
  • 34m

One goal for direction

Keep one goal in front of you.

Choose a category and a daily target. The ring fills as you log time toward it. The streak counts every day you put time into it, whether or not you reached the target.

The goal card: a ring showing how much of today's target is done, the time logged toward it, the last seven days as a line, and the streak.
81%
Today · Build
of 3h 30m goal
12-day streak

At the end of the day

Read the day back.

The plan is in one column and what happened is in the other. With them is the share of your plan you followed, and for each category the time it got against the time you planned for it.

Plan against log for the example day so far: the share of the plan that was followed, then the time logged, planned, missed and off plan, and a bar for each category.

Plan vs log

Plan counted up to now

76%on plan

7h 37m
logged
8h 12m
planned
1h 58m
missed
47m
over
36m
off plan
Build2h 51mof 4h 17m
Coding2h 9mof 3h 27m
Review42mof 50m
Work1h 24mof 1h 15m
Meeting43mof 30m
Email25mof 30m
Stand-up16mof 15m
Home22mof 30m
Chores9mof 30m
Errand13m
Break2h 3mof 1h 30m
Meal1h 40mof 1h 15m
Tea23mof 15m
Self
Routine34mof 40m
Drift23m
News14m
Phone9m
The example day drawn hour by hour in two columns. The plan is on the left and the sessions that were logged are on the right.
Fri16 OctPlanLog
1 am2 am3 am4 am5 am6 am7 am8 am9 am10 am11 am12 pm1 pm2 pm3 pm4 pm5 pm6 pm7 pm8 pm9 pm10 pm11 pm

What it counts, and what it keeps private.

Only logged time counts.

A plan is never added to a total, and neither is a pause. A session that is still running is counted when you finish it.

We cannot read your task names.

They are encrypted in your browser with a passphrase only you know. The server stores text it cannot read.

You can take everything with you.

Export your whole history as Markdown, CSV or JSON whenever you like.

Also built in

Ideal week
Shape each weekday once, then fill any day from it.
Your own categories
Name them, colour them, and say which count as focus and which are breaks.
Edit the log
Fix a time, rename, or add a session you forgot, on the day it belongs to. Undo and redo any of it.
Any device
A session started on your laptop shows on your phone. Nothing is counted twice.
Pomodoro mode
Work and break cycles, with a longer break after every few. Off until you turn it on.
An AI assistant, if you want one
Give Claude, or any assistant that supports MCP, read-only access to your plan and your log.

Decide what the next hour is for.

Free. The demo needs no account.