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.8Sample shop · homepage · mobile Chrome · the same check you get for your own site
What we found
Show 33 passed checks
Fix these first
From the example above. Check your own site to get the fixes that apply to it.
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").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>.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
Read the page
We fetch your page and read its title, description, headings, canonical, robots directives, hreflang, lang attribute and viewport tag.
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.
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.
Related free tools
All 59 tools →Free, funded by the people who use it
No account, no paid plan. Donations keep it running.