How to Write Acceptance Criteria: Examples and Best Practices (2024)

Here at Mobindustry, we operate with an Agile approach. That means we use Agile components like user stories and acceptance criteria. High-performing teams and organizations have these components in their product backlogs, and they know how to create them and use them effectively. If you want to create an MVP, acceptance criteria is one of the most important things to thought through.

If your product backlog lacks user stories and acceptance criteria — or if they’re not clearly defined — you risk your expectations not converging with reality. User stories and acceptance criteria are responsible for representing how the end user will use your app and how your development team should execute each development task. When we start working on a new product, our team collaborates with the client to define user stories.

A user story is a short, simple description of a product feature from the perspective of a person who wants to use that feature. User stories are used to define the product backlog in an Agile development workflow.

The product backlog is essentially a collection of user stories that informs the functional specification and the development of features for a particular product or service. User stories consist of three parts: a persona of the user the story is being written for, a description of the feature the user requires, and an explanation of the need the feature satisfies.

Here’s how to write user stories and acceptance criteria:

As a (user) I want a (feature) so that I can (satisfy a need).

Let’s take a look at how a user story might look. We’ll take Airbnb as an example. Let’s imagine how a typical user story might look for a product like Airbnb.

“As a user, I want to search for a destination so I can book accommodation in a foreign city.”

Read alsoLean Startup Principles, Methodology, and Examples 10 mins to read

Definition of acceptance criteria

Now, we need to make sure that user stories are completed correctly and accommodate the client’s demands.

Acceptance criteria are the conditions that a software product must satisfy to be accepted by a user, customer, or, in the case of system-level functionality, the consuming system.

Acceptance criteria are a set of statements, each with a clear pass/fail result, that can be measured and specify both functional and non-functional requirements.

Writing acceptance criteria is important not only for establishing what the client expects of the product but for the development process. Naturally, different people see the same problem from different angles. Well-defined acceptance criteria provide a uniform view of the functionality you plan to implement.

Anyone should be able to walk up to a Scrum board, grab a product backlog item, read the acceptance criteria, and clearly see everything that needs to be completed for that particular item to be moved to the done column. Acceptance criteria tell you what needs to be done for a particular part of a product to be finished.

Mobile and Web App Development

Are you planning to expand your business online? We will translate your ideas into intelligent and powerful solutions.

Get a Free Consultation!

Why do we need acceptance criteria?

Defining boundaries

Acceptance criteria help the development team define the boundaries of a user story. They serve as a form of confirmation that the app is working as expected, which means the user story is complete.

Reaching consensus

Acceptance criteria allow the development team to be on the same page as the client. They inform the development team about exactly what conditions must be met and ensure the client knows what to expect from the application.

Streamlining acceptance testing

Acceptance criteria are the foundation of user story acceptance testing. Every acceptance criterion should be tested independently and have clear scenarios for success or failure.

Planning and estimating

Acceptance criteria allow you to distribute user stories across tasks so they’re properly assessed and scheduled.

Describing negative scenarios

Acceptance criteria may require the system to identify a weak password and prevent a user from continuing, for instance. Entering an incorrect password format is an example of a negative scenario in which a user enters incorrect data or behaves unexpectedly. Acceptance criteria identify these scenarios and explain how the system should respond to them.

Writing Functional and Non-functional Requirements: Examples and Best Practices Want to write non-functional and functional requirements for your software project? In this article, we provide you with example and best practices of functional and non-functional requirements

Who writes acceptance criteria?

Writing acceptance criteria helps to establish a common understanding between the product owner and the development team with regard to solving a customer’s problem or creating product capabilities. But who should write acceptance criteria? Since acceptance criteria relate to the client and the team, they should be written either by the client or a team member.

At Mobindustry, our business analysts write all the acceptance criteria for user stories. Business analysts understand the client’s needs and what developers need to know to meet the project requirements.

Acceptance criteria are documented and confirmed before the start of the project, as the team and the client need to agree on what outcomes will meet the client’s requirements.

Mobile and Web App Development

Are you planning to expand your business online? We will translate your ideas into intelligent and powerful solutions.

Get a Free Consultation!

Main challenges of writing acceptance criteria

The main challenge of writing good acceptance criteria is to keep a balance between detail and broadness. As they say, it’s hard to make something simple, so you need to keep your AC documentation concise and clear, but not restrictive.

Let’s talk about some common mistakes and their solutions, so you can come up with your own best way to write acceptance criteria.

Writing acceptance criteria as the development goes. You need to have AC documentation in place before the development process starts so that all the team members are on the same page regarding user needs. Developers need to decide on technical solutions based on the acceptance criteria, and they should be agreed upon beforehand.

Narrowing the AC down too much. Your acceptance criteria should be concrete, but not too narrow. Remember, that they only indicate the direction and not the means of getting there, so leave enough freedom for your developers to come up with the solution.

Going too deep into technical details. Write your acceptance criteria in simple language that’s commonly understood among your technical specialists, stakeholders, designers, and other members of your team.

Using passive voice and negative constructions. Write your AC as if a user was talking with you. For example, “I want to be able to find my destination on a map and check the working hours directly from there”. Avoid using “not” and write positive sentences wherever it’s possible.

Examples of user stories with acceptance criteria

Now that you have a clear understanding of what user stories and acceptance criteria are, let’s take a look at some examples.

Example 1

User story: As a user, I want to be able to register for the service so that I can start shopping online.

Acceptance criteria:

  • Users can only submit a form by filling in all the required fields.
  • The email the user provides must not be provided by free email service.
  • Submissions from the same IP can only be made three times within 30 minutes.
  • Users receive notification emails after successfully registering.
Read alsoHow to Create Product and Technology Roadmaps for Your Tech Startup 10 mins to read

Example 2

User story: As a user, I am able to access notification on my device immediately after receiving it.

Acceptance criteria:

  • Swiping/tapping a notification takes the user directly to the message.
  • View shows conversation — if the new message was a reply, then it’s displayed above the original.
  • The message count is updated.
  • A message is marked read after it’s displayed.

Types of acceptance criteria

There are many types of selection criteria. However, the following types are the most popular.

Scenario-oriented acceptance criteria.

This type of acceptance criteria is presented as a scenario and illustrates each criterion. Moreover, they are widely used by Agile teams because they allow them to fulfill requirements and use scripts for manual and automated acceptance testing.

Rules-oriented acceptance criteria

In contrast to the scenario-based eligibility criteria, the rule-based eligibility criteria scenarios are presented as a list.

7 tips on writing good acceptance criteria

How to Write Acceptance Criteria: Examples and Best Practices (2)

Acceptance criteria aren’t easy to write. Despite the simple format, writing the text is a challenge. Here are seven tips to help you avoid common mistakes while writing acceptance criteria or reviewing criteria written by a member of your team.

Document criteria before the development process starts

In this way, the team is more likely to catch all of the client’s needs in advance. Initially, it’s enough to set criteria for a small number of user stories to complete backlogs for two sprints. The documented acceptance criteria are then used by developers to plan the technical process.

Don’t make acceptance criteria too narrow

Acceptance criteria that’s too specific leaves developers little room to maneuver. To avoid this, remember that acceptance criteria should be an expression of intent, not a final decision. Moreover, narrow acceptance criteria may not take into account all user actions.

Keep your criteria achievable

Effective acceptance criteria define a reasonable minimum amount of functionality that you can provide. But if you keep describing all the little details, there’s a risk that your team will get stuck on hundreds of small tasks.

Avoid too broad of acceptance criteria

Broad acceptance criteria make a user story vague. Effective acceptance criteria must outline the scope of work so that developers can properly plan and estimate their efforts.

Avoid technical details

Acceptance criteria should be written in plain language. Your stakeholders and managers may not have technical backgrounds, so using plain language will make the criteria understandable for everyone.

Reach consensus

The same problem can be solved in different ways by team members and stakeholders depending on their points of view. Make sure you communicate your acceptance criteria to stakeholders and team members and reach a mutual agreement.

Write testable acceptance criteria

This will give testers the opportunity to ensure that all requirements are met and will allow developers to know if the user story is complete.

How to write acceptance criteria

Here are five general rules that will help you solve problems with the wording of acceptance criteria. These rules will let you save valuable time and establish an understanding between the product owner and the development team.

Rule #1: Avoid “not”

“Not” means “in no case,” and therefore no amount of time will be enough to verify compliance with such a condition. If you rewrite the requirement without using “not,” it will be clearer and, most importantly, verifiable.

Example:

User Story

Don’t: As a user, I do not want to have to enter my password every time I access my account.
Do: As a user, I want my password to be remembered and automatically filled in so that I can access my account without re-entering my password.

Acceptance criteria

Don’t: The system must not fail.
Do: The system should have availability of no less than 90%.

Exception

You can use “not” in acceptance criteria to introduce a logical objection, such as “the login form should not be red.” In most cases, this will apply to non-functional requirements. In this example, we formulate a constraint that can be easily verified if the range of shades of red is clearly defined (for example, specified in RGB format).

First Time Working With Outsourcing: How We Built Communication With a Client Team Learn how we optimized the customer experience with a mobile app

Rule #2: Use active voice

Active voice is when the subject in a sentence is the performer of the action. If the entity responsible for executing the action is not clearly indicated, it will be unclear who or what should perform the action, and it will be more difficult for you to verify whether a requirement is fulfilled.

Example:

User story

Don’t: As an online shopper, I want filters to be applied so that I can find what I want.
Do: As a user, I want to apply search filters so that I can find items.

Acceptance criteria

Don’t: The identity of the customer should be confirmed. (It is unclear who or what is responsible for confirming the identity of the customer.)
Do: The Accounting_System should confirm the Customer_Indentity. (Note that the definitions of the terms “Accounting_System” and “Customer_Indentity” should be added to the glossary.)

Mobile and Web App Development

Are you planning to expand your business online? We will translate your ideas into intelligent and powerful solutions.

Get a Free Consultation!

Rule #3: Avoid using pronouns (especially undefined ones)

Use nouns instead of pronouns when referring to items referenced in other requirements. Pronouns should be avoided because they may introduce ambiguity.

This is especially important when acceptance criteria are stored in requirement management tools (such as Jira) as separate statements that are not necessarily organized. Always use nouns instead of pronouns and you’ll avoid this problem.

Example:

User story

Don’t: As a site member, I want to share information about myself so that others can see it.
Do: As a site member, I want to add a profile description so that others can learn about me.

Acceptance criteria

Don’t: The controller should send the driver the itinerary for the day. It should be delivered at least 8 hours prior to the shift.
Do: The Controller should send the Driver_Itinerary for the day to the Driver at least 8 hours prior to the Driver_Shift.

How to establish remote work for your business: the experience of IT outsourcing company How to manage remote teams, best practices. Mobindustry shares its experience as an IT outsourcing company

Rule #4: Avoid conjunctions

Conjunctions are words and phrases such as “and,” “or,” “but,” and “as well as” that combine simple sentences into complex ones. Their use in requirements is usually a sign that a requirement can be broken down into several separate requirements.

Example:

User story

Don’t: As a UI designer, I want to create and view an issue so that I know what to test.
Do: As a UI designer, I want to create an issue so that I know what to test. / As a UI designer, I want to view an issue so that I know what to test.

Acceptance criteria

Don’t: The user should either be trusted or not trusted.
Do: The Security_System should categorize each User as either Trusted or Not_Trusted.

Exception

“And,” “or,” and “not” can be used to describe logical conditions and add qualifiers.

Mobile and Web App Development

Are you planning to expand your business online? We will translate your ideas into intelligent and powerful solutions.

Get a Free Consultation!

Rule #5: Avoid unattainable absolutes

An absolute (such as 100% availability) is unattainable. Think about how to check the indicator: will it be possible to prove that the level of system availability is exactly 100%? And even if such a system could be created, can you afford it?

Avoid the words “all,” “always,” and “never,” as checking such absolute requirements will require an infinite number of tests.

Example:

User story

Don’t: As a traveler, I want to know my precise location updated in real time so that I don’t get lost. (“Real time” can be interpreted in different ways. For example, it can be seen as an absolute (the absence of any delay), which cannot be achieved and which is not verifiable.)
Do: As a traveler, I want to know my precise location, updated every second, so that I don’t get lost.

Acceptance criteria

Don’t: The system should have 100% availability. (100% is an absolute that cannot be reached and cannot be verified.)
Do: The system should have an availability of at least 98%.

Read alsoDiscovery Phase of a Software Development Project: What It Is and Why You Need It 10 mins to read

Ready-to-use templates for writing acceptance criteria

You can either write the AC on your own or use ready-made templates. Here are several resources that provide downloadable templates.

  • Klaritiprovides Excel templates for writing acceptance criteria in their Software testing pack
  • Aha!will give you a convenient template for writing user stories and ACs
  • PowerSlidesprovides a PPT template with different designs that you can choose from to write both user stories and acceptance criteria

Quick summary of acceptance criteria

We hope this article has shed light on the best ways to write acceptance criteria and user stories. Here are the key takeaways:

  • Acceptance criteria are the conditions a software product must satisfy to be accepted by a user, customer, or in the case of system-level functionality, the consuming system.
  • Acceptance criteria should be documented and completed before the start of a project, as the team and the customer must agree on what results will meet the client’s requirements.
  • Remember that acceptance criteria should be an expression of intent, not a final decision.
  • Effective acceptance criteria define a reasonable minimum amount of functionality.
  • Good acceptance criteria must outline the scope of work so developers can properly plan and estimate their efforts.
  • Acceptance criteria should be written in plain language.
  • Make sure you communicate your acceptance criteria to stakeholders and team members and reach a mutual agreement.
  • While writing acceptance criteria, avoid using “not,” conjunctions, and unattainable absolutes. Formulate sentences using active voice.

If you want to create acceptance criteria and user stories for your mobile app or if you have any questions regarding this topic, contact Mobindustry for a free consultation.

How to Write Acceptance Criteria: Examples and Best Practices (5)

Get an example of the Discovery Phase documentation for your digital project

Get our exclusive materials on software development for business

How to Write Acceptance Criteria: Examples and Best Practices (9)

How to Write Acceptance Criteria: Examples and Best Practices (2024)

FAQs

How do you write acceptance criteria and best practices examples? ›

Here are a few tips that'll help you write great acceptance criteria:
  1. Keep your criteria well-defined so any member of the project team understands the idea you're trying to convey.
  2. Keep the criteria realistic and achievable. ...
  3. Coordinate with all the stakeholders so your acceptance criteria are based on consensus.
7 Jan 2020

How do you write when given acceptance criteria? ›

The Given-When-Then formula is a template intended to guide the writing of acceptance tests for a User Story: (Given) some context. (When) some action is carried out. (Then) a particular set of observable consequences should obtain.

What makes a good acceptance criteria? ›

What makes good Acceptance Criteria? Acceptance criteria define when a work item is complete and working as expected. Express criteria clearly, in simple language the customer would use, without ambiguity regarding the expected outcome.

How much detail should be in acceptance criteria? ›

Acceptance Criteria must be expressed clearly, in simple language the customer would use, just like the User Story, without ambiguity as to what the expected outcome is: what is acceptable and what is not acceptable. They must be testable: easily translated into one or more manual/automated test cases.

Which of the 4cs is the acceptance criteria? ›

Confirmation is the acceptance criteria which captures the essential requirements and translates them into the test criteria so that we know when we've successfully delivered the user story.

How do you write acceptance criteria in behavioral driven environment? ›

Using BDD to write acceptance criteria for User Stories

Confirm when the application functions as desired. Synchronises the development team with the customer. Create a basis for testing as a positive or negative outcome. Planning and refinement as all possible scenarios are known.

What is acceptance criteria in scope statement? ›

Acceptance criteria represent a specific and defined list of conditions that need to be met before a project can be considered completed and the project deliverables are accepted by the client.

Which of the following are types of acceptance criteria? ›

There are two distinctive approaches to writing acceptance criteria: scenario-based and rule-based. Each one takes a slightly different focus and has its own set of appropriate use cases. However, both can play a key role in defining user requirements and design goals.

What is success and acceptance criteria? ›

As per PMBOK5 “Acceptance criteria are a set of conditions that is required to be met before deliverables are accepted”. Success Criteria on the other hand is more of project management practice where success factors like cost, schedule, customer satisfaction, cost benefit analysis, ROI etc. are evaluated.

What should I put for acceptance criteria in Jira? ›

The team needs to know how the product or feature is expected to work – this is specifically what the Acceptance Criteria in User Stories in Jira explains. The more detailed description the customer is able to provide about their business needs, the fewer questions the team will ask after work starts.

How much acceptance criteria is too much? ›

Rule of Thumb: My rule of thumb for number of acceptance criteria is to have between 1-3 per user story. If a user story have between 4-5 of these, I start exploring options to split the story.

What is agile acceptance criteria? ›

Acceptance criteria (AC) are the conditions that a software product must meet to be accepted by a user, a customer, or other systems. They are unique for each user story and define the feature behavior from the end-user's perspective. Acceptance criteria are the lowest-level functional requirements.

How do you write User Stories 7 guidelines in agile? ›

User stories are critical to the Agile development process and must be well written.
...
They are the following:
  1. ambiguity.
  2. inconsistency.
  3. complexity.
  4. duplication.
  5. omission.
  6. testability.
  7. size.
12 Aug 2020

How do I prioritize my 4Cs? ›

Based on the Four C's, the ideal diamond ranks like this:
  1. Cut – Ideal (Proportioned to return the greatest possible light)
  2. Color – (Colorless or White) D, E, F.
  3. Clarity – Flawless.
  4. Carat Weight – If you have the best cut, color, and clarity, then the carat weight doesn't matter. Of course, larger diamonds are more rare.

What are the 3 practices of BDD? ›

The BDD process moves through three phases—discovery, formulation, and automation—where the acceptance criteria are transformed into acceptance tests that are later automated.

What are the 4 steps in acceptance test driven development? ›

The Acceptance Test Driven Development ATDD moves in a typical cycle. This ATDD cycle comprises of 4 stages – Discuss, Distill, Develop and Demo.

How do you write Gherkin acceptance criteria? ›

Gherkin is a Domain Specific Language for writing acceptance criteria that has five main statements:
  1. Scenario — a label for the behavior you're going to describe.
  2. Given — the beginning state of the scenario.
  3. When — a specific action that the user takes.
  4. Then — a testable outcome, usually caused by the action in When.
21 Nov 2017

What are examples of criteria? ›

Common examples of decision-making criteria include costs, schedules, popular opinions, demonstrated needs, and degrees of quality.
...
Criteria may also be referred to as requirements and can be defined in three basic ways:
  • Numerical values. ...
  • Yes/no values. ...
  • Ratings values.

Which of the following is a good example of an acceptance criterion? ›

Example acceptance criteria

Acceptance criteria define the boundaries of a user story, and are used to confirm when a story is completed and working as intended. So for the above example, the acceptance criteria could include: A user cannot submit a form without completing all the mandatory fields.

What is the difference between acceptance criteria and requirements? ›

Requirements are what the client / customer have asked for. Acceptance Criteria, often expressed as tests, are used to illustrate Requirements and to indicate, when the tests pass, that the Requirements have been met.

What are some examples of success criteria? ›

10 Examples of Project Success Criteria
  • The project is completed on time.
  • The project is completed within the given amount of budget.
  • The project fulfills all the scope given beforehand.
  • The results of the project are functional.
  • The project meets consumer demand.
  • The client is satisfied with the outcome of the project.
17 Aug 2022

What is success criteria in simple words? ›

WHAT ARE SUCCESS CRITERIA? The standards/levels by which to judge whether an objective/goal/ target/outcome has been achieved/successful.

What are some success criteria? ›

Establishing success criteria at the start of a project can help the entire team understand requirements and expectations for successful outcomes.
...
7 project success criteria examples
  • Cost. ...
  • Timeline. ...
  • Scope. ...
  • Deliverables. ...
  • Resource capacity. ...
  • Business goals. ...
  • Stakeholder satisfaction.

› Blog › Agile ›

What are acceptance criteria in Agile? Understand the format and get expert tips for writing acceptance criteria with examples, dos and don'ts, and more!
Acceptance criteria in Agile is the set of default requirements that are to be fulfilled by the developers to complete a user story.

What is acceptance criteria in project management example? ›

Project Acceptance Criteria Examples

Backup and Restore testing has been completed successfully. User acceptance testing (UAT) has been completed, and the Senior User/Project Executive has signed off on user acceptance testing. All requirements have been formally approved.

How do you write a good PBI? ›

Each PBI must have these qualities:
  1. Description: What the goal of the PBI is.
  2. Value: the Business Value of the PBI as determined by the Product Owner.
  3. Estimate: the Team needs to estimate the relative effort it will take to move the PBI to Done.
  4. Order: The Product Owner needs to prioritize PBIs by their relative value.

How do you write Gherkin acceptance criteria? ›

Gherkin is a Domain Specific Language for writing acceptance criteria that has five main statements:
  1. Scenario — a label for the behavior you're going to describe.
  2. Given — the beginning state of the scenario.
  3. When — a specific action that the user takes.
  4. Then — a testable outcome, usually caused by the action in When.
21 Nov 2017

Which of the following are types of acceptance criteria? ›

There are two distinctive approaches to writing acceptance criteria: scenario-based and rule-based. Each one takes a slightly different focus and has its own set of appropriate use cases. However, both can play a key role in defining user requirements and design goals.

What is the difference between deliverables and acceptance criteria? ›

Acceptance criteria are part of the work to be done and is used to evaluate the deliverables. Once the deliverables are accepted at each stage of the project, the project officially moves to the next stage. Acceptance criteria are part of the requirement document and the project scope document.

What are the five criteria for project selection? ›

2. The fundamentals of project selection criteria
  • 2.1 Strategic Alignment with business goals. ...
  • 2.2 Assessment of resource capabilities and availability. ...
  • 2.3 Evaluation of potential risks. ...
  • 2.4 The impact on customer satisfaction and brand loyalty. ...
  • 2.5 Data Availability and Expected Revenue.
8 Sept 2022

What is the difference between backlog and user stories? ›

The product backlog is the list of all the work that needs to get done. It usually contains user stories, bugs, technical tasks, and knowledge acquisition. The backlog is periodically refined by the product owner and scrum team to ensure 2–3 sprints worth of work is always defined and prioritized.

What is the difference between a sprint backlog and product backlog? ›

The Product Backlog is specific to the entire goal of the product. The Sprint Backlog is specific only to the Sprint goal in a particular Sprint. May have chances to vary based on the vision of the customer.

What is Agile acceptance criteria? ›

Acceptance criteria (AC) are the conditions that a software product must meet to be accepted by a user, a customer, or other systems. They are unique for each user story and define the feature behavior from the end-user's perspective. Acceptance criteria are the lowest-level functional requirements.

How do you write an example in the gherkin? ›

More videos on YouTube
  1. Step 1: Activate the BDD mode. ...
  2. Step 2: Create a feature. ...
  3. Step 3: Write a scenario with the Given/When/Then syntax. ...
  4. Step 4: Add examples and use scenario outline.
19 Jan 2022

How do you write a good Gherkin scenario? ›

Gherkin's Golden Rule is simple: Treat other readers as you would want to be treated. More specifically, write feature files so that everyone can intuitively understand them. Good Gherkin should improve team collaboration by clarifying behaviors you want to develop.

What are examples of criteria? ›

Common examples of decision-making criteria include costs, schedules, popular opinions, demonstrated needs, and degrees of quality.
...
Criteria may also be referred to as requirements and can be defined in three basic ways:
  • Numerical values. ...
  • Yes/no values. ...
  • Ratings values.

Which of the following is a good example of an acceptance criterion? ›

Example acceptance criteria

Acceptance criteria define the boundaries of a user story, and are used to confirm when a story is completed and working as intended. So for the above example, the acceptance criteria could include: A user cannot submit a form without completing all the mandatory fields.

What are the 4 types of acceptance testing? ›

Types of acceptance testing include:
  • Alpha & Beta Testing.
  • Contract Acceptance Testing.
  • Regulation Acceptance Testing.
  • Operational Acceptance testing.

Top Articles
Latest Posts
Article information

Author: Pres. Lawanda Wiegand

Last Updated:

Views: 5420

Rating: 4 / 5 (71 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Pres. Lawanda Wiegand

Birthday: 1993-01-10

Address: Suite 391 6963 Ullrich Shore, Bellefort, WI 01350-7893

Phone: +6806610432415

Job: Dynamic Manufacturing Assistant

Hobby: amateur radio, Taekwondo, Wood carving, Parkour, Skateboarding, Running, Rafting

Introduction: My name is Pres. Lawanda Wiegand, I am a inquisitive, helpful, glamorous, cheerful, open, clever, innocent person who loves writing and wants to share my knowledge and understanding with you.