Story points vs acceptance criteria

Acceptance criteria define done. Story points size the path to it. They're not the same axis.

Acceptance criteria describe the outcome — what has to be true for the story to be considered shipped. Story points describe the path — how big the work is between "we don't have this yet" and "the criteria are satisfied." Two distinct things; conflating them produces sized criteria, which is meaningless, or criterion-less points, which is wishful.

A story has both. The criteria come from the conversation about what the user needs; the points come from the conversation about what it'll take to deliver. Both happen in refinement; both are inputs to the team's definition of ready.

Does adding criteria change the points?

Sometimes. Adding a criterion that surfaces hidden work (e.g. "must be accessible to screen readers") usually changes the estimate, because the criterion is naming work that was implicit. Adding a criterion that just clarifies an existing assumption (e.g. "must work on Chrome and Safari" when those were already the supported browsers) shouldn't change the estimate.

The signal: when the team re-estimates after a criterion is added, watch the spread. A wider spread is the new criterion exposing scope the team hadn't previously aligned on. A tighter spread is the criterion just making something explicit. Both are useful; only one changes the number.

The order to do them in

Criteria first, then points. Estimating before the criteria are clear is estimating before refinement — the most common shape of wide-spread votes.

See: definition of ready covers what good criteria look like at story-entry time.