What a checkout smoke test actually is
A smoke test is the simplest possible version of a test suite: a fast, shallow pass that answers one question, does this thing still broadly work? For checkout, it means walking through the exact path a buying customer takes and verifying each step succeeds.
You don't need to cover every edge case. You don't need to test every payment method. You need to know, in under two minutes, that the critical path from product page to confirmation still works after a deploy.
Here's the seven-step version that catches most breakages before they reach your customers.
Step 1: Product page → Add to cart
The smoke test starts where customers start. Open a product page (ideally your best-selling SKU so any inventory or variant issues surface), click Add to Cart, and confirm the cart updates.
What you're looking for:
- The button is clickable (no overlay blocking it)
- The cart count increments
- No JavaScript errors in the browser console
- Adding the item didn't trigger a 500 or a blank redirect
This single step catches about a third of post-deploy checkout failures, usually from theme changes that restyle the button out of existence or from an app that injected a tracking script that throws a JavaScript exception and blocks the handler.
Step 2: Cart page → Proceed to checkout
Navigate to the cart, verify the correct item and quantity are there, then click through to checkout.
What you're looking for:
- Line items match what you added
- Totals calculate correctly (subtotal, shipping estimate, tax)
- Any applied discounts still apply
- The proceed-to-checkout button transitions to the checkout URL
The common failure here is an app that interferes with cart totals. A "you might also like" app that re-renders the cart. A tax-calculation app that times out. A currency converter that overwrites your displayed prices. Smoke test catches it.
Step 3: Shipping info submits
On the checkout form, enter test shipping information, a known-valid address you use for testing. Submit and confirm you progress to the next step.
What you're looking for:
- Form validation passes
- Address autocomplete works (if enabled)
- Shipping methods populate correctly
- No errors about "invalid postal code" on valid addresses
Failure mode to watch: a recent integration with an address-validation service rate-limits, times out, or starts rejecting addresses that used to pass. Or your shipping app fails to return any methods, leaving customers with no way to progress.
Step 4: Shipping method selection
After address submission, shipping methods should appear. Select one and proceed.
What you're looking for:
- At least one shipping method is offered
- Rates are reasonable (not $0 and not $999)
- Selection persists to the next step
- Any free-shipping thresholds are honored
This is where merchant-side shipping apps (ShipStation, Shopify Shipping, WooCommerce Shipping) cause the most pain after updates. "No shipping methods available for your address" is a silent killer, customers see it, back out, never contact you.
Step 5: Payment step loads
Reach the payment page. Don't actually submit, just confirm the payment form loads and accepts input.
What you're looking for:
- Payment methods render (card form, Shop Pay, PayPal, etc.)
- Card number field is interactive
- Express checkout buttons (Apple Pay, Google Pay) appear on supported devices
- No console errors about missing API keys or CSP violations
Payment-form breakage is usually one of two things: an API key expired or got rotated on the payment provider side, or a Content Security Policy change blocks the payment iframe. Both produce silent failures, the form just doesn't render.
Step 6: Review step → Submit (dry run)
With a test coupon code that Tracefox or your testing tool enters automatically, you can run this step fully. Without one, stop at the review step.
What you're looking for:
- Order total matches expectations (items + shipping + tax)
- Discount codes apply correctly
- Terms-of-service checkbox works
- Submit button is enabled
If you're running this manually without a test order path, most of your smoke-test value ends here. If you have a way to complete test orders (coupons, staging, Stripe test mode), go through to the confirmation page.
Step 7: Confirmation page renders
After submission, the confirmation page should load with the order number, items, and totals.
What you're looking for:
- Order number is generated and displayed
- Line items match what was purchased
- Email address for confirmation is captured
- Tracking pixels fire on this page (Facebook Pixel Purchase event, GA4 purchase event, Google Ads conversion)
This last check, pixels fire on the thank-you page, is the one most teams forget. A "successful" checkout that didn't fire the conversion pixel is revenue you're still going to lose, just downstream in your attribution and your ad-platform learning.
Automating the 7 steps
If you run this checklist manually once a week, you'll catch breakages faster than almost anyone else in the industry. But you'll miss things that happen Tuesday morning between your Monday and Friday checks.
The mechanical version of this checklist is automated checkout testing, a tool that records your seven-step flow once and replays it on a schedule. Tools like Tracefox replay the whole smoke test hourly (Business plan), daily (Pro), or weekly (Starter), and alert you with video evidence the second a step fails.
When to run the smoke test manually anyway
Automation doesn't replace judgment. Run the manual version at these moments:
- Before any theme or plugin update. If your automated test is scheduled to run 6 hours from now, don't wait, walk through the checklist before you hit deploy.
- After payment provider API key rotation. A rotated key often silently fails client-side.
- After any third-party app install. Especially conversion-optimization apps, popups, and "social proof" widgets, they inject scripts into checkout.
- During high-traffic windows. Cyber Monday morning is the wrong time to find out.
The cost of not smoke-testing
A checkout broken for 24 hours on a store doing 100 orders/day at $80 AOV is $8,000 in missed revenue, and that's just the direct loss. Add the Meta ads learning degradation from missed conversion events, the refunds and support costs from half-broken orders, and the trust damage with customers who saw the error, and most agencies will tell you the true number is 2-3x higher.
A smoke test takes two minutes to run by hand. The automated version takes five minutes to set up and runs unattended forever. The math is very one-sided.
Start with the smoke test, expand later
Smoke testing is intentionally shallow. You're not verifying every edge case, you're verifying the critical path works. Once the smoke test is running reliably, layer in:
- Multi-viewport checks (the smoke test on desktop, mobile, and tablet)
- Coupon-specific flows (does your flash sale code still apply?)
- Logged-in vs guest checkout
- Different shipping destinations (domestic vs international)
But if you don't have the 7-step smoke test running at all yet, start there. It's the highest-value 20 minutes you'll spend on checkout quality this quarter.
Want this running automatically? Start Tracefox free, record your checkout once with the Chrome extension, and we'll replay all 7 steps on a schedule, send video evidence on failure, and never ask you to write a line of code.