If your WordPress website does not load, something between the visitor's browser and your website has stopped working.
The problem can sit in different places:
- the domain name or its DNS settings
- the SSL certificate
- a CDN or security service in front of the website
- the hosting server
- the database
- WordPress itself, a plugin or the theme
From the outside, many of these problems look the same: the page is blank, an error appears or the browser keeps loading. That is why the first job is not to fix anything, but to understand what kind of problem it is.
A website that is down does not necessarily mean that your content, orders or customer data have been lost. In many cases the data is still there and the website simply cannot be reached or displayed.
This guide explains how to tell whether the website is down for everyone, what the most common error messages mean, which checks are safe and when it is better to ask for technical support.
Is the website down for everyone or just for you?
Before anything else, check whether the problem affects everyone.
Try the following:
- open the website in a private or incognito window
- open it on your phone using mobile data instead of your office Wi-Fi
- ask a colleague or someone in another location to try
- use an online "is it down" checking service
If the website works on mobile data but not on your office network, the problem may be local: your network, your browser cache, a firewall or a DNS cache on your computer. The website itself may be fine.
If nobody can open it, the problem is on the website side and it is worth investigating further.
Also note whether the problem affects:
- the whole website
- only some pages
- only the WordPress dashboard
- only certain visitors or countries
This information helps identify which part of the system is involved.
What does the error message tell you?
The exact message on the screen is one of the most useful clues. Take a screenshot before trying anything.
The page keeps loading and then times out
The browser waits for an answer that never arrives. This may point to a server that is overloaded, switched off or blocked by a firewall, or to DNS settings that send visitors to the wrong place.
"500 Internal Server Error"
The server received the request but something went wrong while preparing the page. On a WordPress website this is often related to a plugin, the theme, custom code, a server configuration file or the PHP version.
"502 Bad Gateway", "503 Service Unavailable" or "504 Gateway Timeout"
These errors usually come from a server or service sitting in front of WordPress. In simple terms:
- 502 means a server received an invalid answer from another server behind it
- 503 means the service is temporarily unavailable, for example because it is overloaded or under maintenance
- 504 means a server waited too long for an answer from another server
They often point to the hosting environment, but a slow plugin or a heavy background task inside WordPress can also cause them.
"Error establishing a database connection"
WordPress loaded, but it could not connect to the database where your content is stored. Common reasons include changed database credentials, a database server that is down or overloaded, or a damaged database.
The content is usually still in the database. WordPress just cannot reach it.
A white screen or "There has been a critical error on this website"
The server is working, but WordPress stopped while loading the page. This is very often related to a plugin, theme or recent update. Our guide on the WordPress critical error explains this case in more detail.
"Briefly unavailable for scheduled maintenance"
WordPress shows this message while it installs updates. It should disappear by itself once the update is complete. If it stays, an update may have been interrupted.
A browser warning about the connection not being private
This usually means the SSL certificate has expired, is missing or does not match the domain. The website may actually be running, but browsers warn visitors before opening it.
"This site can't be reached" or "server not found"
The browser cannot find where the domain points. This may be caused by an expired domain, changed DNS records or a problem with the DNS provider.
A page from your hosting provider saying the account is suspended
The hosting provider has stopped the website on purpose. This can happen because of an unpaid invoice, a resource limit, a security problem or a policy issue.
An error page branded by a CDN or security service
If your website uses a service such as Cloudflare, visitors may see its error page instead of yours. Cloudflare error pages often show whether the problem is between the visitor and Cloudflare or between Cloudflare and your hosting server. Errors in the 52x range, such as 521, 522 or 524, usually mean Cloudflare could not get a proper answer from your server.
First checks anyone can do safely
These checks do not change anything on the website.
Check your email
Look in the inboxes connected to the website, including spam folders, for messages from:
- your hosting provider
- your domain registrar
- your SSL certificate provider
- your CDN or security service
- WordPress itself
You may find a notice about a suspension, a failed payment, planned maintenance, an expired domain or a WordPress error.
Check the status page of your hosting provider
Many hosting providers publish a status page or post updates about outages. If there is a known incident, the problem may not be on your website at all.
Check the domain and SSL expiry dates
Log in to the account where the domain was purchased and check the expiry date. Do the same for the SSL certificate if it is managed separately.
An expired domain or certificate is a common reason for a website suddenly disappearing, especially when the renewal was tied to an old payment card or an email address nobody reads.
Think about what changed recently
Write down anything that happened shortly before the website went down:
- updates to WordPress, plugins or the theme
- a new plugin
- changes made by a developer or colleague
- a migration to a new server
- changes to DNS, email or domain settings
- changes to the CDN or security settings
- a backup restore
- a change of hosting plan
A short note like "the site went down after we moved the domain to a new provider" can point straight to the cause.
Is it the hosting or WordPress?
This is often the key question, because it decides who should look at the problem.
The problem is more likely to be in the hosting or infrastructure when:
- the page times out or shows "server not found"
- the hosting control panel is also slow or unreachable
- other websites on the same hosting account are also down
- you see a suspension notice
- the domain or SSL certificate has expired
- the hosting status page reports an incident
- a CDN error page says your server is not responding
The problem is more likely to be inside WordPress when:
- the server responds quickly but shows a WordPress message
- you see a critical error, a white screen or a maintenance message
- static files such as images load, but pages do not
- the problem started right after an update or a new plugin
- only the dashboard or only some pages are affected
Some cases sit in between. A database connection error, for example, can be caused by the hosting database server or by a change in the WordPress configuration.
What can you safely try?
Option 1: contact your hosting provider
If the signs point to the server, contact your hosting provider and ask:
- whether there is a known outage
- whether the account is active and not suspended
- whether the website hit any resource limits
- whether the database server is running
- whether they see errors in the server logs
- whether a recent backup is available
Hosting support can usually confirm or rule out problems on their side. They may not be able to fix a plugin conflict or custom WordPress code.
Option 2: renew an expired domain or certificate
If the domain or SSL certificate has expired, renewing it through the provider is usually the first step. Changes to DNS and certificates may take some time to become visible everywhere.
If the domain has been expired for a while, check with the registrar what options are still available.
Option 3: contact the person who made the last change
If a developer, agency or colleague recently worked on the website, DNS or hosting, ask them what they changed. Undoing a recent change in a controlled way is often faster than investigating from scratch.
Option 4: wait a few minutes after an update
If you see the maintenance message right after starting an update, give it a few minutes before intervening. Interrupting an update that is still running can leave the website in a worse state.
Option 5: restore a backup
A restore can be useful when the website stopped working after a known change and a recent, reliable backup is available.
But a restore can also overwrite data created after the backup, such as:
- orders
- form submissions
- user registrations
- content changes
- subscription data
On an ecommerce, membership or business website, check the date and contents of the backup first. If the problem is in the hosting, DNS or domain, a restore will not fix it at all.
What should you avoid doing?
When a website is down, it is natural to want to try everything at once. This can hide the original cause or create new problems.
Avoid:
- changing DNS records without knowing what they were before
- moving the website to a new host in a hurry
- restoring an old backup without checking its date
- updating or deleting plugins at random
- changing the PHP version repeatedly
- editing the database directly
- disabling the CDN or security service without understanding the consequences
- sharing passwords, logs or configuration files in public forums
- making several changes before testing the result
Change one thing at a time and keep a short record of what you did and when.
If you are not sure what an action will do, stopping is usually safer than continuing.
When should you ask for technical support?
Technical support is recommended when:
- the website has been down for more than a few minutes and you do not know why
- the website handles orders, payments, bookings or subscriptions
- you cannot access the hosting panel or the WordPress dashboard
- you see a database connection error
- the hosting provider says the problem is inside WordPress
- the problem started during a migration, update or restore
- the website goes down repeatedly
- you suspect the website may have been hacked
- you do not have a verified backup
- you are not comfortable working with DNS, files or server settings
You do not need to diagnose the problem before asking for help. A useful support request can simply say what you see, when it started and what changed.
If you suspect a security problem, our guide on what to do if WordPress has been hacked explains the first steps.
What information should you collect?
Before opening a support request, collect whatever is easily available:
- the website URL
- a screenshot of the error
- the approximate time the problem started
- whether the website is down for everyone or only for some people
- whether the WordPress dashboard works
- what changed shortly before the problem
- the name of the hosting provider
- where the domain is registered and where DNS is managed
- whether a CDN or security service is in use
- any emails received from the hosting provider, registrar or WordPress
- whether a recent backup is available
Do not worry if you cannot provide everything. Do not send passwords by ordinary email: D4Hub can tell you which access is needed and how to share it safely.
How D4Hub can help
The goal is not only to bring the website back online, but to understand why it went down and reduce the risk of it happening again.
Depending on the problem, D4Hub can help with:
- working out whether the problem is in DNS, SSL, the CDN, the hosting or WordPress
- checking domain, DNS and SSL certificate settings
- reviewing server and WordPress error logs
- identifying a plugin, theme or update that broke the website
- fixing database connection problems
- clearing a stuck maintenance mode safely
- coordinating with your hosting provider, registrar or CDN
- evaluating whether a backup should be restored and how to protect newer data
- testing login, forms, checkout and other important functions after the fix
- recommending monitoring, backups and maintenance to prevent future outages
You can ask for support at any stage of the process.
For example, D4Hub can:
- confirm whether a check you want to do is safe
- take over when you cannot access the dashboard or hosting panel
- complete the full diagnosis and repair
- review the website after a temporary fix
If any step in this guide feels unclear or risky, you do not need to do it alone.
Open a support ticketFor hands-on users: technical checks for a site that is down
The following checks are for users who are comfortable with a terminal, hosting panels and website files.
Most of the commands below only read information. Before changing any file, make sure you have a recent backup and that you are working on the correct website. Change one thing at a time.
In the examples, replace example.com with your domain.
Check where the domain points
Use dig (macOS and Linux) or nslookup (also available on Windows) to see which IP address the domain resolves to:
dig example.com A +short
dig www.example.com +short
nslookup example.comCompare the result with the IP address shown in your hosting panel or CDN dashboard. If you use Cloudflare with the proxy enabled, you will see Cloudflare addresses instead of your server address, which is expected.
To see which nameservers the domain uses:
dig example.com NS +shortIf the nameservers are not the ones you expect, the DNS may have been changed at the registrar.
If nothing comes back at all, check the domain status and expiry date with your registrar. A whois example.com lookup can also show the expiry date for many domain extensions.
Check the HTTP status code
curl -I asks the server for the response headers only, without downloading the page:
curl -I https://example.comThe first line shows the status code, for example HTTP/2 200, HTTP/1.1 500 or HTTP/2 503. Other headers can show whether the answer comes from a CDN or directly from your server.
To follow redirects and see each step:
curl -IL https://example.comA redirect loop or a redirect to an unexpected domain is worth investigating, especially if you did not set it up.
Check the SSL certificate dates
echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null | openssl x509 -noout -datesThe notAfter line shows when the certificate expires.
Check the error logs
Most hosting panels give access to the PHP and web server error logs. On a self-managed server, common locations include:
/var/log/nginx/error.log
/var/log/apache2/error.logThe exact paths depend on the server setup.
Look for errors recorded at the time the website went down. Messages that mention a plugin or theme folder, a PHP fatal error, exhausted memory or a database connection failure are useful clues.
If WordPress debug logging is enabled, also check:
wp-content/debug.logLogs can contain sensitive information such as file paths, email addresses or IP addresses. Do not publish them without reviewing them first.
Check for a leftover .maintenance file
During updates, WordPress creates a file called .maintenance in the WordPress root folder, the same folder that contains wp-config.php. It is normally removed when the update finishes.
The file name starts with a dot, so it may be hidden in some file managers or SFTP clients. Enable the option to show hidden files.
If the maintenance message persists, no update is still running and the file is there, you can delete or rename it and reload the website. Then check the plugins, themes or core version that were being updated, because the update may not have completed correctly.
With WP-CLI you can check and turn off maintenance mode:
wp maintenance-mode status
wp maintenance-mode deactivateSome maintenance or "coming soon" plugins show their own maintenance page. In that case the setting is inside the plugin, not in the .maintenance file.
Check the database connection settings
If you see "Error establishing a database connection", compare the database settings in wp-config.php with the ones shown in your hosting panel:
DB_NAME
DB_USER
DB_PASSWORD
DB_HOSTDo not change these values unless you are sure the hosting values are correct. If WP-CLI is available, this command checks that the database can be reached:
wp db checkIf the settings are correct and the database still cannot be reached, contact the hosting provider: the database server may be down or overloaded.
Check the WordPress core files
If you suspect missing or modified core files, for example after an interrupted update:
wp core verify-checksumsThis compares your WordPress core files with the official versions. Unexpected differences may also be a sign of a security problem, so do not simply overwrite them without understanding why they changed.
D4Hub can help you interpret the results and decide on the next safe step.
FAQFrequently asked questions
Usually not. In most cases the files and database are still there, but something prevents the website from being reached or displayed.
Avoid restoring backups or replacing files until the cause is clearer, so you do not overwrite recent data.
This can happen when DNS changes have not reached every network yet, when a browser or network has cached an old version, or when a firewall or security service blocks certain visitors. Testing on mobile data and from different locations helps tell these cases apart.
Sometimes. Outages, resource limits and suspensions are hosting issues. But many outages are caused by updates, plugins, configuration changes or expired domains and certificates. The error message and the recent changes usually point in the right direction.
Not necessarily. Cloudflare often shows its own error page when it cannot reach your server, so the problem may actually be on the hosting side. The error code and the details on the Cloudflare page help understand where the connection fails.
Not in the middle of an outage. A rushed migration can add new problems and make the original cause harder to find. First bring the website back online, then evaluate whether the hosting is still the right fit.
Not always. Check login, forms, checkout and other important functions. It is also worth understanding why the website went down, so you can prevent the same outage from happening again.
Yes. Explain what you tried and what happened after each step. This helps reconstruct what happened and decide what to do next.