All 30 checks Page returns an error
Page returns an error
Updated
A page that answers with a 404, a 500 or another error status is treated by browsers, search engines and link previews as a page that is not there, even when the HTML that comes with it looks fine.
HTTP/2 404
content-type: text/html; charset=utf-8
<h1>Welcome to Example Co.</h1>HTTP/2 200
content-type: text/html; charset=utf-8Why the status code matters more than the page
The status code is the first thing a crawler or a link-preview bot reads, and it decides what happens next. Search engines drop pages that keep returning errors from their index. Chat apps and social networks skip building a preview card. Monitoring tools mark the site as down. A visitor can still see a well-designed page, which makes the problem hard to spot by eye, because a browser shows whatever HTML arrived along with the error.
A common cause during launch is a page that works in the editor but sits behind a password, a coming-soon plugin, or a hosting rule that answers 401, 403 or 503 to anyone who is not signed in. Another is a misconfigured single-page app that sends the right HTML but with 404 because the server does not know the route. Both look fine to the person who built the site and fail for everyone else.
How Skewcheck detects it
Skewcheck fetches the URL, follows up to five redirects, and reads the status code of the final response. Any status from 200 to 399 passes. Anything else, such as 404, 403, 410, 500 or 503, fails with high severity and removes 10 points from the score. Skewcheck judges only the status. It does not decide whether the page is the right one or whether its content is complete.
If the site cannot be reached at all, for example the connection is refused, the certificate is invalid, or it takes longer than twelve seconds to answer, there is no status to read, and the audit reports that the page could not be fetched instead of running the checks. Note that Skewcheck makes an anonymous request without cookies, so a page that only works for signed-in users will fail here, as it would for a search engine.
curl -sIL -o /dev/null -w '%{http_code} %{url_effective}\n' https://example.com/Finding and fixing the cause
Start by running the command above on the exact URL you gave Skewcheck, and look at the final address as well as the code. A 404 on the home page usually means the domain points at a host that has no published site yet, or the site was published to a different domain. A 401 or 403 points at password protection, an IP allow list, or a bot rule at a CDN or firewall. A 5xx points at the application itself, so check the host's logs.
Make the page answer 200, or one redirect that ends on a page that does. If you do not want a page public yet, say so with a noindex tag and keep the status at 200 rather than returning an error. Once it is fixed, request an unknown path such as /this-page-does-not-exist and confirm your custom 404 page returns a 404 status, since a not-found page that answers 200 confuses search engines in the opposite direction.
Before and after
$ curl -s -o /dev/null -w '%{http_code}\n' https://example.com/
503$ curl -s -o /dev/null -w '%{http_code}\n' https://example.com/
200Check your page
Run all 30 checks on any URL. Free, no account.