Definition of done and acceptance criteria both describe when work is finished. They operate at different scopes, and using one where you need the other is one of the most common agile implementation mistakes.
Scope: the key difference
Acceptance criteria: story-level. They describe what this specific user story must achieve. They vary from story to story.
Definition of done: team-level. It describes the quality bar that every story must clear, regardless of its content. It does not vary.
Who writes each one
Acceptance criteria are written by the Product Owner (with team input). They live in the story itself and are reviewed in sprint planning.
The definition of done is written by the whole team together, usually in a retrospective or initial team charter. It lives somewhere visible — a wiki, a board column definition, or printed on the wall.
How they interact during a sprint
A story is done when it satisfies both. A story can pass all its acceptance criteria and still not be done if the code was not reviewed or the story was not deployed to staging. A story can meet the DoD perfectly and still not be done if it does not behave correctly.
Both gates must pass. There is no priority order.
Examples side by side
Story: As a user, I can reset my password.
Acceptance criteria:
- Given a valid email, when the user requests a reset, they receive an email within 60 seconds.
- Reset links expire after 24 hours.
- After a successful reset, the old password no longer works.
Definition of done (applied to every story including this one):
- Code reviewed and approved.
- Unit tests cover the reset flow.
- Deployed to staging.
- PO has tested and accepted.
The fast rule
If the criterion applies to every story → put it in the DoD. If it only applies to this story → put it in the acceptance criteria.
Use our free definition of done generator to draft a starting DoD, and our acceptance criteria generator for story-level criteria.
Related reading: Definition of done guide · DoD checklist · What is acceptance criteria.