Stores5 min read

Know your checkout broke before your customers tell you

Checkouts break quietly. How to know your normal, spot a silent afternoon early, what to check first, and how to get a message when sales go quiet.

Checkouts rarely break loudly. There’s no error page and no alarm. Sales just stop, and you find out hours or days later, from an email that starts with “I tried to buy but”, or from a payout smaller than it should be.

Most people who hit a broken checkout don’t write to you. They leave. So every hour it stays broken costs you sales you’ll never hear about.

The fix isn’t watching your dashboard all day. It’s knowing what normal looks like, and getting a nudge when today doesn’t look like it.

How checkouts break

A few common ways, none of which announce themselves:

  • an app or plugin update changes the checkout and something stops working
  • a payment key expires or is revoked, or your payment account needs attention
  • a theme or page edit hides the Buy button on phones
  • a script error stops the checkout loading in one browser
  • a payment method gets switched off
  • the site itself goes down, or a domain or certificate lapses

Some of these stop every sale. Others stop only some, like phones on one browser. Those are harder to spot, because sales slow down rather than stop.

Know your normal

“Quiet” only means something against a usual day. Spend ten minutes finding yours.

  1. Look at the last few weeks of sales by hour of the day.
  2. Note when sales usually start, when they peak, and how long a normal gap between two sales is.
  3. Note how weekends differ from weekdays.

Say you usually make a sale every 20 to 40 minutes between 9am and 11pm, and almost nothing overnight (example numbers). Then three hours without a sale at 2pm on a Tuesday is worth a look, and three hours at 3am isn’t.

Do the same for visits. Visits dropping to almost nothing is a different problem from sales stopping. It usually means the site is down, or the script that counts visits stopped loading.

When it goes quiet: a five-minute check

Keep this list somewhere you’ll find it in a hurry.

  1. Buy something yourself, on your phone, the way a customer would. Use your platform’s test mode if it has one, or a real card you then refund.
  2. Open your payment platform’s dashboard and look for failed payments or account warnings.
  3. Check the status pages of your payment platform and your store or host.
  4. Think about what changed: an update, a new plugin, a theme edit, a new price.
  5. Check your traffic. If visits look normal and sales don’t, the problem sits between the page and the payment. If visits fell too, it’s the site, or wherever your visitors usually come from.

Most of the time it’s just a slow day. Sometimes it isn’t, and you’ve saved the rest of it.

After you change anything

Many breakages follow a change, so the riskiest hours are the ones right after you make one. Three small habits cover most of it:

  • Buy something after every update, on a phone and on a computer, before you walk away.
  • Watch the next few hours of sales against a usual day at the same hours, not just the next ten minutes.
  • Keep a short change log: the date, the time and what changed. When a quiet stretch shows up later, you can line it up with what you did.
A message when today runs well below a usual day at this hour, while there’s still time to fix it.

How odo watches for you

odo’s live number comes with your pace: what you’re making per hour right now, and what’s usual at this hour. And each time you open the dashboard, it replays your day so far as a time-lapse: a clock under the number runs from midnight to now, and your latest sales land one by one at the times they happened. A long gap where sales usually are is hard to miss.

odo can also message you where you already are: Slack, Discord, Telegram, email, or a signed webhook into your own tools. You choose what each channel hears about:

  • every sale, as a quiet receipt (a burst arrives as one message), or just the first sale of the day
  • refunds and disputes as they land, with where to answer a dispute
  • sales unusually quiet: at most once a day, when sales are far below what’s normal by this hour
  • a site goes quiet: when a busy site stops getting visits, and again when they’re back
  • a source that stops syncing, and again when it’s back
  • your daily goal reached, a daily summary, and a weekly one on Mondays

The quiet-sales alert holds today up against the last four weeks at the same time of day, and against the same weekday. It waits until it has at least two weeks with sales and a normal of five or more sales by that hour, and it only speaks up when today is at 30% of usual or less, by a margin chance would almost never explain. It also catches a dry spell after a normal morning. It would rather stay silent than cry wolf: a slow afternoon isn’t news, a dead one is.

The quiet-site alert does the same for visits. A site with two weeks of history counts as quiet when it’s had no visits for half an hour, in hours that brought at least ten visits on every one of the last 14 days. That catches a site that’s down, and a measuring script that stopped loading.

New channels get these alerts switched on. So a silent Tuesday afternoon reaches you as a message, not as a bad surprise at the end of the week.

For problems that only hit some people, odo’s script notes script errors, rage clicks (the same spot clicked again and again), clicks that do nothing, and form fields the browser refuses. Connect Claude or ChatGPT to odo, ask what’s broken this week, and it ranks them by how many visitors they hit, with the pages and browsers involved and example visits to look at. See ask Claude or ChatGPT about your sales.

Fix the slow leaks too

Outages are the loud version. The quiet version is a checkout that works but loses more people than it should, every day. A funnel finds those: find where buyers drop off.

And if something did go wrong and a few customers asked for their money back, refunds, fees and disputes explains how that shows up in your numbers.

Keep reading