EstiVote
Agile Estimation

Agile Estimation — A Complete Guide

Agile estimation is the process of predicting the relative effort and complexity of product backlog items before a sprint begins. Unlike traditional project estimates, agile estimation focuses on comparison rather than prediction — which makes it far more accurate and useful.

Why Traditional Time-Based Estimation Fails in Software

Traditional project management relies on time-based estimates: "Task A will take 3 days, Task B will take 5 days, so the project will take 8 days." This approach fails in software development for several well-documented reasons.

The most significant is what researchers call the planning fallacy — the consistent human tendency to underestimate how long tasks will take while overestimating how many we can complete. Studies show this bias persists even when people are explicitly told to account for it.

Time-based estimates also conflate "how hard is this?" with "how fast can I do it personally, right now?" The latter depends on who is doing the work, their familiarity with the codebase, how many interruptions they face, and dozens of other contextual factors that vary sprint to sprint. This variability makes individual time estimates unreliable even when the underlying complexity of the work is well-understood.

Agile estimation sidesteps these problems by focusing on relative complexity: comparing stories to each other rather than to an absolute time measure. This comparison is far more stable and far easier for teams to agree on.

Core Agile Estimation Techniques

Planning Poker

Planning poker is the gold standard of agile estimation. Every team member simultaneously reveals a card representing their effort estimate for a story. Simultaneous reveal prevents anchoring bias; the discussion of differing estimates surfaces hidden complexity and builds shared understanding. Most teams use Fibonacci cards (1, 2, 3, 5, 8, 13, 21).

Planning poker is best for: sprint planning, backlog refinement, any team that needs to develop a reliable velocity metric.

T-Shirt Sizing

T-shirt sizing uses categories (XS, S, M, L, XL, XXL) rather than numbers. It is faster, less precise, and more accessible for non-technical stakeholders. Because the categories are not strictly ordinal, T-shirt sizing does not map easily to velocity. It works best for early backlog triage — deciding which epics or features to prioritise — before detailed story-level estimation is needed.

Affinity Estimation

In affinity estimation, team members silently sort stories into relative size groups (small, medium, large) on a physical or virtual board. No discussion happens until the sorting is complete. It is a fast technique for a large backlog (30+ stories) and generates a good enough relative ordering for prioritisation without the overhead of story-by-story voting.

Three-Point Estimation

Three-point estimation asks the team to give a best-case, most-likely, and worst-case estimate for each story. The weighted average (best + 4×likely + worst ÷ 6) produces an expected value with implicit uncertainty bounds. It is thorough but time-consuming, and is more common in formal project management than in fast-moving agile sprints.

Agile Estimation Best Practices

  • Estimate as a team. Estimates should reflect collective understanding. Solo estimates miss complexity that other roles (QA, design, infrastructure) would flag. Planning poker enforces this by requiring everyone to vote.
  • Use reference stories as anchors. Pick 2–3 past stories as benchmarks for specific point values. "This is a 3-point story — similar to the user settings update we did in Sprint 6." Anchors make estimation comparative rather than abstract.
  • Keep stories small enough to estimate confidently. If a story is so large that the team's estimates spread from 5 to 21, split it. Stories above 13 points rarely fit in a single sprint without scope risk.
  • Never convert points to hours. Story points and hours measure different things. Converting them destroys the stability that makes story points useful.
  • Track velocity for forecasting, not performance management. Velocity is a planning tool, not a productivity metric. Using it to compare engineers or teams creates perverse incentives to inflate estimates.

Common Agile Estimation Mistakes

  • Estimating tasks instead of stories. Task-level estimation misses integration complexity and encourages teams to underestimate the non-coding work (review, testing, deployment) that makes up a significant portion of actual sprint time.
  • Re-estimating every sprint. Stable estimates are valuable for historical velocity calculation. Only re-estimate when scope materially changes.
  • Using velocity as a deadline tool. "Your velocity is 40 points, so you must deliver 40 points every sprint" turns a statistical average into a performance floor. Velocity naturally varies; treating it as a fixed commitment produces shortcuts and burnout.
  • Letting one voice dominate. The most senior or loudest person in the room should not set the estimate. Planning poker's simultaneous reveal is specifically designed to prevent this. If your estimation process lets someone speak before others vote, you are not getting the benefit of the technique.

Frequently Asked Questions

Agile estimation is the practice of predicting the effort, complexity, and uncertainty of backlog items using relative sizing rather than absolute time. Instead of saying "this task will take 14 hours," agile teams say "this story is roughly twice as complex as the one we did last sprint." This comparative approach produces more stable and actionable estimates.

Planning poker (also called scrum poker) is the most widely used agile estimation technique. It combines relative sizing with a structured hidden-vote mechanic that prevents anchoring bias. Teams vote privately using Fibonacci cards, reveal simultaneously, then discuss significant differences. Other popular techniques include T-shirt sizing and affinity estimation.

Individual story estimates are inherently uncertain — the goal is not precision for a single story, but accuracy at the sprint level. After 3–5 sprints, a team's velocity stabilises and their sprint-level forecasts become reliable within a predictable range. Agile estimation acknowledges and incorporates uncertainty rather than pretending it does not exist.

Velocity is the average number of story points a team completes per sprint, measured over several consecutive sprints. It is used to forecast future sprint capacity: if your velocity is 45 points, you can commit to roughly 45 points next sprint. Velocity should only be compared within a single team — it is not a measure of productivity that can be benchmarked across teams.

Most agile methodologies recommend estimating user stories (units of user value) rather than tasks (units of developer work). Story-level estimates capture the full scope of delivering a feature, including testing, review, and integration. Task-level estimates are more granular but also more time-consuming to maintain and more prone to missing hidden complexity.

Stories should be re-estimated when their scope changes significantly, when the team learns something that materially changes their understanding of the work, or when a story sits in the backlog long enough that the original estimators have changed. It is not necessary to re-estimate every sprint — only when circumstances have genuinely changed.

Related guides

Ready to try it with your team?

Create a free planning poker room in seconds. No sign-up required for anyone.