| Anti-pattern | Bad example | Fix |
|---|---|---|
| System as actor | "The API should validate the email format" | "As a user, I want inline email validation feedback" |
| Epic as story | "Build the entire checkout flow" | Split by workflow steps into 4–6 stories |
| Vague AC | "Should feel intuitive" / "be accessible" | Replace with a measurable, yes/no-testable outcome |
| AND-heavy AC | "User can search, filter, and sort results" | One criterion per capability |
| Missing "so that" | "As a user, I want a dashboard" | Add the benefit — it reveals whether the story is actually correct |
| AC as implementation | "Back-end should use Redis for session caching" | Describe observable behavior, not the chosen solution |
| Too many AC | 10+ criteria on a single story | Story is an epic — split it before estimating |