Skip to content

SEO audit: find what stops Google from ranking your page

This SEO checker runs a full on-page and technical SEO audit in one go, from titles and headings to canonical, robots, sitemaps and links, each with a plain-language fix.

  • Free, no account
  • Results in under a minute
  • Every on-page SEO check in the report

Example result:example-shop.hr

WordPress 6.8

Sample shop · homepage · mobile Chrome · the same check you get for your own site

Run it on your site
SEO audit
33 passed · 1 failed · 8 warnings · 2 to note. Biggest issue: 15 images have no alt attribute.

What we found

1 failed8 warnings2 to note33 passed
Show 33 passed checks

Fix these first

From the example above. Check your own site to get the fixes that apply to it.

  1. Problem: 15 images have no alt attribute

    Alt text is how Google Images and screen readers understand a picture.

    How to fix it: Describe each meaningful image in a short alt attribute ("Blue running shoe, side view").
  2. Warning: Canonical tag is missing

    Without a canonical URL, search engines may index duplicate versions of this page (with and without trailing slash, with UTM parameters) and split its ranking signals.

    How to fix it: Add <link rel="canonical" href="http://example-shop.hr/"> in <head>.
  3. Warning: 4 of 22 checked links are broken

    A link to a 404 page is a dead end for visitors and a wasted crawl for search engines.

    How to fix it: Update or remove each link listed in the technical detail; redirect the missing pages if they still get visits.

What the SEO audit checks

The technical layer Google needs before content and links count, ordered by how many points each problem costs.

  • Page title

    Checks the page has a title, the headline Google shows in results and the text in the browser tab.

  • Title length

    Checks the title is 30 to 60 characters, so Google shows your wording instead of cutting or rewriting it.

  • Meta description

    Checks for the short summary shown under your result, so Google does not pick a random sentence instead.

  • Meta description length

    Checks the description is 70 to 160 characters, long enough to use the space and short enough not to be cut.

  • One H1 heading

    Checks for exactly one main heading, which tells search engines and screen readers what the page is about.

  • Heading order

    Checks headings go H1, H2, H3 without skipping levels, so the page outline is easy to follow.

  • Canonical tag

    Tells search engines which address is the real one, so duplicates don't split rankings.

  • Canonical target

    Checks the canonical points to a live URL on your own site, so ranking signals are not given away.

  • Noindex directive

    Checks whether the page tells Google to leave it out of search results, which loses all search visits.

  • robots.txt file

    Checks for the file that tells crawlers which parts of the site to skip and where your sitemap is.

  • robots.txt rules for this page

    Checks robots.txt lets search engines crawl this page, so they can read its content and updates.

  • Sitemap in robots.txt

    Checks robots.txt points to your XML sitemap, so crawlers find new pages sooner.

Show 76 more checks
  • One H1 heading

    Checks for exactly one main heading, which tells search engines and screen readers what the page is about.

  • Heading order

    Checks headings go H1, H2, H3 without skipping levels, so the page outline is easy to follow.

  • Canonical tag

    Tells search engines which address is the real one, so duplicates don't split rankings.

  • Canonical target

    Checks the canonical points to a live URL on your own site, so ranking signals are not given away.

  • Noindex directive

    Checks whether the page tells Google to leave it out of search results, which loses all search visits.

  • robots.txt file

    Checks for the file that tells crawlers which parts of the site to skip and where your sitemap is.

  • robots.txt rules for this page

    Checks robots.txt lets search engines crawl this page, so they can read its content and updates.

  • Sitemap in robots.txt

    Checks robots.txt points to your XML sitemap, so crawlers find new pages sooner.

  • XML sitemap

    Checks for a working sitemap, the list of pages you want indexed, so new and deep pages are found faster.

  • Sitemap format

    Checks the sitemap is well-formed with absolute URLs and valid dates, so Google can actually read it.

  • Sitemap URL status

    Checks a sample of sitemap URLs answer 200, since redirects and 404s there waste crawl time and trust.

  • Page listed in sitemap

    Checks this page is in the sitemap, so Google spots updates to it sooner.

  • hreflang tags

    Checks your language and country tags use valid codes, so searchers get the right version of the page.

  • hreflang return links

    Checks every language version links back to this one, otherwise Google ignores the pair.

  • hreflang alternates status

    Checks each language version answers 200 without a redirect, so the hreflang set is not dropped.

  • Page language

    Checks the page declares its language for search engines, translation tools and screen readers.

  • Viewport meta tag

    Checks phones display the page at their own width, which matters because Google ranks the mobile version.

  • Search indexability

    Checks the page returns 200, has no noindex and is allowed in robots.txt, so it can appear in search.

  • Redirect chains

    Checks how many redirects happen before the page loads, since each hop adds a round trip.

  • www and non-www versions

    Checks only one host serves the page, so search engines do not see two copies of every URL.

  • Trailing slash consistency

    Checks internal links use one URL style, since /shop/ and /shop count as two different pages.

  • URL length

    Checks the address stays under 100 characters, so it is not cut off in results and is easy to share.

  • Internal links

    Counts links to your other pages, since too few make a dead end and too many dilute each link.

  • Nofollow external links

    Shows how many outgoing links are nofollow, so trust goes to sources you vouch for and not to paid links.

  • Broken links

    Checks links on the page for 404s, which are dead ends for visitors and wasted crawls for search engines.

  • Links through redirects

    Finds links that pass through a redirect, which adds a round trip to every click.

  • WordPress search visibility

    Checks the WordPress "Discourage search engines" setting is off, since it hides the whole site from Google.

  • Default WordPress content

    Checks the sample post and page WordPress creates on install are gone, so the site does not look unfinished.

  • WordPress tagline

    Checks the tagline is not "Just another WordPress site", which shows in the title and search results.

  • WordPress permalinks

    Checks addresses use readable words instead of ?p=123, which look better in results and survive migrations.

  • Out-of-stock product pages

    Checks how out-of-stock products are handled, so searchers do not land on pages they cannot buy from.

  • WordPress attachment pages

    Checks image attachment pages stay out of search, since they are empty pages that dilute your site.

  • Duplicate SEO plugins

    Checks only one SEO plugin is active, so Google does not get duplicate or conflicting tags.

  • Images without alt text

    Finds images with no alt text, which Google Images and screen readers need to understand them.

  • Images marked decorative

    Lists images with empty alt text, which is fine for decoration but a lost chance for product photos.

  • File names as alt text

    Finds alt text like IMG_1234 or photo.jpg, which tells screen readers and Google Images nothing.

  • Alt text length

    Flags alt text over 125 characters; screen readers read it in one go and nobody needs a paragraph.

  • Repeated alt text

    Finds the same alt text on different images, usually a theme default or a copied product name.

  • Image links without a name

    Finds links whose only content is an image with alt="", so the link has no name at all.

  • Word count

    Counts the body text, since pages under 300 words give search engines little to rank.

  • Title and H1 match

    Checks whether the title and main heading are identical, which wastes a chance to cover a second phrasing.

  • Site favicon

    Checks for the small icon Google shows next to your listing and browsers show in tabs and bookmarks.

  • Apple touch icon

    Checks for the icon iPhones and iPads use when your site is added to the home screen or shared.

  • Favicon loads

    Fetches the declared icon, or /favicon.ico, and checks it answers with an image.

  • Google result icon

    Google shows a favicon next to your result only when it is square and at least 48 by 48 pixels, or an SVG.

  • Icon content type

    Catches icons that answer 200 with an HTML page or the wrong type, which browsers then ignore.

  • Touch icon size

    iPhones and iPads use a 180 by 180 pixel PNG when your site is added to the home screen.

  • Manifest icons

    Android and installed web apps take their icons from the manifest, at 192 and 512 pixels.

  • SVG icon

    One SVG icon stays sharp at every size and can follow dark mode.

  • favicon.ico fallback

    Older clients and some crawlers ask for /favicon.ico without reading the page.

  • Breadcrumb navigation

    Checks for breadcrumbs, which show visitors where they are and give Google a readable path for your listing.

  • Pagination links

    Checks for prev and next links that mark a page as part of a series, and that each page keeps its own URL.

  • AMP version

    Checks whether the page uses AMP, an old mobile format that no longer earns special placement.

  • AI crawler access

    Shows which AI assistants robots.txt blocks, so your content is in or out of AI answers by choice.

  • llms.txt file

    Checks for an optional plain-text index of your key pages, written for AI assistants to read first.

  • llms.txt format

    Checks llms.txt follows the llmstxt.org format, since tools that read it skip a file in the wrong shape.

  • AI opt-out directives

    Checks for tags that ask AI systems not to train on the page, so you know which choice the page signals.

  • Content that needs JavaScript

    Checks how much visible text appears only after scripts run, since it can be indexed late or not at all.

  • SEO tags changed by JavaScript

    Compares the title, description, canonical, robots and H1 in the HTML with what they become after scripts run.

  • Broken internal links

    Finds pages your own links point to that answer 404 or 410, with the page and link text that point there.

  • Pages with server errors

    Finds pages that answer 500 or another 5xx error, which visitors and Google see as a broken site.

  • Duplicate titles

    Groups pages that use the same title, so Google cannot tell them apart in search results.

  • Duplicate meta descriptions

    Groups pages that reuse the same meta description, the snippet Google may show under the title.

  • Missing meta descriptions

    Lists pages without a meta description, so Google picks the snippet under your title by itself.

  • Near-duplicate pages

    Finds pages whose text is almost the same, which split rankings between two addresses.

  • Orphan pages

    Finds pages your sitemap lists that no crawled page links to, so visitors cannot reach them.

  • Noindex pages in the sitemap

    Finds pages your sitemap asks Google to index while the page itself says noindex.

  • Deep pages

    Finds pages more than 4 clicks from the start page, which visitors and search engines reach last.

  • Thin pages

    Lists pages with under 300 words of body text, leaving menus, header and footer out of the count.

  • Redirect loops

    Finds redirects that lead back to where they started, so the page never loads for anyone.

  • Redirect chains

    Finds links that pass through 2 or more redirects before they reach a page.

  • Canonical chains

    Finds canonical tags that point at a page that redirects, fails or names yet another canonical.

  • hreflang return links across the site

    Checks every crawled page that names a language version is named back by it.

  • Pagination loops

    Follows rel="next" through paginated lists and finds series that come back to an earlier page.

  • Largest pages

    Lists pages whose HTML alone is over 500 KB, before images, scripts and styles.

  • Slowest pages

    Lists pages whose server took over 0.8 s to send the first byte during the crawl.

Show 68 more checks
  • XML sitemap

    Checks for a working sitemap, the list of pages you want indexed, so new and deep pages are found faster.

  • Sitemap format

    Checks the sitemap is well-formed with absolute URLs and valid dates, so Google can actually read it.

  • Sitemap URL status

    Checks a sample of sitemap URLs answer 200, since redirects and 404s there waste crawl time and trust.

  • Page listed in sitemap

    Checks this page is in the sitemap, so Google spots updates to it sooner.

  • hreflang tags

    Checks your language and country tags use valid codes, so searchers get the right version of the page.

  • hreflang return links

    Checks every language version links back to this one, otherwise Google ignores the pair.

  • hreflang alternates status

    Checks each language version answers 200 without a redirect, so the hreflang set is not dropped.

  • Page language

    Checks the page declares its language for search engines, translation tools and screen readers.

  • Viewport meta tag

    Checks phones display the page at their own width, which matters because Google ranks the mobile version.

  • Search indexability

    Checks the page returns 200, has no noindex and is allowed in robots.txt, so it can appear in search.

  • Redirect chains

    Checks how many redirects happen before the page loads, since each hop adds a round trip.

  • www and non-www versions

    Checks only one host serves the page, so search engines do not see two copies of every URL.

  • Trailing slash consistency

    Checks internal links use one URL style, since /shop/ and /shop count as two different pages.

  • URL length

    Checks the address stays under 100 characters, so it is not cut off in results and is easy to share.

  • Internal links

    Counts links to your other pages, since too few make a dead end and too many dilute each link.

  • Nofollow external links

    Shows how many outgoing links are nofollow, so trust goes to sources you vouch for and not to paid links.

  • Broken links

    Checks links on the page for 404s, which are dead ends for visitors and wasted crawls for search engines.

  • Links through redirects

    Finds links that pass through a redirect, which adds a round trip to every click.

  • WordPress search visibility

    Checks the WordPress "Discourage search engines" setting is off, since it hides the whole site from Google.

  • Default WordPress content

    Checks the sample post and page WordPress creates on install are gone, so the site does not look unfinished.

  • WordPress tagline

    Checks the tagline is not "Just another WordPress site", which shows in the title and search results.

  • WordPress permalinks

    Checks addresses use readable words instead of ?p=123, which look better in results and survive migrations.

  • Out-of-stock product pages

    Checks how out-of-stock products are handled, so searchers do not land on pages they cannot buy from.

  • WordPress attachment pages

    Checks image attachment pages stay out of search, since they are empty pages that dilute your site.

  • Duplicate SEO plugins

    Checks only one SEO plugin is active, so Google does not get duplicate or conflicting tags.

  • Images without alt text

    Finds images with no alt text, which Google Images and screen readers need to understand them.

  • Images marked decorative

    Lists images with empty alt text, which is fine for decoration but a lost chance for product photos.

  • File names as alt text

    Finds alt text like IMG_1234 or photo.jpg, which tells screen readers and Google Images nothing.

  • Alt text length

    Flags alt text over 125 characters; screen readers read it in one go and nobody needs a paragraph.

  • Repeated alt text

    Finds the same alt text on different images, usually a theme default or a copied product name.

  • Image links without a name

    Finds links whose only content is an image with alt="", so the link has no name at all.

  • Word count

    Counts the body text, since pages under 300 words give search engines little to rank.

  • Title and H1 match

    Checks whether the title and main heading are identical, which wastes a chance to cover a second phrasing.

  • Site favicon

    Checks for the small icon Google shows next to your listing and browsers show in tabs and bookmarks.

  • Apple touch icon

    Checks for the icon iPhones and iPads use when your site is added to the home screen or shared.

  • Favicon loads

    Fetches the declared icon, or /favicon.ico, and checks it answers with an image.

  • Google result icon

    Google shows a favicon next to your result only when it is square and at least 48 by 48 pixels, or an SVG.

  • Icon content type

    Catches icons that answer 200 with an HTML page or the wrong type, which browsers then ignore.

  • Touch icon size

    iPhones and iPads use a 180 by 180 pixel PNG when your site is added to the home screen.

  • Manifest icons

    Android and installed web apps take their icons from the manifest, at 192 and 512 pixels.

  • SVG icon

    One SVG icon stays sharp at every size and can follow dark mode.

  • favicon.ico fallback

    Older clients and some crawlers ask for /favicon.ico without reading the page.

  • Breadcrumb navigation

    Checks for breadcrumbs, which show visitors where they are and give Google a readable path for your listing.

  • Pagination links

    Checks for prev and next links that mark a page as part of a series, and that each page keeps its own URL.

  • AMP version

    Checks whether the page uses AMP, an old mobile format that no longer earns special placement.

  • AI crawler access

    Shows which AI assistants robots.txt blocks, so your content is in or out of AI answers by choice.

  • llms.txt file

    Checks for an optional plain-text index of your key pages, written for AI assistants to read first.

  • llms.txt format

    Checks llms.txt follows the llmstxt.org format, since tools that read it skip a file in the wrong shape.

  • AI opt-out directives

    Checks for tags that ask AI systems not to train on the page, so you know which choice the page signals.

  • Content that needs JavaScript

    Checks how much visible text appears only after scripts run, since it can be indexed late or not at all.

  • SEO tags changed by JavaScript

    Compares the title, description, canonical, robots and H1 in the HTML with what they become after scripts run.

  • Broken internal links

    Finds pages your own links point to that answer 404 or 410, with the page and link text that point there.

  • Pages with server errors

    Finds pages that answer 500 or another 5xx error, which visitors and Google see as a broken site.

  • Duplicate titles

    Groups pages that use the same title, so Google cannot tell them apart in search results.

  • Duplicate meta descriptions

    Groups pages that reuse the same meta description, the snippet Google may show under the title.

  • Missing meta descriptions

    Lists pages without a meta description, so Google picks the snippet under your title by itself.

  • Near-duplicate pages

    Finds pages whose text is almost the same, which split rankings between two addresses.

  • Orphan pages

    Finds pages your sitemap lists that no crawled page links to, so visitors cannot reach them.

  • Noindex pages in the sitemap

    Finds pages your sitemap asks Google to index while the page itself says noindex.

  • Deep pages

    Finds pages more than 4 clicks from the start page, which visitors and search engines reach last.

  • Thin pages

    Lists pages with under 300 words of body text, leaving menus, header and footer out of the count.

  • Redirect loops

    Finds redirects that lead back to where they started, so the page never loads for anyone.

  • Redirect chains

    Finds links that pass through 2 or more redirects before they reach a page.

  • Canonical chains

    Finds canonical tags that point at a page that redirects, fails or names yet another canonical.

  • hreflang return links across the site

    Checks every crawled page that names a language version is named back by it.

  • Pagination loops

    Follows rel="next" through paginated lists and finds series that come back to an earlier page.

  • Largest pages

    Lists pages whose HTML alone is over 500 KB, before images, scripts and styles.

  • Slowest pages

    Lists pages whose server took over 0.8 s to send the first byte during the crawl.

How the SEO checker works

  1. Read the page

    We fetch your page and read its title, description, headings, canonical, robots directives, hreflang, lang attribute and viewport tag.

  2. Check the site files

    The robots.txt and XML sitemap are fetched, redirects and www consistency are followed, and links are checked for broken ones.

  3. Rank the problems

    Every finding comes with a fix, ordered by how many points it costs, so you start with what hides the page from Google.

The audit checks one page per run and measures only your site, so it doesn't show rankings, keywords or backlinks.

SEO audit questions

What does this SEO checker test?

Every on-page and technical SEO check in the getReport report: title, meta description, headings, canonical, robots directives, hreflang, language and viewport tags, plus robots.txt, the XML sitemap, redirects, www consistency and broken links. Each finding has a plain-language fix and is ordered by how many points it costs, so you start with whatever hides the page from Google.

How do I check my website's SEO for free?

Enter your page above; the audit is free and needs no sign-up. Then open Google Search Console, also free, for the data only Google has: which pages are indexed, the searches you appear for and the clicks you get. Together they cover the technical checks and your real search performance, which is what most paid audits combine.

Why is my SEO score low?

Usually because of a few findings that cost many points, such as a noindex tag, a canonical pointing elsewhere, a robots.txt block or a missing title, rather than many small ones. The findings are ordered by points lost, so the top two or three often explain most of the gap. Fix those first, then run the check again.

Can I audit a competitor's page?

Yes. Any public page can be checked, and the site owner is not notified. Comparing your page with a competitor that ranks above you often shows concrete differences, such as a clearer title, structured data or faster loading. Content and links, which this audit does not measure, usually explain more of the ranking gap, so treat it as one part of the comparison.

Does the audit check my whole site?

No, one page per run, plus the site-wide files that page depends on: robots.txt, the XML sitemap and the http and www redirects. Problems in a template repeat on every page built from it, so check one page of each type, such as the home page, a category, a product and an article, to cover most of the site.

Does a free SEO checker replace a paid audit?

For the technical and on-page problems, mostly yes. This check finds what tools can measure, such as indexing blocks, titles, canonicals, links and speed, at no cost and with no sign-up. Paying an expert makes sense for strategy, content and link work that tools cannot judge. The seo-audit-cost guide lists what each kind of audit includes and costs.

Do you check rankings or backlinks?

No. Rankings and backlinks need paid data suppliers, and getReport measures only what it can see on your site. For rankings, Google Search Console is free and shows the queries and positions for your own site. This audit covers the technical and on-page layer that has to be right before rankings and links can count.

Is this SEO checker free?

Yes, with no sign-up. getReport is funded by donations, not plans, and the complete report with all seven modules is one click away, also free. It stays at its shareable link for 12 months, is not listed publicly and carries a noindex tag, and nothing about your visitors is collected.

All 59 tools →

Free, funded by the people who use it

No account, no paid plan. Donations keep it running.

Chip in