The Estimation Theater Nobody Asked For
Let’s be honest: planning poker is basically ritual theater that nobody actually enjoys. You know the scene. Someone calls out “planning poker!” and suddenly everyone goes silent, frantically trying to divine whether this particular login feature is a 5 or an 8 (or both, depending on the developer’s coffee intake that morning). The irony? After years of teams obsessing over story points, velocity calculations, and Fibonacci sequences, the real question remains unanswered: how long will this actually take? And more importantly, do you actually need all that ceremony to answer it? The truth is, many teams have discovered something quietly revolutionary: you don’t need story points to ship software. You just need something better than guessing, and something faster than hours-based estimation that creates psychological pressure on individual developers.
Why Story Points Became an Anchor
Story points were invented as a solution to a real problem. Hour-based estimation has documented drawbacks—it highlights individual productivity gaps, creates stress, and fails spectacularly at accounting for interruptions, meetings, and that one person who asked you “quick questions” for two hours. Story points promised to solve this by being relative and abstract. But somewhere between the theory and practice, something went wrong. Story point estimation became a ritual. Teams spent hours in refinement sessions debating whether a task was a 3 or 5 (spoiler: it always took 8). Stakeholders learned to convert story points back to hours anyway, defeating the entire purpose. Velocity calculations became cargo cult programming—the team tracked them faithfully without actually using them for anything meaningful. The worst part? Story points created a false precision. Your team knows a task is “roughly similar to that other task,” but suddenly you’re pretending you understand the exact effort ratio between a 5-point and a 13-point story. You’re not. Nobody is. You’re just pointing at numbers.
Enter the No-Estimation Approach
Some teams realized the solution was radical simplification. What if you just… didn’t estimate? What if instead of debating story points, you focused on getting really good at breaking down work into genuinely small pieces, then tracking how many pieces you could complete? This isn’t new thinking—several evidence-based teams have operated this way successfully. The approach has specific prerequisites, but when those conditions exist, it’s liberating.
The Prerequisites (This Matters)
Before you ditch estimation entirely, understand that this requires some foundational practices to work: Clean Code and Low Technical Debt: You need to be able to move quickly without wrestling legacy systems. Tasks should be straightforward to implement, not requiring archaeological digs through someone’s 2019 refactoring. If your codebase is a horror show, estimation rituals are the least of your problems—but they’re also masking the real issue. Ruthlessly Small User Stories: Your team needs to be exceptional at breaking work into legitimately small pieces. We’re talking: “Add the email field to the sign-up form” small, not “Implement authentication system” small. This is harder than it sounds. Many teams think they’re breaking things down small until they actually try this approach. Stable Velocity Baseline: You need historical data on how many stories your team completes per sprint (roughly). Ideally 2-3 sprints of completed work to establish a baseline. Without this, you’re flying blind. Team Confidence and Maturity: Your team needs to trust that small stories are genuinely small, and stakeholders need to understand that predictability comes from consistency and history, not estimation precision.
The Mechanics: How It Actually Works
Here’s what no-estimation looks like in practice:
1. The Definition of “Done Story”
First, your team defines what constitutes one unit of work. This is crucial because “one story” becomes your fundamental unit of planning:
- Includes analysis, design, implementation, testing, and deployment
- Definitely takes less than one day for a single developer
- Can be done independently without blocking others
- Provides measurable value to users or the system
- Includes documentation and basic QA For a typical development team, this might mean 4-8 hours of work per story at most. The size constraint is intentional—it forces prioritization and prevents scope creep within a single item.
2. Counting Completed Stories
Instead of story points, you track story count. At the end of each sprint, you ask: “How many stories did we complete?” That’s it. No velocity calculations. No burndown charts. Just raw numbers.
Sprint 1: 8 stories completed
Sprint 2: 7 stories completed
Sprint 3: 9 stories completed
Sprint 4: 8 stories completed
Average: 8 stories per sprint
This becomes your planning baseline. If you consistently complete 8 stories per sprint and your product backlog has 80 well-defined stories, you’re looking at approximately 10 sprints of work. Simple mathematics, no abstract reasoning required.
3. Sprint Planning Without Estimation
Planning becomes wonderfully straightforward:
- Sort the backlog by priority (you should be doing this anyway)
- Count stories from the top until you hit your historical average
- That’s your sprint goal
- Assign during the sprint, not before, because you’ll discover dependencies and blockers once people start working Yes, this means some work happens during the sprint that wasn’t pre-planned. This is actually fine—it’s called being responsive to reality. Your stakeholders will appreciate that you’re shipping value consistently rather than staring at a pre-made sprint plan that hasn’t aged well.
Comparing the Approaches: A Visual Framework
Here’s how the three primary estimation approaches actually stack up:
Simple to understand
Creates stress over time"] B -->|Mature Teams
Complex Work| D["Story Points
Abstract relative effort
Requires discipline"] B -->|Mature Teams
Small Stories
Clean Code| E["Story Count/No-Estimation
Maximum simplicity
Highly predictable"] C -->|Evolve to| D D -->|Transition to| E E -->|Works best| F["Consistent delivery velocity
Simple planning
Stakeholder confidence"] style E fill:#90EE90 style F fill:#FFE4B5
Real-World Implementation: A Step-by-Step Guide
Let’s walk through how a team might transition to story-count-based planning. This assumes you already have a reasonably functioning Agile setup.
Phase 1: Establish Baseline (2-3 Sprints)
What you do: Continue with story points if you currently use them, but also track story count. This gives you parallel data.
# In your sprint retrospective template, add:
- Stories completed (count): ___
- Total story points: ___
- Stories by size (average points per story): ___
Track this data religiously. You’ll see a pattern emerge. Some teams find they complete 6-12 well-defined stories per sprint; others complete 15-20. The number matters less than consistency.
Phase 2: Redefine Story Size (1 Sprint Planning Session)
What you do: Your team explicitly agrees on what “one story” means. Make it ridiculously concrete: Example story that’s too big:
- “Implement user profiles” (could be 20+ small pieces) Example story that’s right-sized:
- “Add first name field to user profile page and persist to database”
- “Create validation for email field during sign-up”
- “Add loading spinner to user profile page” Exercise: Take your last 10 completed stories. Would you break any of them further? If yes, that’s your new baseline size going forward.
Phase 3: Backlog Refinement Evolution (Ongoing)
This is where the change becomes real. Your refinement meetings shift from: Old approach:
- Analyze story → Debate story point value → Consensus → Move to ready New approach:
- Analyze story → Can we do this in <1 day? → If no, break it further → Move to ready You’ll find this actually moves faster. No more debates about 5 vs 8. Just: “Is this small enough?” Yes? Next. No? Break it. Next.
Phase 4: Adjust Planning Cadence (Week 1 of New Approach)
Your sprint planning changes from:
Pre-sprint: Estimate all items → Select to fill velocity estimate
To:
During sprint: Pull next priority items as current items complete
Yes, this means less “pre-planning” and more responsive work. Teams initially balk at this, then realize it reduces time spent in planning meetings and increases actual work done.
Phase 5: Monitor and Stabilize (4-6 Weeks)
Track story completion rate weekly:
| Week | Stories Complete | Cumulative | Trend |
|---|---|---|---|
| 1 | 5 | 5 | Starting |
| 2 | 7 | 12 | Ramping |
| 3 | 8 | 20 | Stabilizing |
| 4 | 9 | 29 | Stable |
| 5 | 8 | 37 | Consistent |
| 6 | 8 | 45 | Predictable |
Once you see 3-4 consistent weeks, you have your baseline. This becomes your planning number.
The Conversational Advantage
Here’s something nobody talks about: the planning conversation becomes massively simpler. With story points:
- Product Owner: “We need to do this feature”
- Team: “That’s 21 points”
- PO: “Can we do it faster? How many days?”
- Team: “Can’t translate directly… depends on velocity… maybe 2 weeks?”
- Everyone: 😩 With story count:
- Product Owner: “We need to do this feature”
- Team: “That breaks into 6 stories”
- PO: “When will it be done?”
- Team: “We complete about 8 stories per sprint, so 4-5 business days if it’s the only priority, or maybe 2 sprints if it’s mixed in”
- Everyone: ✅ The conversation is linear. It’s transparent. Stakeholders stop trying to convert story points to hours because there are no story points to convert.
What Actually Matters for Predictability
Here’s the secret that organizations discover after years of estimation obsession: predictability comes from consistency, not precision. Story point estimation tries to give you false precision. Your 5-point story is definitely not exactly 2.5 times the effort of a 2-point story. It’s approximately vaguely somewhere in that ballpark, probably. Story counting gives you consistency. If you complete 8 stories per sprint reliably, stakeholders can plan confidently around that. They don’t need to know the hours. They need to know: “If we commit to this 40-story feature, it’s roughly 5 sprints of work.” And when you deliver in 5 sprints, they’re amazed because you were accurate.
When This Approach Breaks Down
No methodology works in all contexts. No-estimation requires specific conditions: It struggles when:
- Your codebase is genuinely chaotic. You can’t break work into small stories when you don’t know what’s broken until you dig in.
- Your team is new to Agile. They need the scaffolding of estimation to understand how teams work.
- Your stories vary wildly in complexity. If one story is “add a button” and another is “refactor database schema,” story count becomes meaningless.
- Your organization demands traditional project management reports. Finance wants burn charts and projected completion dates in a format they recognize. It excels when:
- You have a stable, maintainable codebase
- Your team has Agile experience
- You can genuinely break work into similar-sized pieces
- Your culture prioritizes actual delivery over reporting metrics
The Transition Psychology
Real talk: teams switching away from story points often experience a mental adjustment period. You’ll hear things like:
- “But how do we track velocity?” (You don’t need to—you track story count, which is your velocity)
- “Our stakeholders want estimates” (They want predictability; this gives them that in a clearer way)
- “This feels too simple” (Yep. Simplicity is the point.) The transition typically takes 2-3 sprints. By sprint 4, people stop missing story points. By sprint 6, they can’t imagine going back.
Practical Template for Your First Sprint
If you want to try this approach starting next sprint, use this template: Pre-Sprint Activities:
- Ensure backlog items are small enough (can finish in <1 day)
- Identify your last 4 sprints’ story completion rates
- Calculate average (this is your planning target) During Sprint:
- Pull stories from the top of the prioritized backlog
- Work on stories, complete them, pull more
- No mid-sprint scope debates—stories are either ready or they’re not Sprint Review/Retro:
- Count completed stories
- Note any stories that couldn’t be completed and why
- Identify 1-2 blockers that made work harder
- Compare to baseline—adjust planning next sprint if needed Metrics You Actually Track:
- Stories completed per sprint (trend: should be consistent ±1)
- Items blocked per sprint (trend: should decrease)
- Deployment frequency (trend: should increase) Don’t track: velocity, story point burn, estimated vs. actual hours
The Bigger Picture
The move away from story point rituals isn’t anti-Agile. It’s more Agile. The Agile manifesto emphasizes individuals and interactions over processes and tools. Story point estimation became a tool that consumed time better spent on actual collaboration and delivery. Teams that embrace story-count estimation often discover they:
- Have shorter, more focused sprint planning sessions
- Spend more time understanding what’s actually being built
- Deliver more consistently
- Waste less time in refinement debates
- Have clearer conversations with stakeholders
Moving Forward
If your organization is exhausted by estimation theater, you have options. You don’t have to switch entirely—some teams run a hybrid approach where certain work uses story points and other work uses story count. You don’t have to switch immediately—you can establish baselines while continuing your current approach. But if your teams are spending more time estimating than shipping, if your sprint plans consistently fail to account for reality, if you’re having abstract arguments about story point values that nobody can defend… it might be time to try something simpler. Sometimes the most sophisticated solution is to admit that sophisticated estimation isn’t solving your problem. What you need is small work, consistent delivery, and honest conversations about capacity. That’s what you get when you stop estimating and start counting.
