To be able to do any kind of accurate planning you need to be able to make a reasonable estimate of how long upcoming tasks will take. If you are a freelancer working for clients, you will usually need to give some kind of estimate of time and cost. If you move into working on your own products being able to estimate time is still important.
In this post I’ll explain how I have learned to become better at estimating the time things will take me, and how I stay on track.
The importance of time estimates in product development
If you want to pre-announce a new product or feature to your customers you need to be reasonably sure that you are able to ship. You may find that good advertising opportunities need to be booked far in advance, you need to be sure that the new product will be ready when an expensive advert goes live. If you are working with other people – a co-founder, employees or freelancers – being unable to estimate how long the tasks you have in hand will take makes you hard to work with. You become the person who never comes through, it’s stressful for everyone.
Most of us are terrible at estimating time
The natural thing to do is to be optimistic. We think everything will be a quick job. When asked we give an optimistic response, usually on the short side and without factoring in all of the others things that eat up time each day. We want to please the person asking; we interpret “how long will this take?” as “tell me you will have this ready tomorrow”. Even if the only person putting on pressure is ourselves, we can become really good at being overly optimistic in our own mind!
You have to track what you do
The only way to get good at estimating time is to start tracking your usage of time. Crucially you need to track your usage of time against how long you thought it would take.
A great way to do this is with the Pomodoro Technique. At the beginning of your day, decide what it is you need to get done. You can then assign a number of “pomodoros” – 25 minute blocks of time – to each task. So I might have:
- Write blog post about new feature in Perch – 3 Pomodoros
- Write and send our customer newsletter – 3 Pomodoros
- Run updates on our servers – 2 Pomodoros
I then start doing the work, I log the actual number of Pomodoros taken to do each task. I also log the time I spend not on those defined tasks. Perhaps I end up spending time answering emails, dealing with support or a problem with some part of our server infrastructure.
After a week of logging, patterns start to emerge. I realise that blog posts typically take longer to write; or that once I start running updates on servers something almost always happens that I need to investigate; or that I don’t ever get through all my tasks for the day because of the time I spend in support. Next time I set up my tasks for the day I can use this information to help me plan. Over time it gets more accurate.
Stop using unusual events as an excuse for poor time management
An excuse for being bad at estimating is that unforeseen things sometimes happen, which throw a massive spanner into the works and blow up the schedule. The conclusion drawn is that because sometimes things take longer than anyone could have guessed there is no point ever estimating how long anything will take. The thing is, these things tend to be fairly few and far between and are understandable to everyone when they do happen.
What is far harder to deal with, and far more damaging ultimately, is that slow creep. If you have estimated 2 hours to complete a task and it takes 3 that doesn’t seem so bad in isolation. However, if for every 8 tasks you accrue 8 additional hours – that’s a full day of a schedule.
You don’t need to do this all of the time
You’ll find after a while you become better at estimating time, and you can stop obsessively tracking everything that you do. However it is likely that over time you’ll fall back into your old optimistic ways of estimating. I find it useful to have a tracking week ever month or so, just to make sure I know where my time goes.
No secret sauce
So that is how I’ve become better at estimating how long things will take, and how I keep myself on track. It’s a simple and rather boring approach … but things that work often are.