QA checklist before release

Run this before you ship a release. Work through each section, check the box, and capture every issue so it's fixed, or consciously accepted, before it goes out.

A release is a discrete moment with a clear failure mode: ship a broken build and every user hits it at once. This is the complete pre-release QA list to run against a release candidate. Work top to bottom, check each box, and capture every issue so it's fixed or consciously accepted before it goes out, not discovered by users after.

Smoke test (the critical paths)

  • Core journeys work end to end: sign up, log in, the primary action
  • Checkout or payment completes, if the product has one
  • Nothing on the critical path 500s, hangs, or shows a broken page

Functional

  • Every form validates and submits; success and error states both work
  • Auth works: login, logout, password reset, and session expiry
  • Edge cases handled: empty inputs, very long inputs, special characters
  • Permissions are correct, so each role sees only what it should

Cross-browser and device

  • Tested in Chrome, Safari, and Firefox
  • Tested on a real mobile device, not just a resized desktop window Touch, viewport, and mobile-Safari quirks don't show up in desktop dev tools.

Regressions

  • Re-tested the areas this release directly changed
  • Re-tested anything that shares code with the changed areas Regressions hide in the code a change touches indirectly, not just the lines you edited.

Data and errors

  • No new errors in the browser console on the main flows
  • Server logs are clean of new errors under normal use
  • Error states show a useful message, never a raw stack trace

Pre-deploy

  • Production environment variables and secrets are set
  • Feature flags are in their intended state for launch
  • There's a rollback plan if the release goes wrong

Frequently asked questions

When should I run this checklist?

Run it against a release candidate on staging right before deploy, then run the smoke-test section again on production immediately after. Pre-deploy catches the bugs; the post-deploy smoke test confirms the release survived the move to production.

What happens if I skip regression testing?

Regressions are the most common production surprise: a change works in isolation but breaks something that shares code with it. Re-testing the touched areas and their neighbours is what catches a fix that quietly broke a feature nobody re-opened.

Capture your first review.

About a minute from open tab to a shareable URL your agent can ingest.

Start capturing

Send us feedback

Stuck, or want to do something it won't let you? Tell us what you're trying to do and we'll reply by email as soon as we can. This isn't a live chat.

Powered by AcornReply