How I track my time, and how I’d like to

I track my time so that I can find out if I’m spending enough time on the things that matter. For example, I find it easy to get sucked into work because I enjoy programming, but if I spend too much time at work, then I might not spend enough time developing other interests or sleeping. I’m also curious about how much time it takes me to do things so that I can estimate tasks better. Since much of my work involves consulting, being able to bill time accurately helps as well.

Off-the-shelf apps like TimeRecording helped me get started quickly, and it was easy to use the CSV export to analyze my data. When I had developed the habit of tracking my time and decided that it was worth investing in further, I began building my own system. is a Rails application that lets me track time, clothes, library books, and a bunch of other things that I’m curious about. The offline mode doesn’t work right now, but the web-based interface makes tracking easy.

I’ve set up a hierarchy of categories that somewhat follow the OECD leisure time study so that I can compare my individual metrics with international ones. For example, I count writing as Discretionary – Writing and cleaning up as Unpaid Work – Tidy.

To track, I type a substring into a text field of my dashboard. For example, if I want to say that I’m starting to tidy up now, I type in tidy and press Enter. I can also update it from my phone. Autocomplete will suggest categories if I type in text and wait a little.

I can backdate entries, which comes in handy when I start doing something while away from my computer or phone. For example, if I want to say that I spent the last 40 minutes gardening, I can type in -40m garden. It also understands things like -2h social, or 5/31 7:30 routines.

If I spent the entire day away from the Internet or if I have quite a few timestamps to enter, I can use the batch mode. The batch mode lets me specify a date and entries of the form:

7:00 category1
8:00 category2
13:30 14:00 category3

Sometimes I need to make the system recalculate the ending timestamps and durations. I can do that by expanding the options for the records list and choosing Recalculate durations.

My system makes it easy to see weekly or monthly summaries, and I can review the records by category or by time as well.

So that’s how I’m currently tracking my time. I’d like to get the mobile interface working again so that I can quickly update it while on the go, or rig up import/export from apps like Time Recording or Tap Log Records so that I can use those instead. I also want to build more reports that can help me answer questions like:

  • What do I spend my time on?
  • How does that time fluctuate?
  • Are there any gaps or oddities that might indicate that I’m missing an entry or I’ve encoded things incorrectly?

I also want to import my old data so that I can analyze it. When that settles down, perhaps I’ll add another layer of granularity too!