By platform
WooCommerce checkout not loading: where it stalls
A buyer clicks Checkout and sees a blank page, a form that never fills in, or a shipping box that keeps loading. Mimiq sends simulated guest visitors through checkout and records the request that never came back.
Why is my WooCommerce checkout not loading?
A WooCommerce checkout that will not load fails in one of three ways: a blank page, a form that never fills in, or a box that waits forever. A blank page usually means the page itself did not draw, from a page setting or a server error. A box that waits forever usually means one request for shipping or tax never answered. A simulated guest test shows which of the three a new buyer hits, but it cannot tell you what happens after the final button.
What this looks like in a report
“The heading says Checkout and then the shipping box keeps loading. I waited, refreshed, and it was still loading, so I did not enter my card on a page that might not work.”
The fix. Open checkout in a private window and look for the shipping request in the browser's failed requests; if it times out, disable the rate calculator or tax plugin on a copy of the store and find the one that never answers.
An illustration. Run a test to see your own.See a real sample report
A checkout waits on every request it makes, and one can hang
WooCommerce checkout does several things before a buyer can type a card number. It loads the page, builds the form, and asks for shipping rates and totals each time the address changes. Some of those calls go to your own server and some go to other services, such as a rate calculator or a tax tool installed as a plugin. If one of them never answers, the page keeps its totals in a loading state, and the buyer cannot tell whether to wait or leave. The browser's record holds the pending request, which the page itself never shows as an error.
- Open checkout in a private window with one product. Does the form appear under its heading?
- If the heading shows but the form stays empty, note which box never fills in.
- Enter a delivery address. Does the shipping box finish, or does it keep loading?
- In the Mimiq report, open the checkout step. Is a request still pending, or does one show an error status?
- List the plugins that add shipping, tax or address fields. Each one is a candidate for the stalled call.
A blank checkout comes from the page setting, the theme or the server
A blank page with nothing drawn is the most alarming version, and it has ordinary causes. The checkout page setting may point at a page that holds neither the checkout block nor the checkout shortcode. A theme or plugin may expect one kind of checkout and receive the other, so the page draws its header and no form. A server error inside one plugin can also return an empty page, which a buyer reads as broken.
The record separates these cases. A failed server response shows as a request with an error status on the checkout step, while a wrong page setting returns a normal response with the wrong content. Rule out the setting first, because it is the quickest to check, and then read the plugin logs only if the response itself failed. Those two checks take a few minutes.
A box that keeps loading is waiting on one outside request
Shipping rates and totals are often calculated by a call the page makes each time the address changes. When that call goes to a service that is slow or down, the box keeps loading and the Place order button may stay locked. The right version of this check is to find which call is still pending. The wrong version is to refresh and retry, which sends the same call again and waits again.
Fix the calls one at a time. Turn off one shipping or tax plugin on a copy of the store, run the guest task again, and see whether the box finishes. If it does, that plugin was waiting on something outside your store, and you can ask its support or replace it. Do not switch plugins off on the live store to test, because a buyer may be in the middle of an order.
A guest run from cart to the last step before the order button
Give Mimiq the shop address and one task a guest would have: buy one paperback as a guest and fill in the delivery address. The task asks for guest checkout, so the visitor never signs in. The report shows each checkout step, the screenshot where the form stopped or finished, and every request that never returned, so a box stuck on loading shows up as the request it was waiting on.
A guest run stops before the final order button. It shows whether the form loads, whether the shipping box finishes and whether the totals appear, which covers most blank and stuck cases. It does not show whether the order is placed or whether the payment is accepted, and those need an order you place yourself. That is the part to repeat after every change.
Mimiq is independent and not affiliated with the platforms it names. Names belong to their owners.
What you get with Mimiq
- 01
Run it by hand, or on every pull request
Paste a link and a task in the app and watch the visitors work. Or run them on every preview deploy: the GitHub Action comments on the pull request, any other CI can call the MCP endpoint, and your coding agent can run it too.
- 02
Bugs and usability problems in one report
The browser records errors and failed or slow requests on the step they happened. The visitors say where the wording or the steps confused them, and where they left.
- 03
Visitors that behave like your audience
Each visitor is a different profile with a reason to be there, matched to who the page is for, described by you, or built from your own customers.
- 04
A prompt to fix each problem
Every problem comes with a fix to paste into Cursor, Claude Code, Lovable or any coding agent, and one prompt hands over the top problems at once. Then send the same visitors through again.
- 05
Follow every visitor
See each visitor's whole path, step by step with screenshots, and what it was thinking at every step. Ask any visitor a question.
The browser records relevant JavaScript errors and failed or slow app requests encountered during the run, attached to the step where they occurred. The visitors are simulated: they find problems, they do not predict how many real people will convert.
A new shipping app or tax rule can stall checkout for every guest
Rerun the guest task after each change to shipping, tax, payment or checkout plugins. A new calculation that calls an outside service can hang for every buyer at once, and nobody sees it until orders drop. Keep the same task and the same product, so a stall shows up as a change from the last run rather than as a surprise.
Starter
Try it on one launch
About 4 tests of 5 visitors
- Visitors on your landing page, signup and checkout
- Where they left and why, with a fix to copy for each problem
- Run it in the app or on every pull request
- Ask any visitor a question, included
- Test accounts and protected previews
Builder
Test every build
About 20 tests of 5 visitors
- Everything in Starter
- Credits refill each month, and what is left rolls over once
- Cancel anytime
Pro
Test every release, as a team
About 60 tests of 5 visitors
- Everything in Starter
- Credits refill each month, and what is left rolls over once
- Cancel anytime
Scale
Test at scale, every day
About 240 tests of 5 visitors
- Everything in Starter
- Credits refill each month, and what is left rolls over once
- Priority support
- Cancel anytime
Questions
Will the test catch a checkout that fails only for logged-in customers?
Not on a guest run. The guest task checks out with no account, so a fault that appears only when a saved account loads its addresses needs a separate run with a test account you give the visitor, which uses paid credits. A guest run is the right first check, because it covers the shipping and tax calls every buyer makes.
Why does checkout load for me but stay blank for buyers?
Your own browser may be signed in, hold saved items or keep a script from an earlier visit. Open checkout in a private window with an empty cart to see what a new buyer sees. A page that is blank only for new sessions points at a request or script that runs only for them.
Is a box that keeps loading the same fault as a blank page?
No. A blank page usually means the page itself failed to draw. A box that keeps loading means the page drew and one request for shipping or tax never answered. The first needs the page and server checked, and the second needs the outside call checked.
Can the test show whether an order is placed?
No. A guest run stops before the final order button and never places an order, so it cannot show a confirmation page. Place one order yourself with a low-value product, using a payment method you control, to see the final result.
Keep reading
Send visitors and see what breaks first.
Your first test is free: sign in with Google and it starts right away. Last checked 2026-11-02.