Skip to content
Available for new work

Why is my Shopify website not working? A fault-finding guide

When a Shopify store stops working, the fault is almost always in one of five places: Shopify itself, the state of your account, your domain, your theme and apps, or your checkout settings. What you can see tells you which. This guide sorts the symptoms, gives Shopify’s own fix for each, and says what to do when none of them fit.

DC · 28 September 2026 · 12 min read

Why is my Shopify website not working? A fault-finding guideAI-generated

If your Shopify website isn’t working, start with what you can actually see, because each symptom points somewhere different. A password screen is an account setting. A page that won’t load at your own address but works at your .myshopify.com address is a domain problem. A page that loads but looks wrong is almost always the theme or an app. And a store that looks fine but won’t take an order is a checkout setting: no payment provider, or no shipping rate for the customer’s address.

None of this needs a developer to diagnose. Most of it needs twenty minutes and the right screen in the Shopify admin. I’ve written it the way I work through a store that’s gone wrong: fastest checks first, most expensive last, and Shopify’s own Help Center as the source for every fix.

Start with what “not working” actually means

“The website isn’t working” covers everything from a blank screen to one button that doesn’t respond. Before changing anything, write down exactly what you see, on which device, and whether it’s every page or one. That sentence decides which of the sections below you need.

A password box instead of your shopThe store is still in private modeOnline Store, Preferences, and the launch steps
Nothing loads for anyone, even youShopify outage, or the store is frozen for an unpaid billshopifystatus.com, then Settings, Billing
Your .myshopify.com address works, your own domain doesn’tDNS records or the security certificateSettings, Domains
It loads, but the layout or a feature is brokenThe theme, an app, or pasted codeA fresh copy of the theme, and recently changed apps
Customers can browse but can’t payNo primary payment provider, or a payments holdSettings, Payments
Checkout stops at the shipping stepNo shipping rate for that addressSettings, Shipping and delivery
It works for you but not for customersBrowser cache, a market or region setting, or one deviceIncognito, another device, then Markets
What you see, and where to look first

Everything is broken, for everyone

If no page loads for anybody, including you in a private window, the list of causes is short: Shopify is having an incident, the store has been frozen, or the domain has stopped pointing at Shopify. The first takes ten seconds to rule out, and the second shows up the moment you try to log in to the admin.

One part is broken

If the home page works but the product page doesn’t, or everything works except the basket, the problem is inside the store: the theme, an app, or a setting. That’s good news. It means the platform, the domain and the account are fine, and you can skip straight to the theme and checkout sections.

It’s broken for customers, not for you

This one confuses people most. You’re logged in to the admin, your browser has cached the store, and you may be seeing a preview of the theme rather than the live one. Customers see something else. Always test in a private window, logged out, on a phone as well as a laptop, before deciding what’s wrong.

It’s slow rather than broken

A store that loads eventually but takes eight seconds on a phone isn’t down, but for a customer on a train it might as well be. Speed has different causes from the faults in this guide, mostly apps, heavy pages and old themes, and it’s worth measuring properly rather than guessing: why a Shopify store loads slowly for customers covers it.

Is it Shopify, or is it you?

Shopify runs a public status page, and it’s the first thing to check because it’s the one cause you can do nothing about. It lists nine systems, including Storefront, Checkout, Admin and Third party services, each marked Operational or not, with past incidents day by day.

Read the status page properly

A green Storefront with a yellow Third party services line can still mean your store is affected, if one of the services involved is one you rely on. The incident text usually says which. If an incident matches your symptom, stop troubleshooting: changes you make now can leave you with a second problem once Shopify’s is fixed. Subscribe to updates on the status page and wait it out.

The .myshopify.com test

Every Shopify store has an address ending in .myshopify.com as well as its own domain. Open that address in a private window. If it works and your own domain doesn’t, the store is fine and the domain is the problem, which narrows everything down to one settings page.

Rule out your own browser

Shopify’s theme troubleshooting guide starts where any good fault-finding does: clear the browser cache and cookies, try incognito mode, another device or the Shopify app, and check the browser is up to date. It sounds basic. It also resolves a surprising share of “the site’s broken” messages, especially after a theme change the browser hasn’t caught up with.

My view: change nothing until you know

The original fault is rarely the expensive part. The expensive part is the three changes made in a panic to fix it: an app uninstalled, a theme republished, a DNS record deleted, each one a new problem on top of the first. Write down the symptom, check the status page, do the .myshopify.com test, and only then touch a setting.

When the store is private, frozen or paused

Sometimes the website is working exactly as Shopify intends, and the account is the reason customers can’t get in. These three look alarming and are usually the quickest to fix.

A password screen: private mode

Shopify’s password page guide is plain about this: “When you first register for a Shopify plan, your store access is restricted to private mode by default.” In private mode every page is hidden from visitors and search engines, and they see a landing page with a password box instead. Once you’ve completed the setup steps, you launch the store to make it public. If a store that’s been live for months suddenly shows the password page, someone has switched private mode back on.

Nothing at all: a frozen store

A missed bill is the cause people least expect. According to Shopify’s frozen store guide, if an invoice is still unpaid 28 days after the first failed attempt, the store is frozen: you can’t get into the admin and customers can’t view the store until it’s paid. With more than one unpaid bill, each has to be paid separately and in full. Shopify says to wait a few minutes after paying, and to contact support with proof of payment if the store is still frozen after 30 minutes.

It loads but won’t sell: a paused plan

The Pause and Build plan keeps the storefront visible but turns off selling, so customers can browse and can’t buy. It’s meant for a break, and it’s easy to forget it’s on. Shopify’s pause guide covers switching back, and all outstanding invoices have to be paid before a plan change goes through.

What to check, in order

  • Can you log in to the admin? If not, and the status page is green, check the email address on the account for billing messages.
  • Is there a banner on the admin home page? Billing problems and payment holds show there first.
  • Is the store in private mode? Online Store, Preferences shows the password setting.
  • Which plan are you on? Settings, Plan shows whether the store is paused.

When the domain is the problem

If the .myshopify.com address works and your own domain doesn’t, the fault is in DNS: the records that tell browsers where your domain lives. Shopify publishes exactly what those records need to be, which makes this one of the few problems you can check against a definite answer.

The records Shopify needs

From Shopify’s domain troubleshooting guide, a domain connected to Shopify needs one A record, one AAAA record and a www CNAME, with these values:

RecordNameValue
A@23.227.38.65
AAAA@2620:0127:f00f:5::
CNAMEwwwshops.myshopify.com
DNS records for a domain connected to Shopify, from Shopify’s Help Center

“SSL pending” and the 48-hour wait

After any DNS change, Shopify says it can take up to 48 hours to propagate, and the admin shows a TLS or SSL pending status in the meantime. That’s normal. What isn’t is changing the records again every few hours, which restarts the wait. Make the change once, check it with a DNS lookup tool, and leave it for 48 hours.

The settings that quietly break it

Shopify lists the usual suspects when the records look right and the domain still fails: more than one A or AAAA record, DNSSEC switched on, Cloudflare’s proxy in front of the domain, and CAA records that don’t allow the certificate authorities Shopify uses. Each one stops the certificate being issued or sends visitors somewhere else.

An expired domain

Before any of that, check the domain is still registered. An expired or suspended domain stops loading everywhere at once, and it’s surprisingly common when the domain was bought years ago on someone else’s card. If the domain is registered outside Shopify, Shopify’s support can’t see its settings, so the fix goes through whoever you bought it from.

When the theme or an app breaks the page

If the store loads but something on it is wrong, a layout that’s fallen apart, a button that does nothing, a section that’s vanished, the cause is nearly always in the theme or in an app that adds code to it. The way to find out which is to take things away, one at a time, on a copy.

Test on a fresh copy of the theme

Shopify’s own advice is to install a new version of the theme, or a free Shopify theme, and see whether the problem is still there. If the fresh copy works, the fault is in your theme’s code or settings. If it doesn’t, look at apps and store settings instead. Do this on an unpublished copy: customers never see it, and you learn a lot in five minutes.

Apps you installed or updated recently

The Help Center puts it simply: if you recently installed or updated an app that affects your storefront, uninstall it temporarily and test again. Many storefront apps add their code through app embeds in the theme editor, which you can switch off one at a time without uninstalling anything. A store with twenty apps can have twenty sets of scripts running on every page, and one bad update is enough.

Code pasted into a page

If only one page is broken, check its content. Shopify notes that HTML added in the rich text editor can conflict with the theme’s code. A tracking snippet or an embed pasted into a product description is the usual culprit, and clearing its formatting or removing it fixes the page.

Edits to the theme code

If someone has edited the theme’s code, and the problem only appears on that theme, Shopify’s guide says the theme code is the likely cause, and points customised themes to whoever made the changes. Shopify’s support can’t fix custom code for you. That’s where a developer earns their fee, and where a duplicate of the theme from before the edit saves hours.

My view: always keep a known-good copy

Before any theme change, duplicate the live theme and give the copy a date. It costs nothing, and when something breaks, you can put the last working version back in one click while you work out what went wrong.

When checkout is the part that’s broken

This is the one that costs money by the minute, and the one people search for as “checkout not working”. The store looks fine, customers add things to the basket, and then checkout refuses to finish. On Shopify it’s nearly always payments or shipping.

“This store is currently unable to accept payments”

Shopify’s payments troubleshooting guide gives the cause for this exact message: the store doesn’t have an active primary payment provider, the one that takes card payments. PayPal and similar methods only handle their own payment type, so they don’t count. The fix is to add a primary provider under Settings, Payments, or a third-party gateway where Shopify Payments isn’t available in your country.

Payments on hold, or left in test mode

The same guide covers two quieter causes. A Shopify Payments account can be put on hold, which shows as a banner on the admin home page, with details sent to the store owner’s email address. And a third-party gateway left in test mode takes test cards and nothing else. If orders stopped on a particular day, check both.

No shipping rate, no checkout

If a customer can’t get past the shipping step, there’s no rate for their address. Shopify’s shipping troubleshooting guide lists the causes to check:

  • Shipping profiles. Each product has to be in a profile with rates for the zone the customer is in.
  • Zones and markets. The customer’s country has to be in a shipping zone and in one of your markets.
  • Locations. Each location needs to be active, with a valid address, and set to fulfil online orders.
  • Weights. Missing product weights, or units that don’t match your rates, return no rate at all.
  • Product type. Products marked as digital or as a service don’t get shipping rates.

Test with a brand-new checkout after each change. Shopify notes that an abandoned checkout keeps its old rate information, so re-using one can make a fix look like it hasn’t worked.

What a broken checkout costs

Checkout faults don’t always stop every order, which is why they run for weeks. According to the Baymard Institute’s September 2025 survey of US shoppers who abandoned a purchase, 17% left because the site had errors or crashed, and 12% because they couldn’t see the total cost up front.

◆ Why shoppers leave at checkout

17%
left because the site had errors or crashed
Baymard Institute, 2025
12%
couldn’t see or work out the total cost up front
Baymard Institute, 2025
40%
left because of extra costs such as delivery
Baymard Institute, 2025

Keep it from breaking again

Almost every fault in this guide is preventable, and the prevention is dull. That’s rather the point.

◆ Habits that prevent most outages

Do

  • Subscribe to Shopify’s status page, so you hear about incidents first
  • Duplicate and date the live theme before every change
  • Put the domain on auto-renew, on a card that won’t expire
  • Keep the billing card on the Shopify account current
  • Test checkout end to end after every app or setting change

Don’t

  • Change DNS records again before the 48 hours are up
  • Paste scripts into product descriptions
  • Install apps straight onto the live theme without testing
  • Leave a payment gateway in test mode after trying it
  • Fix things in a panic before you know the cause

When to get help

If you’ve worked through the sections that match your symptom and it’s still broken, or it keeps breaking, the cause is probably in the theme code or the way apps have been layered up over the years. That’s a job for someone who can read the code. A health check looks at one problem like this from the outside, in plain English, with what to fix first.

What to send a developer

Save them an hour: what you see, on which devices, since when, what changed around then, your .myshopify.com address, the list of apps, and a screenshot. More on how I work on Shopify stores is on the Shopify development page.

◆ Glossary

DNS
The system that tells browsers where a domain lives. Shopify needs specific records set for your domain to load your store.
A record and AAAA record
DNS records that point a domain at a server’s address, for the older and newer internet address formats.
SSL or TLS certificate
What makes a site load over https. Shopify issues it automatically once the DNS records are right.
Private mode
Shopify’s setting that hides the online store behind a password page. New stores start in it.
App embed
A way for an app to add code to your theme that you can switch on and off in the theme editor.
Primary payment provider
The provider that takes card payments at checkout. Without one, Shopify’s checkout can’t take payment.
Shipping profile
A group of products that share shipping rates. A product outside any profile with rates for a zone gets no rate there.

◆ Sources

◆ WRITTEN BY DC

18 years building and auditing software and ecommerce systems across 16 sectors. This is what I do, in public. If your numbers feel off, I'll tell you where they're going.

Available for new work

UK based · PHP · Python · JS · TS. Every first call is free.