WordPress Site Health: what each message means and what to do about it
WordPress Site Health is a built-in technical check that you find under Tools → Site Health. It splits the results into critical issues, recommended improvements and passed tests. Check the critical ones within a few days, because they concern security or how the site works. The recommended ones are suggestions: some you fix yourself, some your host will handle.
Author: The TellMyShop team. A guide for WordPress site and WooCommerce store owners: the cause, the manual fix and the same work in a chat conversation.
Last updated: · 7 min read
Where to find Site Health and how to read it
Go to Tools → Site Health. At the top you see an overall rating, and below it two tabs.
- Status shows the test results in three groups: critical issues, recommended improvements and passed tests. You can expand each item to read a short explanation.
- Info holds the details: the WordPress, PHP and database versions, the theme, plugins and folder permissions. The copy button is handy when you write to your host or the person who looks after the site.
The rating at the top is only a summary. What matters more is what is actually on the list. The screen is described in the WordPress documentation on the Site Health screen, and there is a readable walkthrough of both tabs in Itomic's guide.
Remember that these are automatic tests. They do not know your situation. If the site is managed in a code repository, automatic updates are switched off on purpose, and the report will flag it anyway.
What each Site Health message means
The exact wording depends on the WordPress version and on plugins that add their own tests. The table explains the most common messages in plain words.
| Message (short form) | What it means | Who fixes it | Urgency |
|---|---|---|---|
| Your site is running an outdated version of PHP | the server runs old PHP, without security fixes or more slowly | the host, or you in the hosting panel, after checking plugin compatibility | high |
| Your website does not use HTTPS | no certificate, or the site address starts with http | the host, then you in the settings | high |
| The REST API encountered an error or unexpected result | the editor and some plugins cannot talk to WordPress | you and the site maintainer, often a security plugin | high, when the editor does not save |
| Your site could not complete a loopback request | the site cannot connect to itself, which breaks scheduled tasks and file editing | the host or a security plugin | medium |
| A scheduled event has failed or is late | the WordPress scheduler is not working as it should | the site maintainer, the host | medium |
| An active PHP session was detected | a plugin opens a session and does not close it, which slows tests and requests | a developer or the plugin's author | medium |
| You have inactive plugins or themes | they sit on the server although you do not use them | you | low, but easy |
| Updates are available | WordPress, a plugin or a theme has a newer version | you or the site maintainer, after a backup | depends on the plugin |
| You should use a persistent object cache | the server has no Redis or Memcached | the host | low on small sites |
| An optional PHP module is missing | for example a module for image processing | the host | low |
| Debug mode is enabled | errors may be visible to visitors | the site maintainer | high on a live site |
| Your site is discouraging search engines from indexing | the option in Settings → Reading is ticked | you | high, if the site should be in Google |
| Autoloaded options are large | the database loads a lot of data on every visit, usually from old plugins | a developer | medium |
For the REST API message, see the guide to the error that usually comes with it: “not a valid JSON response” in WordPress. If search engines are blocked, the post on why a WordPress site is not showing in Google will help. Late scheduled events often also show up as a scheduled post that did not publish. With debug mode on, the site maintainer should log errors to a file instead of showing them to visitors, as the WordPress debugging documentation explains.
Site Health critical issues: where to start
When the list has several critical items, go in this order. The first steps often explain the rest.
- Record the current state. On the Info tab, copy the report to the clipboard and paste it into a note. It will help your host, and help you compare in a week.
- Check what has changed. A new plugin, an update, a PHP change in the hosting panel. A message that appeared yesterday usually has yesterday's cause.
- Start with security. Old PHP, no HTTPS and debug mode switched on matter more than caching and modules.
- Separate your items from the host's. Settings in the WordPress admin, plugins and themes are on your side. The PHP version, server modules and the certificate are on the host's side, though some hosts let you change them in the customer panel.
- Write to your host with specifics. Paste the copied report and ask about each server item separately.
- Refresh the report after a change. Background tests sometimes need a few minutes. If an item disappears and comes back, note when.
Before changing the PHP version, check that your plugins support it, and make a backup. The recommended versions are listed on the WordPress requirements page. If the site stops working after the change, the guide to the WordPress critical error will help.
When you can leave recommended improvements
Recommended improvements are not a list of duties. You can knowingly leave a few typical items:
- no persistent object cache on a site with a few dozen visits a day,
- a missing optional PHP module that none of your plugins uses,
- automatic updates switched off, if someone regularly updates the site by hand and checks it after every change.
Do not, however, keep inactive plugins “just in case”. Code that sits on the server can still have a vulnerability, even when it is deactivated. A plugin you have not used for months is better deleted.
Site Health does not measure speed or SEO. If the site is slow, read what to do when WordPress is slow. We describe a content review for Google in the post on the WordPress SEO audit.
How the chat reads Site Health
The TellMyShop plugin for WordPress and WooCommerce reads Site Health in TellMyShop Free, which saves nothing. Your chat (Claude or ChatGPT) gets the results split into critical, recommended and fine, with one “what to do” sentence for each item, and alongside it can read the error logs and the list of plugins with available updates. So it does not explain a message in a vacuum, but connects it with what is happening on your site.
You: Site Health shows two critical issues. What do they mean and what should I do?
Your chat: The first: the server is running an old version of PHP. That is a job for your host or the hosting panel. All your plugins have versions that support newer PHP.
Your chat: The second: the REST API returns an error. In the logs from the last 3 days I can see rejected requests from the Example Firewall plugin. That is most likely what is blocking the editor.
Your chat: My suggestion: the host changes PHP, and we test the firewall plugin by deactivating it on trial. Preview:
You: I will ask the host about PHP first. Deactivate the firewall for an hour.
Your chat: Deactivated. Site Health no longer reports the REST API error. I will activate it again when you say, or you can undo it from the change history.
old version: Example Firewall: active
new version: Example Firewall: inactive
The plugin names and numbers in this conversation are examples. The explanation alone works in Free. Deactivating, updating and deleting an inactive plugin work in TellMyShop Pro once you turn on the Plugins switch. It lasts 24 hours and needs a database backup from today, which the plugin makes itself. Before every change the chat shows a preview and waits for your approval, and you can undo most changes from the change history. The chat will not change the PHP version, the certificate, server modules or the wp-config.php file. Those stay with your host or the site maintainer.
Checking this report every day is easier with a morning review, described in the post on WordPress site maintenance. You can download the free version on the TellMyShop Free page, and the TellMyShop for WordPress page describes what it can save. You will find the differences between versions on the pricing page.
Questions and answers
Where do I find Site Health in WordPress?
The screen is called Site Health and sits in the Tools menu. Only an administrator can see it. It has two tabs: Status, with the test results, and Info, with details of the server, theme and plugins.
Does a critical issue in Site Health mean my site is broken?
Usually not. Critical issues are things that may harm security or how the site works, such as an old PHP version or no HTTPS. The site often runs normally, but it is worth finding the cause within a few days rather than putting it off for months.
Do I have to fix all the recommended improvements?
No. Recommended improvements are suggestions, and some do not suit every site. No persistent object cache on a small business site, or automatic updates switched off on purpose, are typical items you can knowingly leave.
Why does the result change when I refresh the page?
WordPress runs some tests in the background by connecting to its own site, for example the REST API and loopback request tests. When the server is briefly overloaded or a security plugin cuts the connection, the test passes one time and fails the next. If the message keeps coming back, take it seriously.
Will the TellMyShop plugin fix Site Health issues?
Some of them, in TellMyShop Pro: updating or deactivating plugins once you turn on the Plugins switch, and single settings with the Service switch. It will not change the PHP version, HTTPS or server limits, which are your host's job. TellMyShop Free reads the report and explains each item.
WordPress is a trademark of the WordPress Foundation. WooCommerce is a trademark of Automattic Inc. Claude is a trademark of Anthropic PBC. ChatGPT and OpenAI are trademarks of OpenAI. TellMyShop is not affiliated with these companies.