Guide

Real companies have contracts, board demos and sales cycles. Pretending otherwise loses trust. The fix is capacity partitioning, not infinite yes. Engineers should not silently absorb "just this one ask" forever. Track the committed bucket; when it exceeds the allocation, escalate.

Discovery work belongs on the roadmap as first-class Now items ("interview 8 churned accounts"; "concierge pilot for templates"), not as invisible pre-work that somehow happens between commits. If discovery never appears on the board, it will be the first thing sacrificed when sales pressure rises — and then the next quarter's features will be guesses again.

The big idea

  1. Reserve a slice of roadmap capacity for committed work (often 10–30%).
  2. Put commitments in Now with clear scope and owners.
  3. Protect a larger slice for outcome-driven discovery and delivery.
  4. When a new commitment arrives, show what it displaces — prioritization in public.

Say: "We can take the custom report for Acme if we delay the invite redesign by a cycle; invite redesign is our activation KR. Which do you want?" Make the trade visible.

A practical quarterly rhythm (~1–2 weeks of planning for a multi-team org):

  1. Inputs: strategy refresh, metric review, win/loss, incident themes, sales forecast of must-haves, eng capacity (after vacations, on-call, known migrations).
  2. Capacity math: if you have 6 engineers × 10 weeks ≈ 60 eng-weeks, subtract ~20% meetings/on-call/interruptions → ~48. Allocate buckets (growth / commit / reliability / debt).
  3. Draft OKRs from strategy, not from the wishlist.
  4. Fill Now/Next with bets that could move those KRs; leave Later thematic.
  5. Shape work so Now items have clear problem statements and appetite — see MVP and scoping.
  6. Socialize with sales, support, leadership; publish one roadmap artifact everyone uses.

Do not plan every eng-week to 100%. Slack is how you absorb incidents and opportunities. Under-planning is rare; over-commitment is the default failure mode.

Every Now bet should name the metric it hopes to move and how you will measure it. If instrumentation is missing, the first slice of the bet is analytics, not UI chrome.

When several squads share a product, local OKRs can cancel out (growth team spams email; trust team raises unsubscribe). Shared guardrail metrics exist to prevent that.

Walking through it

Team of 5 engineers, 12-week quarter. Raw: 60 eng-weeks. Minus 15% interrupt buffer → 51. Allocation: 50% growth outcomes (25.5), 20% commits (10), 15% reliability (7.5), 15% platform/debt (7.5). Now column fits roughly two medium bets (~8–10 eng-weeks each) plus smaller experiments — not eight "priorities."

If sales already consumed 18 eng-weeks of commits, you either renegotiate commits or admit growth OKRs are theater this quarter.

When capacity is already full, answer new requests with "what should we displace?" — that is roadmap hygiene, not obstruction.

Common mistakes

  • 100% utilization plans. No slack means every incident silently kills a KR.
  • Discovery as invisible pre-work. It will be the first thing cut.
  • Growth OKRs with a commit bucket already overflowing. Theater. Renegotiate or relabel.

Check yourself

  1. 5 engineers × 12 weeks = 60 eng-weeks, minus 15% buffer. Commits already 18. Can you honestly hold a 50% growth bucket?

No. 51 available, 18 commits is already ~35%, not 20%. Renegotiate commits or admit growth OKRs are theater.

  1. A new "just this one" sales ask arrives. What do you show?

What it displaces — which Now bet, which KR. Make the trade visible.

Key takeaways

  • Partition capacity (often 10–30% commits) so discovery and delivery survive sales pressure.
  • Plan quarters from strategy + capacity math; leave slack; publish one shared roadmap.
  • Discovery is a Now item, not a gap between commits.

Further learning

Measure What Matters — OKRsDo what matters with OKRs.What Matters

Back to the map: roadmaps.