How to Make Accurate Time Estimates
Translations of this material:
- into Russian: Как точно оценить временные затраты. 99% translated in draft. Almost done, let's finish it!
Submitted for translation by stevepavlina.ru 11.09.2011
Many people are really bad at estimating how much time a task will take. Perhaps you estimate you’ll need about an hour, and it really takes you 3-4 hours to finish. Or maybe you allocate 30 minutes for a task, and you’re done in 5 minutes. What can you do to get better at making accurate estimates?
Here are several techniques you can use to make better time estimates:
Calculate Your Fudge Ratio
The best place to start is to measure your current estimation accuracy.
Make a to-do list of upcoming tasks to complete, and jot down an off-the-cuff estimate for how long you expect each task to take. As you complete each task, record the time you actually spend on each one. Then add up your total time spent, and divide it by your total time estimate for the collection of tasks. That’s your fudge ratio.
For example, if you estimate that a certain list of tasks will take 12 hours to complete, but they really take 15 hours, then your fudge ratio is 15/12 = 1.25. This means you it took you 25% longer than expected to complete the tasks.
If you measure your fudge ratio for a variety of tasks, you’ll probably find that for individual tasks, your fudge ratio varies tremendously, perhaps ranging as widely as 0.1 to 10.0. However, for groups of tasks that collectively require a few days to complete, you may notice that your fudge ratio settles into a fairly narrow range. When you average enough tasks, your fudge ratio converges on a consistent figure.
My average fudge ratio is about 1.5. This means that whenever I make an off-the-cuff estimate for how long a task will take, on average I’m too optimistic; the task ends up taking about 50% longer than my initial guess. For any particular individual task, my estimates may be much more inaccurate. However, if I estimate that a collection of tasks will require about 2 days to complete, it’s a safe bet they’ll really require about 3 days.
Once you know your fudge ratio, you can use it to generate more accurate estimates for groups of tasks. Just add up your off-the-cuff estimates, and multiple the total by your known fudge ratio. This will tend to be a fairly accurate estimate.
I tend to be consistently optimistic when estimating the time required for certain tasks. Knowing my fudge ratio has NOT made my initial estimates more accurate. My off-the-cuff estimates are just as inaccurate as they’ve always been. However, when I multiply my estimates by the fudge ratio, the estimates come pretty close to the time required. This helps me budget my time better.
Based on my fudge ratio, I know that if I want to complete about 8 hours of actual work in a day, I should only list about 5 hours and 20 minutes worth of tasks based on my off-the-cuff time estimates (5:20 = 8 hours / 1.5). While it might seem silly to make this kind of compensation every day, in practice it works quite well — far better than the alternative of listing 8 hours of tasks and then either pushing myself to work a 12-hour day or feeling bad that I only completely 2/3 of my tasks. Self-sabotage can make things even worse when I subconsciously know I’m trying to do the impossible.
It’s better to make a reasonable task list that I can actually complete by the end of the day instead of beating myself up for being bad at estimating. Even if my daily task list seems too short at first glance, it feels good to cross off the final task at the end of the day. Due to daily variations, this isn’t perfectly accurate, but overall it’s better than anything else I’ve tried, and it encourages a sustainable daily rhythm without overworking or under-working.
I recommend using at least 10-20 hours of tasks for your initial fudge ratio calculation. If you based your calculation on only a few hours of tasks, your fudge ratio may not be accurate enough.
Of course it’s a good idea to recalculate your fudge ratio every once in a while. Once a quarter should be fine. It’s also wise to update it whenever the nature of your work changes, such as when you begin a new project or switch companies or careers.
If you want to get a little more detailed, you can calculate different fudge ratios for different kinds of work. Personally I don’t do this, but if you think it’s likely that different tasks will yield significantly different fudge ratios, it may be a good idea. For example, if you’re a student who finds that math homework has a fudge ratio of 0.9, but term papers have a fudge ratio of 1.7, you’ll probably want to maintain separate fudge ratios to create better estimates.
If you manage a team of people, you can calculate a fudge ratio for each member of your team (with or without their knowledge). Ask for time estimates from each team member for a collection of tasks, measure the actual time required, and calculate the fudge ratio for each team member. Whenever you get new time estimates from those team members for upcoming tasks, you can multiply their estimates by their individual fudge ratios. This will help you create a more accurate schedule for team projects. I think you’ll find that people tend to err in their estimates in a fairly consistent manner.
Achieve Reasonable Granularity
In order to make accurate estimates, it’s important that you break your tasks down to the right level of granularity. If your chunks are too big, you’ll overlook too many details. If your chunks are too small, you’ll get buried in low-level details, and you could spend more time estimating a task than it would take to just complete it; this is too much overhead.
For example, “Overhaul my website” sounds like a complex, multi-task project. This isn’t granular enough to make a reliable estimate. You’ll need to list the individual tasks needed to complete this project.
On the other hand, “Write mailing address on envelope” is way too granular. You could have completed this task in as much time as it took to list it and estimate it. This much detail only wastes your time instead of making you more efficient.
You should experiment to find the right chunk size where you can make the most accurate estimates. I’ll offer a couple pointers based on what works well for me:
The One-Sitting Rule. My estimates tend to be best for tasks I can complete in a single sitting. In practice this means about 2-4 hours per chunk. When I go less granular than that (bigger chunks), I miss too many details and grossly underestimate the time required. When I go more granular (smaller chunks), I list out too many details, I overestimate how long things will take, and I waste too much time creating and managing my to-do list instead of getting things done.
Compensate for Experience. If I’ve completed similar tasks many time before, my estimates will tend to be fairly accurate, so I might drop my fudge factor down to 1.2 or even 1.0. For example, I’ve written 700+ articles, so I’m pretty good at estimating how long an average article will take to write (3 hours is typical). But if I have to do something I’ve never done before, a fudge ratio of 2.0 or higher may be more accurate. The less experience I have with a task, the higher my fudge ratio needs to be.
Define Clear Task Boundaries
Make sure your tasks are clearly defined. Vague or nebulous tasks are hard to estimate.
If one of my tasks is “Update accounting,” I can’t be certain of what that includes. Does that mean balancing my checking account? Doing payroll? Filling out tax forms? Recording receipts? If I want to make a reliable estimate, I need a clear picture of what I’ll be doing.
You may find it helpful to list a few keywords for the components of an otherwise unclear task. You don’t necessarily need to estimate the time for each segment. You just need to be able to visualize what you’ll be doing. The keywords can help trigger the right imagery, so you can make a better estimate.
You should be able to quickly verbalize the first and last steps of each task. For example, when I see a task labeled “Write new blog entry,” I know that the first step is to pick a topic. The last step is to click the “Publish” button. If you can’t name the first and last steps of a task on your list, then your task doesn’t have clear boundaries. In that case you’ll need to take a moment to define those steps, or you’ll need to define your task a little more clearly, possibly by breaking it into smaller chunks. Good estimates require clear start/finish boundaries.
Be especially careful to consider what will be required to bring a task to 100% completion. If your task is to “Pay your bills,” does that end when you write the checks, when you deposit the payments in the mail (or complete an online payment process), when you file the paid bills in your filing cabinet, or when you balance your checkbook? Don’t forget to consider how long it takes to clean up and put away your materials. Even if you’re just making dinner, there will be dishes to attend to afterwards.
Reuse Estimates for Recurring Tasks
Once you’ve completed a recurring task, make a record of the time required for completion, so you can reuse that estimate in the future. When that task reappears on your to-do list, you can simply look up your old estimate. These estimates will be fairly accurate because they’re based on previous results, not previous estimates.
I recommend that you create an estimation list for your common recurring tasks. Here are two methods for doing that:
Method 1 (simple version). For a very basic estimation list, you only need to record a single figure for each task. Just note how long the task took to complete the last time you did it.
Your simple estimation list might look something like this:
Grocery shopping – 55 minutes
Make and eat dinner – 42 minutes
Vacuum house – 83 minutes
Wash, fold, and put away laundry – 75 minutes
And so on…
Once you build a good list of time estimates for recurring tasks, you can create a very reasonable plan for your day by adding tasks to your schedule.
Method 2 (detailed version). For a more complex version, you can record four figures for each task: (1) the number of times you’ve completed the task since you started keeping records, (2) your best (minimum) time to complete the task, (3) your worst (maximum) time to complete the task, and (4) your average time to complete the task. You can use these figures for making reliable estimates in the future; the min-max range tells you how reliable your estimates are likely to be. Whenever you complete each task again, take a moment to update your figures. In practice this won’t take much time at all, but you’ll end up with a fairly accurate list of estimates.
To update your average task time using this method, multiply (1) by (4), add the time required to complete the most recent repetition, and then divide the result by (1)+1. For example, if you previously completed a task 10 times, averaging 30 minutes per repetition, and the 11th repetition takes 35 minutes, then your new average is (10×30+35)/(10+1)=30.45 minutes. This method allows you to keep updating your average without having to record all of your previous task completion times.
If you record your best (minimum time) to complete a task, you can also use that to challenge yourself. Beating your previous record can motivate you to maintain a faster tempo. At the very least, try to beat your average time. Putting the clock on yourself can push you to work a little faster, especially for repetitive tasks that might otherwise seem a bit dull.
For most people I recommend Method 1. Method 2 is probably overkill unless you’re really committed to optimizing your time usage.
Learning to make better time estimates is a useful skill to develop, one that will serve you well for life. The methods above are actually quite easy to implement.
Becoming a better estimator may improve your life at the tactical level of daily time management, but be careful not to lose sight of the strategic level. Have you taken the time to define your life purpose? Are you setting the right goals? Are you working in the right career? Mastering low-level tactics won’t provide much value when your overall life strategy is nonsensical or nonexistent.
Even so, accurate estimation can benefit you across a variety of fields, so it’s a good skill to develop early in life. It’s still okay to develop this skill before you’ve achieved clarity at the higher levels of life purpose and long-term goals. Just be sure that at some point, you remember to attend to those higher levels, so you don’t merely become a faster rat on a treadmill.
What are your personal tips for generating good estimates? I invite you to share them in the forums. And remember, this is for posterity, so please… be honest.