Blog

Get insight into the latest in Drupal development

Acceptance Criteria - Get it Done, One Check Mark at a Time

Person looking at screen of check marks

Acceptance criteria are specific, testable conditions that a product or user story must meet to be considered complete. They emphasize the desired outcome rather than the process used to achieve it, helping ensure customer satisfaction. While user stories focus on the "why" behind a feature by capturing the user's needs and goals, acceptance criteria clarify the "what" by setting standards to determine when the work is done successfully.

User stories and acceptance criteria work hand in hand but serve different functions. A user story offers a customer-centered narrative describing a desired feature, while the acceptance criteria define the technical and functional success metrics for that story. For example, a story about a product search feature would be paired with criteria detailing how search results should behave, ensuring the delivered functionality meets user expectations.

Good acceptance criteria are clear, concise, testable, and outcome-oriented. They reduce ambiguity, improve communication, and support efficient testing and project management. By creating a shared understanding among team members and stakeholders, acceptance criteria ensure that development aligns with user needs, minimizes rework, and enhances overall satisfaction with the final product.

How to write acceptance criteria

  1. Start with the user story
    • Ensure each acceptance criterion ties back to the user story to maintain alignment with the desired functionality.
  2. Focus on outcomes
    • Describe the expected user experience and what the feature should achieve. Avoid technical implementation details.
  3. Use clear and concise language
    • Write in plain, simple terms that all stakeholders (developers, testers, product owners) can understand. Avoid jargon and ambiguity.
  4. Ensure testability
    • Each criterion should be verifiable through testing, allowing for objective confirmation that the requirement is met.
  5. Include measurable elements
    • Use quantifiable terms where possible to define success clearly (e.g., “must display images at 300x300 pixels”).
  6. Keep criteria independent
    • Write criteria that can be tested in isolation to streamline the testing process and reduce dependencies.
  7. Incorporate User Acceptance Testing (UAT)
    • Add UAT-specific criteria to validate the feature from a usability and end-user perspective.
  8. Encourage collaboration
    • Involve product owners, developers, testers, and other stakeholders to ensure comprehensive and well-rounded criteria.
  9. Review and refine as needed
    • Update and adjust acceptance criteria throughout the development process as understanding deepens or requirements evolve.

Examples of Acceptance Criteria

Example 1

User story: As a customer, I want to search for products by name so I can quickly find the items I'm looking for.

Acceptance criteria:

  • The search function must return results that exactly match the entered product name.

  • The search function must also return results that partially match the entered product name (with a minimum of three matching characters).

  • Search results must be presented in a clear, organized format, including the product name, image, and price.

  • The search results page must support pagination, showing no more than 20 items per page.

Example 2

User story: As a registered user, I want to update my account information to keep my profile current.

Acceptance criteria:

  • Users must be able to access an Edit Profile section from within their account settings.

  • Users must be able to update their first name, last name, email address, and phone number.

  • All profile changes must be saved when the user clicks the Save button.

  • A confirmation message must be displayed once the profile update is successful.

Example 3

User story: As an administrator, I want to generate and review reports on user activity to monitor engagement effectively.

Acceptance criteria:

  • The admin dashboard must include a dedicated section for generating user activity reports.

  • Administrators must be able to create reports that detail activities such as logins, product views, and purchases.

  • Reports must offer filtering options based on date range and user type.

  • Reports must be available for download in multiple formats (e.g., CSV, PDF).