Website SEO Checker
Free SEO test for any page in seconds: about 30 checks — meta tags, response time, security, content and links. Score 0–100.
In-depth analysis
Use specialized tools for detailed analysis of each aspect:
Full website SEO audit — crawled like Googlebot
The quick check above looks at one page. SEO Audit crawls the whole site and checks every page: 35+ checks, a 0–100 Health Score and a PDF/Excel report. The first 100 pages are free.
What does the SEO audit check?
The comprehensive SEO audit analyzes your site across 30+ parameters, divided into categories: performance (TTFB, size, compression), On-Page SEO (title, description, H1, canonical), Open Graph (social), security (HTTPS, headers), content (volume, structure, Schema) and links (internal, external).
Each check receives a rating: passed (green), warning (yellow) or error (red). The overall score from 0 to 100 shows site readiness. To improve rankings we recommend PromoPilot cascade link building.
Website SEO checker: what it tests
The SEO checker loads one page and runs about 30 tests in six groups: response time, on-page SEO, Open Graph, security, content and links. You get a 0–100 score and a prioritized list of issues.
How to Use
- Enter the URL of the page you want to check
- Wait for analysis to complete (10-30 seconds)
- Review the report and fix issues by priority
Use Cases
- Run a quick pre-launch check for key landing pages.
- Monitor SEO regressions after template or code changes.
Limitations
- Checks one URL per run and is not a full-site crawler.
- Some checks depend on availability of external resources.
Example Input / Output
https://example.com/landing-page
SEO Score 72/100 with 5 critical and 11 medium-priority issues.
FAQ
How this website SEO checker scores a page (0–100)
The checker downloads one page exactly as your server returns it and runs about 30 tests. The exact number depends on the page: the image alt test only appears when the page has images, and the text-quality tests need at least a few sentences of visible text. Every test gets a status — pass is worth 100 points, warning 50, fail 0. Points are averaged inside each group, and the final score is a weighted average of the groups:
| Group | Weight | Tests |
|---|---|---|
| On-page SEO | 25 | title, meta description, H1, canonical, viewport, lang attribute, image alt text |
| Content & technical | 20 | word count, number of headings, JSON-LD, robots.txt and sitemap.xml present |
| Performance | 15 | HTML load time, HTML size, compression, number of scripts, stylesheets and images |
| Security | 15 | HTTPS plus five headers: HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy |
| Social | 10 | og:title, og:description, og:image, twitter:card |
| Links | 10 | internal and external link counts |
| Text quality | 5 | AI-generation probability and an "artificiality" score (visible after free sign-up) |
One practical consequence: a single fail in a two-test group (Links) moves the score more than a fail in a seven-test group. So don't chase the number — work down the priority list instead, fails (red) first, then warnings. Guests see the top three actions; a free account shows up to 15. The SEO tester is free: 10 runs a day without an account, 30 with one.
What to enter
Paste the full URL of a specific page, not just the domain: a home-page test tells you nothing about your product pages. The checker follows redirects and analyses the final URL, which is shown in the report. If that is not the address you typed, sort out the redirect before touching any tags — you need to optimise the page a crawler actually receives. Each re-test after a fix counts against the daily limit.
Thresholds the SEO analyzer uses
| Test | Pass | Warning |
|---|---|---|
| HTML load time (shown as TTFB) | under 0.5 s | 0.5–1.5 s |
| HTML size | under 100 KB | 100–300 KB |
| Scripts + stylesheets + images | under 30 | 30–60 |
| Title | 20–70 characters | present but shorter or longer |
| Meta description | 70–160 characters | present but out of range |
| H1 | exactly one | two or more |
| Word count | 300+ words | 100–299 words |
| Headings H1–H6 | 3 or more | 1–2 |
| Internal links | 3 or more | 1–2 |
The load time includes redirects. If http://example.com goes to https://example.com and then to https://www.example.com, you see the sum of all hops — which is what a crawler pays on its first visit. An unnecessary hop in that chain is usually the cheapest speed fix on the whole site.
When a warning is not a problem
A site analyzer applies one ruler to every page, but pages have different jobs. Before you fix anything, check whether one of these applies:
- sitemap.xml "missing" although you have one. The checker only looks at
/sitemap.xml. Yoast SEO serves its sitemap at/sitemap_index.xmland WordPress core at/wp-sitemap.xml; Shopify does use/sitemap.xml. Google is fine with any location as long as it is listed in robots.txt (Sitemap:line) or submitted in Search Console. The sitemap analyzer confirms the file actually parses. - Low word count on a contact, cart or login page. The 300-word threshold is meant for articles and landing pages; utility pages don't need copy.
- No external links. It is a warning, not a fail. Link out when it helps the reader, not to collect points.
- No canonical on a page without duplicates. Google will pick a canonical on its own, but the tag protects you from copies created by UTM tags and sort parameters, so it is still worth adding.
- Heavy HTML on a site-builder landing page. Builders inline their CSS into the document. If real-browser speed is fine, this alone is no reason to migrate.
How to fix the most common failures
Missing meta description or more than one H1
The description lives in <head>: <meta name="description" content="…">. In WordPress set it in Yoast SEO or Rank Math; in Shopify, under the page's "Search engine listing"; in Wix and Squarespace, in the page's SEO settings. Duplicate H1s usually come from the theme: the logo in the header is marked up as <h1>. Change the logo wrapper to a <div> and keep a single H1 for the page title.
No compression
A response without Content-Encoding is typically 3–5 times heavier. nginx:
gzip on; gzip_comp_level 5; gzip_types text/css application/javascript application/json image/svg+xml;
Apache (mod_deflate): AddOutputFilterByType DEFLATE text/html text/css application/javascript. Brotli, if your host supports it, also passes this test.
Missing security headers
add_header Strict-Transport-Security "max-age=31536000" always; add_header X-Content-Type-Options "nosniff" always; add_header X-Frame-Options "SAMEORIGIN" always; add_header Referrer-Policy "strict-origin-when-cross-origin" always;
Turn on HSTS only after the site and every subdomain work over HTTPS. Start CSP in Content-Security-Policy-Report-Only mode — an enforced policy written blind breaks analytics tags and embeds.
No Open Graph or structured data
<meta property="og:title" content="Page title"> <meta property="og:description" content="Short summary"> <meta property="og:image" content="https://example.com/cover.jpg"> <meta name="twitter:card" content="summary_large_image">
For JSON-LD, an Organization block on the home page and Article or Product on inner pages covers most sites; the schema generator builds the code for you.
Free SEO check vs a full website audit
This tool is a fast SEO test of one URL. It does not crawl, so it cannot see:
- duplicate titles and descriptions across pages, or broken links site-wide;
- whether the page is actually indexed — robots.txt and sitemap.xml are only checked for existence at the domain root;
- SSL certificate expiry — the security group only confirms the page loads over HTTPS;
- Core Web Vitals — timing here is server-side, with no browser rendering.
To crawl every page, use SEO Audit, the full technical website audit: 35+ checks per page, a Health Score and a PDF report, with the first 100 pages free. To see whether a URL is in Google, run the Google index checker; for dead links across several pages at once, use the broken link checker.
A 10-minute routine for checking a website
- Home page — header mistakes (logo in H1, no description) show up here first.
- One page per template: a category, a product or service page, a blog post. A template bug repeats on every page built from it, so one sample per template is enough.
- Landing pages that receive ads or backlinks.
- Fix the red items, re-test the same URLs and compare scores.
If the test fails while the site opens fine in your browser, the server may be rejecting automated requests. The checker identifies itself as PromoPilot SEO Tools, and some firewalls (a WAF, Cloudflare's "under attack" mode) block such clients. Pages that return HTTP 400 or higher are not analysed — fix the status code first.
RankBotAI — AI SEO Optimization for WordPress
RankBotAI AI plugin automatically finds and fixes SEO issues in WordPress products and posts — no manual editing.