Free Tool · Page analysis
On-Page SEO Checker
See a page's title and description, heading structure, content, links, images, structured data and readiness for AI search in one report. If you enter your focus keyword, we evaluate how it's used on the page, taking different word forms into account.
How does the analysis work?
- We request the page like a browser. The address is requested through the Enar SEO server with a mobile (or desktop) user agent; redirects, status code, response time and HTTP headers are recorded. JavaScript isn't executed: the raw HTML we examine is the same as what most AI crawlers see.
- We check robots.txt and targets. The site's robots.txt is read with Google's matching rules, and access is calculated for Googlebot and AI crawlers. The canonical and og:image addresses are requested separately.
- We isolate the main content. Menus, headers, footers and sidebars are stripped out; word, sentence, paragraph and readability calculations use only the main content.
- We match the focus keyword across word forms. If you type “coffee machine”, forms such as “coffee machines” are counted too; for Turkish pages, Turkish suffixes and spellings without Turkish characters are also recognized.
- We calculate the score. Each category starts at 100 points, and each issue found deducts its weight. The total score is the weighted average of the categories; if you don't enter a focus keyword, that category isn't counted.
Checks and their weights
Score formula (enarseo-sayfa-v1): each category starts at 100 points; each issue found deducts points in proportion to its weight relative to the total weight of the applicable checks in that category. The total score is the weighted average of the category scores. If an issue prevents the page from being indexed (an error code, noindex, a robots.txt block), the total score is capped at 40. Checks with a weight of “—” are informational and don't affect the score; checks that don't apply to the page (e.g. author info on a home page) aren't counted.
Crawling and indexing (%25)
Whether the page can be crawled and indexed: HTTP status, redirects, noindex, robots.txt, canonical, head integrity, HTTPS, mobile-friendliness, server response and whether the content is in the raw HTML.
| Check | Severity | Weight |
|---|---|---|
| Page doesn't return 200 (OK) | Critical | 10 |
| Address redirects (chain or temporary redirect) | Warning | 3 |
| Page is excluded from indexing with noindex | Critical | 10 |
| robots.txt blocks Googlebot from crawling this page | Critical | 10 |
| No canonical tag | Warning | 3 |
| Canonical signal is invalid or conflicting | Critical | 6 |
| Canonical points to a different address | Warning | 3 |
| Canonical target doesn't return 200 | Critical | 6 |
| Important tags end up outside the head | Critical | 6 |
| Redirect via meta refresh | Warning | 3 |
| Page doesn't use HTTPS | Critical | 6 |
| HTTP resources on an HTTPS page (mixed content) | Warning | 3 |
| No mobile viewport tag | Critical | 6 |
| Zooming is disabled | Recommendation | 1 |
| Errors in hreflang markup | Warning | 3 |
| html lang attribute missing or invalid | Recommendation | 1 |
| Character encoding not declared, or declared too late | Recommendation | 1 |
| Slow server response (TTFB over 800 ms) | Warning | 3 |
| HTML exceeds Googlebot's 2 MB limit | Critical | 6 |
| HTML is sent uncompressed | Warning | 3 |
| Main content isn't in the raw HTML (it's generated by JavaScript) | Warning | 6 |
Title and meta tags (%20)
How the page appears in search results: presence and length of the title and meta description, H1, title–H1 consistency, large image preview permission.
| Check | Severity | Weight |
|---|---|---|
| Title tag missing or empty | Critical | 10 |
| Title too short, or long enough to be truncated in search results | Warning | 3 |
| Multiple title tags | Warning | 3 |
| No meta description | Warning | 6 |
| Meta description too short or too long | Recommendation | 1 |
| Multiple meta descriptions | Recommendation | 1 |
| H1 missing or empty | Warning | 6 |
| Multiple H1s | Recommendation | 1 |
| Title and H1 share no words | Recommendation | 1 |
| No large image preview permission (max-image-preview:large) | Recommendation | 1 |
Content and structure (%15)
Sufficiency of the main content, heading hierarchy, readability (Flesch Reading Ease for English, the Ateşman formula for Turkish), sentence and paragraph length, DOM size.
| Check | Severity | Weight |
|---|---|---|
| Little text in the main content (under 250 words) | Warning | 3 |
| Heading levels are skipped (e.g. H2 to H4) | Recommendation | 1 |
| Empty heading tags | Recommendation | 1 |
| Long content isn't broken up with subheadings | Warning | 3 |
| The text is hard to read | Recommendation | 1 |
| High share of long sentences | Recommendation | 1 |
| Very long paragraphs (over 150 words) | Recommendation | 1 |
| DOM is too large (over 1,500 elements) | Recommendation | 1 |
| Low visible-text-to-HTML ratio (below 10%) | Recommendation | 1 |
Focus keyword (%10)
Evaluated only when you enter a focus keyword: natural use in the title, H1, description, URL, introduction, subheadings and body text, with a keyword stuffing warning.
| Check | Severity | Weight |
|---|---|---|
| Focus keyword isn't in the title | Critical | 10 |
| Focus keyword isn't in the H1 | Warning | 6 |
| Focus keyword isn't in the meta description | Warning | 3 |
| Focus keyword isn't in the introduction (first 100 words) | Warning | 3 |
| Focus keyword isn't in the URL | Recommendation | 1 |
| Focus keyword isn't in any subheading | Recommendation | 1 |
| Focus keyword never appears in the body text | Critical | 6 |
| Focus keyword is overused | Warning | 3 |
| Focus keyword isn't in any image alt text | Recommendation | 1 |
Links and images (%10)
Internal links, anchor text, uncrawlable and nofollow internal links; image alt text, dimension attributes, how the first image loads and image formats.
| Check | Severity | Weight |
|---|---|---|
| No internal links on the page | Warning | 3 |
| Links without text | Warning | 3 |
| Non-descriptive anchor text (“click here”, “read more”…) | Recommendation | 1 |
| Uncrawlable links (href="#" or javascript:) | Recommendation | 1 |
| nofollow on internal links | Recommendation | 1 |
| images without an alt attribute | Warning | 3 |
| Images without width and height attributes | Recommendation | 1 |
| The page's first image is lazy-loaded | Warning | 3 |
| Most images are in legacy formats (JPEG/PNG/GIF) | Recommendation | 1 |
Structured data and sharing (%10)
Presence and validity of JSON-LD, required and recommended fields of rich result types, types that no longer earn a search appearance, breadcrumbs and Open Graph.
| Check | Severity | Weight |
|---|---|---|
| No structured data (JSON-LD) | Warning | 3 |
| JSON-LD syntax error | Critical | 6 |
| Required fields for rich results are missing | Warning | 6 |
| Recommended structured data fields are missing | Recommendation | 1 |
| Types that no longer produce rich results | Recommendation | — |
| No BreadcrumbList structured data | Recommendation | 1 |
| Open Graph tags are missing | Warning | 3 |
| The og:image address can't be reached | Recommendation | 1 |
GEO and E-E-A-T signals (%10)
Citability in AI search: AI crawler access, snippet permission, author, date and publisher information, and a structure that opens with a summary and is backed by lists and sources.
| Check | Severity | Weight |
|---|---|---|
| AI search crawlers are blocked by robots.txt | Warning | 6 |
| Snippet restriction present (nosnippet / max-snippet) | Warning | 6 |
| No author information | Warning | 3 |
| No publication or update date | Warning | 3 |
| No publisher or organization information found | Recommendation | 1 |
| Long introduction (the answer comes late) | Recommendation | 1 |
| No lists or tables in long content | Recommendation | 1 |
| No links to external sources | Recommendation | 1 |
| No question-style subheadings | Recommendation | — |
Frequently asked questions
What's the difference between the On-Page SEO Checker and the Technical SEO Audit?
The Technical SEO Audit crawls up to 50 pages of your site to find site-wide issues (broken links, duplicate titles, redirects). The On-Page SEO Checker focuses on a single page and examines its content structure, readability, focus keyword usage and readiness for AI search in detail.
What should the keyword density be?
There is no ideal density; Google doesn't use density as a ranking factor. The tool only warns about overuse (above 3%). Using the keyword naturally in the title, H1, introduction and subheadings matters more than how many times it's repeated.
How are word forms taken into account?
The last word of the focus keyword is matched as a stem: for “shoe”, “shoes” is counted too. For Turkish pages the tool also handles Turkish suffixes, possessive endings in compounds (“kahve makinesi” → “kahve makineleri”), consonant softening (“kitap → kitabı”) and spellings without Turkish characters. This is an approximate method and occasionally an unrelated word may match, so we list the forms found in the result.
How is the readability score calculated?
English pages use the Flesch Reading Ease formula: 206.835 − 1.015 × (words ÷ sentences) − 84.6 × (syllables ÷ words). 60–70 is standard, higher is easier and below 50 is hard to read. Turkish pages use the Ateşman formula. The calculation uses only the paragraphs in the main content.
Why doesn't content generated by JavaScript appear in the analysis?
The tool examines the raw HTML the server sends and doesn't run JavaScript. Google can render JavaScript later, but the crawlers of ChatGPT, Claude and Perplexity mostly don't: content that isn't in the raw HTML doesn't exist for these platforms. The tool flags this with a separate warning.
Why are GEO and E-E-A-T signals part of the score?
AI-powered search (Google AI Overviews, ChatGPT, Perplexity) looks for accessibility, clarity and trustworthiness when choosing sources. Whether crawlers can reach the page, snippet permission, author and date information, and a structure that opens with a summary all influence that choice. These signals don't replace the real quality of the content; they're a checklist that shows what's missing.
To crawl your whole site, use the Technical SEO Audit; to compare your page with competitors, use SEO Competitor Comparison.