agile3
Product Management

INVEST Criteria

A six-letter checklist for writing good user stories: Independent, Negotiable, Valuable, Estimable, Small, Testable.

2 min read · Beginner

In 30 seconds

  • INVEST is a quick quality check for user stories.
  • Six letters: Independent, Negotiable, Valuable, Estimable, Small, Testable.
  • Stories failing a letter usually need splitting or rewording.

The six letters

LetterMeansIf it fails
I: IndependentCan be built in any orderCombine or reslice dependent stories
N: NegotiableDetails are open for discussionRemove premature design detail
V: ValuableDelivers value to a user or customerSlice vertically, not by technical layer
E: EstimableThe team can size itRun a short spike to learn more
S: SmallFits comfortably in a sprintSplit by workflow step or rule
T: TestableClear way to verify itWrite acceptance criteria

Using it in practice

Run a story through INVEST during Backlog Refinement. You don't need a perfect score; a story that fails two or more letters is a strong signal to rework it before Sprint Planning.

Origin

Bill Wake proposed the INVEST acronym in 2003 as a memory aid for user story quality.

Myth vs reality

Myth · Every story must pass all six.
Reality · It's a guide; independence in particular is often only approximate.
Myth · Small means trivial.
Reality · Small means finishable in a sprint while still delivering value.
Myth · INVEST replaces acceptance criteria.
Reality · "Testable" is satisfied by having good acceptance criteria.

The AI angle

For AI agents, Small and Testable matter even more: agents do best on narrow, well-bounded tasks with clear checks. Independent helps too, so agent work doesn't collide.

User Stories for AI Agents →

FAQ

Which letter fails most often?

Small and Valuable: big stories get split by technical layer instead of by user value.

Is INVEST part of Scrum?

No. It's a widely used community practice for writing stories.

Does INVEST apply to bugs?

Loosely. A bug should still be testable and small enough to fix in a sprint.