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.
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.
| Line | What it answers | Example |
|---|---|---|
| Given | What state or context exists before the action. | Given a logged-in user with an empty basket. |
| When | The single action or event that triggers the behaviour. | When they add one item to the basket. |
| Then | The outcome that must be true afterwards, stated so a test can check it. | Then the basket shows 1 item and the subtotal updates. |
| So-that | Why 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.