River
Y CombinatorBacked by Y Combinator

Business & Revenue OpsFree tool

UAT Test Plan by Business Workflow

A UAT test plan built from your real workflows, each ranked by what a failure would cost, with test cases, named signers and a tracker.

Helpful to include

Free to start · Opens in your River workspace, ready to edit and share

How to write a UAT test plan

A user acceptance testing (UAT) test plan sets out how the people who will use a new system check that it can handle their real work before go-live. A good one ranks the business workflows by what a failure would cost and gives each one test cases written as real transactions. It also names the data to test on, the entry and exit criteria, and the person who signs off each workflow.

The rule that matters most is to test workflows, not screens. A vendor's go-live checklist confirms each setting is in place. Only a real transaction, run end to end by the person who owns it, shows the business still works.

A man in a blue polo shirt types on a laptop at a standing desk in a warehouse, next to a digital scale and stacked pallets
UAT belongs to the people who do the work every day. Photo: TheStandingDesk on Unsplash

What goes in a UAT test plan

UAT comes last, after the vendor or your IT team has finished system testing. ISTQB, the international board behind the Certified Tester qualification, says acceptance testing focuses on demonstrating readiness for deployment and should ideally be performed by the intended users1. Your testers are the clerks, accountants and warehouse leads who will do the work.

The parts of a UAT test plan

PartWhat it holdsExample
ScopeThe workflows this round covers, and what it leaves out"Order to cash and returns are in. Payroll is out."
Risk rankingEach workflow's monthly volume, dollars at stake and compliance exposure"Credit-hold override: 110 a month, $236,500, credit risk"
Test casesReal transactions, each with steps, test data and an expected result"Return a part-shipped order; expect credit for shipped lines only"
Test dataThe records the cases run on, including data moved from the old system"12 reseller accounts migrated from the old system"
Entry and exit criteriaWhat must be true to start testing, and to call it done"Start once data is loaded. Done when no critical defects are open."
Sign-offThe person who accepts each workflow, and the date"Controller: tax-exempt orders, signed March 14"

Start from workflows, not screens

List the workflows the business runs, end to end, in the words of the people who run them: quote, order, ship, invoice, return, credit. Note which configuration items each one touches. A tax setting or an invoice layout isn't a test case on its own; it's a step inside one.

Write down the variations that change the outcome, because each one becomes a case: a backorder shipped in two parts, a tax-exempt customer, an order over its credit limit. In Microsoft's guide to implementing Dynamics 365, its business software, UAT testers test all the processes and variations that are in scope for their roles and tasks2.

If a workflow lives only in one person's head, record them walking through it and turn the transcript into a step-by-step SOP first.

Rank workflows by what a failure would cost

You can't test everything equally deeply, so decide where the depth goes first. ISTQB measures a risk by two factors, its likelihood and its impact1, and uses that analysis to focus test effort so it leaves the least risk behind.

Monthly volume stands in for likelihood: a defect on a path that runs 5,000 times a month will be hit in the first week. Dollars at stake and compliance exposure (tax, credit, regulatory or contract terms) stand in for impact. Give depth to whatever scores high on any of the three, however few screens it touches.

Scoring four workflows at a distributor

WorkflowMonthly volumeMonthly valueCompliance riskTest cases
Standard order4,850$2.1 millionNone5
Credit-hold override110$236,500Credit4
Tax-exempt reseller order90$61,000Sales tax4
Sales-by-region report30 runsNoneNone1

Illustrative figures for a distributor handling about 6,200 orders a month. The report touches 12 configuration screens and still gets one case.

Estimates are fine to start

Rough numbers rank workflows well enough to begin. Mark each one as an estimate, and replace it with a real figure before anyone signs off.

Write each case as a real transaction

A good case reads like the work itself: who does it, the record they use, the steps, and a result anyone can check. "Invoice prints correctly" can't fail. "Invoice shows no sales tax and prints the exemption certificate number" can. If your requirements were written as user stories, their acceptance criteria give you ready-made expected results.

Add negative cases for the high scorers, checking that the system refuses what it should: an override by someone without approval rights, an order past its credit limit.

Where two conditions can meet, test them together. NIST research found that most software bugs and failures are caused by one or two parameters3, with progressively fewer caused by three or more. So test each condition alone, then each pair that can really occur in the same transaction, starting with the high scorers.

ExampleOne combined-condition caseAn illustrative example written for this guide

Workflow: Tax-exempt reseller order. Conditions: a valid exemption certificate, and an order split across two warehouses.

Steps: Enter a 40-unit order for a test reseller. Ship 25 units from Warehouse A and 15 from Warehouse B on one invoice.

Expected: no sales tax on either line, and the certificate number printed on the invoice.

Signer: the controller.

  • Two conditions at once. Each can pass on its own. Together, the invoice could recalculate tax at the second warehouse's rate.
  • A result anyone can check. Tax is zero and the number is printed, or the case fails.
  • One accountable signer. The controller answers for sales tax, so the controller signs.

Test on migrated data, safely

Run at least one round on records moved from the old system, not just demo data. Microsoft's guide says UAT requires customer data, including migrated data2, and calls it the closest test to running live operations. Migrated records carry the old system's quirks: blank fields, retired codes and customers set up a decade ago.

Load that data the way go-live will load it, following your technical migration plan, so UAT tests the move too.

Protect the test copy like production

Real customer records in a test system carry their own risk. NIST's catalog of security controls, SP 800-53, says to approve, document, and control the use of live data4 in test environments. Protect them at the same level as that data, and mask personal details the workflows don't need.

Agree exit criteria and sign-off up front

Before testing begins, agree on what must be true to start and to finish. ISTQB defines entry criteria as the preconditions for an activity and exit criteria as what must be achieved to declare it completed1. Make each one checkable: "no open critical defects" works, while "testing substantially complete" doesn't.

Don't quietly loosen the criteria when the schedule slips. The UK's Financial Conduct Authority fined TSB £29.75 million in 2022 over failings in its 2018 IT migration. Among them, its final notice found that late testing phases ran in parallel or changed in scope, and testing only concluded the day before the decision to migrate was taken5.

When time does run out, ISTQB says ending testing can be acceptable if the stakeholders have reviewed and accepted the risk to go live without further testing1. Get that acceptance in writing, from the people who own the risk.

One named person signs off each workflow: whoever answers for it if it breaks, such as the controller for sales tax. Microsoft's guide notes that signing off doesn't mean that your solution is perfect or bug-free6, only that it is good enough to run the business safely. Log every case as pass, fail or blocked, and retest each fix before anyone signs.

Before you sign off UAT

  • Every workflow in scope has a score and a named owner
  • High scorers have negative and combined-condition cases
  • At least one round ran on migrated data
  • No critical defects are open, and each workaround has an owner
  • Each owner has signed and dated their workflow

After go-live, a post-implementation review checks whether the system delivered what was promised. For a faster start, the tool at the top of this page turns your workflow notes and the vendor's checklist into a scored plan and tracker.

How it works

Start with a plain description of how the work runs today and what the new system changes, and attach the vendor's go-live checklist if you have one. River scores each workflow by volume, dollars at stake and compliance risk, then writes the plan into your workspace with a tracker sheet beside it. Where a figure or an owner is missing, it labels its assumption and lists what to confirm before sign-off.

  1. Describe the work

    Paste or type how orders, invoices or other work run today. Add what's changing and the vendor's checklist.

  2. River scores each workflow

    It weighs monthly volume, dollars at stake and compliance risk, and labels any figure it had to estimate.

  3. Get your test plan

    Test cases for every workflow, riskiest first, each with a named signer, plus a tracker sheet.

  4. Run, share and refine

    Share it, track each case as pass, fail or blocked, and ask River to re-score with real numbers.

What you get

  • A score for each workflow: monthly volume, dollars at stake, and any tax, credit or regulatory exposure
  • Test cases written as real transactions, each with steps, an expected result and a named signer
  • Combined-condition cases wherever two conditions can meet, such as a tax exemption on a split shipment
  • Negative cases for the highest scorers, checking that the system refuses what it should refuse
  • Every estimated figure and assumed owner labeled, with a list of what to confirm before sign-off
  • A tracker sheet with one row per case: expected and actual result, status, signer and date

Common questions

What is a UAT test plan?

A UAT test plan is the document that explains how a new system's future users will confirm it supports their day-to-day work before it goes live. It lists the workflows to test and how much each matters, the test cases and data, the criteria for starting and finishing, and who signs off each workflow.

What's the difference between UAT and system testing?

System testing checks that the software works as specified, and the vendor or IT team usually runs it. UAT checks that the business can do its real work with it, and the people who will use it run it. A system can pass every system test and still fail UAT, because one workflow crosses many features.

Who should do user acceptance testing?

The people who will use the system every day, such as order clerks, accountants and warehouse leads, plus the managers who own each workflow. The project team sets up the environment, data and cases and fixes defects, but shouldn't accept its own work. Train testers on the new screens first, or their slips will look like defects.

What should a user acceptance testing template include?

One row per test case, with columns for the workflow, scenario, steps, test data, expected result, actual result, status (pass, fail or blocked), defect number, signer and date. Group the rows by workflow, highest risk first, so testers start where a failure would cost most and reviewers can see where the depth went.

What are entry and exit criteria in UAT?

Entry criteria are the conditions for starting UAT, such as system testing passed, data loaded, the environment stable and testers trained. Exit criteria are the conditions for finishing, such as every high-priority case passed, no critical defects open and each workflow signed. Agree on both in writing before testing starts, so a deadline can't quietly rewrite them.

How do I write a UAT test plan with River?

Type how the work runs today and what's changing into the box at the top of this page, attaching the vendor's checklist if you have one. River scores each workflow, writes the test cases and builds a tracker sheet in your free River workspace, where you can edit the plan and share it.

Is the UAT test plan generator free?

Yes, it is free to start. Your test plan opens in a River workspace, where you can edit it, share it or ask River to change it. Paid plans add more AI use and access to the most advanced models.

Sources

  1. ISTQB. “Certified Tester Foundation Level Syllabus v4.0.1.” istqb.org (opens in a new tab)

  2. Microsoft Learn. “Types of tests that implementation projects use.” learn.microsoft.com (opens in a new tab)

  3. NIST. “Combinatorial Methods for Trust and Assurance.” csrc.nist.gov (opens in a new tab)

  4. NIST. “Security and Privacy Controls for Information Systems and Organizations.” nvlpubs.nist.gov (opens in a new tab)

  5. Financial Conduct Authority. “Final Notice 2022: TSB Bank plc.” fca.org.uk (opens in a new tab)

  6. Microsoft Learn. “Test your Dynamics 365 solution before deployment.” learn.microsoft.com (opens in a new tab)

Built by

Chandler Supple

Co-founder & CEO, River

Chandler has spent the last six years working in AI, building tools for millions of users and Fortune 100 companies. In 2025, he co-founded River to build a new kind of operating system for AI agents.

Reviewed by

Brian Joseff, Co-founder, River