Free tool · Acceptance criteria

Acceptance criteria writer

A Given/When/Then acceptance criterion is a plain-language test case: Given sets the starting state, When names the action, and Then states the expected, checkable result — with an optional So-that line for why it matters. Add your own rows below, then copy them as Markdown or a checklist; everything stays in this browser tab.

Published · ShipperAG team

Short answer. A Given/When/Then acceptance criterion is a plain-language test case: Given sets the starting state, When names the single action, Then states the expected, checkable result, and an optional So-that line gives the reason it matters. Tech and product teams write these rows before work starts, so a build and a test share one agreed definition of done.

Free acceptance criteria writer

Add your Given, When, Then and So-that rows below. The generator builds a Markdown or checklist version you can paste into a ticket, spec or pull request. Rows stay in this browser tab only.

Do not enter passwords, API keys, session tokens, personal data or confidential customer details.

This tool needs JavaScript. If it does not load, write your rows in any text editor instead.

0 of 20 rows

This copies text only; nothing on this page is sent anywhere or saved between visits.

ShipperAG's private pilot specialists turn your acceptance criteria into evidence: they run your release against each Given/When/Then row in Chromium and hand your team a report ready to sign off. Safari, Firefox and real devices are not covered. Join the waitlist to become a product partner.

Work email only. We'll only email you about the ShipperAG pilot. Unsubscribe anytime. Your rows are never sent — see the FAQ below.

What each line of a Given/When/Then row answers

Four short lines cover most acceptance criteria. Given and When set the scene; Then is the one fact a test can check; So-that is optional context for why the row matters.

What each line of a Given/When/Then row answers
LineWhat it answersExample
GivenWhat state or context exists before the action.Given a logged-in user with an empty basket.
WhenThe single action or event that triggers the behaviour.When they add one item to the basket.
ThenThe outcome that must be true afterwards, stated so a test can check it.Then the basket shows 1 item and the subtotal updates.
So-thatWhy this criterion matters — the user or business value behind it (optional).So that the customer always sees an accurate total before checkout.

Where acceptance criteria fit in your release process

Acceptance criteria are written before a feature is built, usually underneath its user story. The website QA checklist your team runs before release and the UAT sign-off template a stakeholder signs both check behaviour against this same list of rows. The release readiness checklist then asks whether every open issue has been checked against its original acceptance criteria before you ship.

Work email only. We'll only email you about the ShipperAG pilot. Unsubscribe anytime. Your rows are never sent — see the FAQ below.

FAQ

Acceptance criteria, answered

What is Given/When/Then?

Given/When/Then is a format for writing one acceptance criterion as three short clauses: Given states the starting condition, When names the single action, and Then states the expected, verifiable result. Some teams add a fourth line, So-that, to record why the criterion matters.

What is acceptance criteria vs a user story?

A user story describes who wants something and why, in one or two sentences. Acceptance criteria are the specific, testable conditions that story must meet before it counts as done — usually written as one or more Given/When/Then rows underneath it.

What does the So-that line add?

So-that is an optional fourth line stating why a Given/When/Then row matters — the user or business value behind it — so a reviewer understands the point of the check, not just its mechanics.

Does this tool save or send my rows anywhere?

No. This copies text only; nothing on this page is sent anywhere or saved between visits.

How many rows can I add, and how do I copy them out?

Add up to 20 rows with the Add row button. Use Copy as Markdown for a Markdown-formatted list, ready to paste into a ticket or spec, or Copy as checklist for a plain checklist instead.