User Stories: How to Create Acceptance Criteria

2017-12-31 14:29:00
Copied 2702

When working with clients who have already started adopting Agile, one of the first iem the author look at is their backlog. Why? Because the quality of the backlog is a leading indicator to how well the team will perform. Unfortunately, most backlogs created by beginning peoduct owners are in no shape to be consumed by a team, and the number one reason for this is usually a lack of acceptance criteria in the user stories.

In this article, the follwoinga will be covered.

  • What are acceptance criteria?
  • Why are they important?
  • Why they work well?
  • How to create them?

What are acceptance citeria?

Acceptance criteria are statements of requirements that are described from the point of view of the user to determine when a story is "done" and working as expected.

This helps the team reduce risks by testing against the same criteria that were agreed upon when the team accepted the work. Acceptance criteria are emerging and evolving and assumed to be flexible enough to change until the team starts working the story. Anyone in the team like business analyst, QA and developers can help the PO in both creating and reviewing the acceptance criteria.

Advantages of Acceptance Criteria:

  • Triggers the thought process for the team to hink through how a feature will work from the end user perspective.
  • Helps the team to write the accurate test cases without any ambiguity to understand the business value.
  • Eliminates unnecessary scope that will add no calue to the story, in other words, it will keep the right content.


Customer would like to have an email sent to my normal email address when his account goes into overdraft so that I know that I need to put money into my account.

Acceptance Criteria:

Valid Email Address
Email Address
Message sent to email address
Invalid Email Address
Email Address
Flag online progile as incomplete, kickoff snail mail message
Valid Email Address
Marketing Messaging
Marketing message copy matches copy provided by marketing
Valid Email Address
Marketing Messaging
Marketing message design matches the specifications provided by marketing
Valid Email Address
Marketing Messaging
Message contains email link that allows the user to navigate to online banking
Valid Email Address
Email Address
Message sent to email address
In the above example, acceptance criteria are a set of statements that represent the requirements "conditions of satisfaction". It also contains boundaries and parameters that determine when a story is completed and ready for acceptance. It expressed clearly in simple customer language without any ambiguity on what is expected as outcome. It must be easily actionable and translated into onw or more manual/automated test cases.

When the development team has finished working on the user story they demonstrate the functionality ot the Product Owner, showing how each criterion is satisfied.

Creating Accepatance Criteria

Acceptance criteria consists of three parts: input, process and outcome. A useful way to think about acceptance criteria is:

When IX andY, I will checkZ as the result.

THE INPUTS of acceptance criteria are things like "entering a value and pushing a button" or "entering a command and checking results".

THE PROCESS of acceptance criteria is the actual computation being checked, Usually when we  create a user story, we want something to happen for a given set of inputs by a user. That process, while not usually directly observable, is verifiable for a given set of inputs and expected outputs.

THE OUTCOME (RESULTS) of acceptance criteria should always be testable with minimal ambiguity.

When people hink about user stories, they usually think in terms of the user story description. However, the user story is not complete unitil it has verifiable acceptance criteria. Acceptance criteria also help the team quickly seize a user story, because once they know how the story will be verified, they understand their effort needed to make it happen.

Use acceptance criteria with every user story.


Write a Comment
Comment will be posted once reviewed.
Blog Category

Why choose ZenTao


Serving 30,000+ teams

Serving 200,000+ projects

Serving 800,000+ developers

The #1 in local market share

Free & Open

Open source and unlimited to commercial

Powerful extension mechanism and various plug-ins

Available on Github

Either Self-Host or Cloud Apps


Refined ALM support

Zero downtime upgrades 

Integrate Git and SVN (pro)

Word and Excel import & export (pro)

Preview-Edit-Diff document online(ent)

Integrate OPS-Attendance-Feedback(ent)


ZenTao team has involved in open source since 2004

Frequent releases and free upgrade forever(even self-hosted) 

Instant and powerful support for 20000+ companies


Out of the box, Less config

Nice price for small team($9.9)

Design to adhere Scrum Best practice

For Agile but not restrict to Agile


Applicable for different sized teams

Applicable for Agile/Waterfall

Modules can be used in any combination

Convenient customization