sfw/fix
Pillar · 42 errors

Technical SEO Errors

Technical SEO errors don’t break your site for visitors — they break it for Google. A stray noindex tag or a broken canonical can erase a page from search results entirely while it looks perfectly fine in a browser.

noindex in X-Robots-Tagnoindex detected in 'X-Robots-Tag' http header The server sends an HTTP header telling Google not to index the page, so it gets dropped from results. critical Indexed, though blocked by robots.txtIndexed, though blocked by robots.txt A robots. high Submitted URL marked 'noindex'Submitted URL Marked 'noindex' A URL in your sitemap tells Google not to index it, so you're submitting and blocking the same page at once. high Google chose different canonicalDuplicate, Google Chose Different Canonical Than User Google ignored your rel=canonical and picked a different URL as canonical, leaving your chosen page out of the index. high Blocked: forbidden (403)Blocked Due to Access Forbidden (403) Googlebot got a 403 at crawl time, so the page can't be indexed even though it loads fine for you. high Couldn't fetchSitemap Couldn't Fetch in Search Console Google failed to retrieve your sitemap file at all, so none of the URLs inside it get discovered through it. high Submitted URL blocked by robots.txtSubmitted URL blocked by robots.txt A URL listed in your sitemap is disallowed in robots. high Page indexed without contentPage indexed without content Googlebot indexed the URL but rendered no meaningful content, leaving a near-empty page in the index. high Non-Indexable CanonicalCanonical Points to a Non-Indexable URL Your rel=canonical targets a URL that is noindex, redirected, 4xx/5xx, or robots-blocked, so Google ignores it and may pick its own. high Faceted nav URL explosionFaceted Navigation Crawling Near-Infinite URLs Filter and sort parameters multiply into millions of crawlable URLs, burning crawl budget on duplicates while real pages crawl slowly. high Indexed without contentPage indexed without content (Google Search Console) The URL is indexed but Googlebot pulled no readable content, almost always a delivery or rendering problem. high Blocked 401Blocked due to unauthorized request (401) Googlebot hit a 401 and couldn't crawl the page because something demanded login credentials it can't provide. high Server error (5xx)Server error (5xx) blocking indexing (Google Search Console) Googlebot got a 5xx response and couldn't index the URL, and sustained 5xx will throttle your crawl rate. high AMP: Disallowed attributeAMP error: "Disallowed attribute or attribute value present in HTML tag" An AMP page contains a tag or attribute the AMP spec forbids, so it fails validation and loses AMP eligibility in Search. high viewport not setLighthouse: "Content is not sized correctly for the viewport" The page has no responsive viewport meta tag, so phones render it at desktop width and force horizontal scrolling. high noindex in robots.txt ignored"noindex" directive in robots.txt no longer supported Google has ignored Noindex lines in robots. high Multiple canonicalsMultiple / conflicting canonical URLs on one page One page declares two or more canonicals that disagree, so Google distrusts the signal and may pick its own URL. high Discovered - currently not indexedDiscovered - currently not indexed Google found the URL but hasn't crawled it yet, so the page can't rank until the crawler gets to it. medium Crawled - currently not indexedCrawled - currently not indexed Google fetched the page but decided not to index it, usually a signal it judged the content too thin or duplicative. medium Duplicate without user-selected canonicalDuplicate without user-selected canonical Several near-identical URLs exist with no rel=canonical declared, so Google chooses its own canonical and excludes the rest. medium offers/review/aggregateRating requiredEither 'offers', 'review', or 'aggregateRating' Should Be Specified Your Product markup has none of offers, review, or aggregateRating, so it can't earn a product rich result. medium Missing field 'aggregateRating'Missing Field "aggregateRating" in Structured Data Your markup promises an overall rating but never outputs the aggregateRating object, so star snippets won't show. medium hreflang: no return tagsHreflang Missing Return Tags (No Reciprocal Links) Your hreflang annotations point one way but the target pages don't point back, so search engines discard them. medium Links are not crawlableLinks Are Not Crawlable (Lighthouse SEO) Lighthouse flags navigation links with no real href, so crawlers can't follow them to find your other pages. medium Unparsable structured dataUnparsable Structured Data Google found structured data on the page but couldn't parse it because of a syntax error, so none of it counts. medium Blocked by page removal toolBlocked by page removal tool The page is hidden from results because someone filed a Removals request in Search Console. medium hreflang: Unknown language codeHreflang 'Unknown Language Code' Error An hreflang value uses an invalid code — a region with no language, a made-up code, or reversed order — so the annotation is dropped. medium Missing field 'image'Missing Field 'image' in Structured Data A required image property is absent from Product, Recipe, or Article schema, so the item loses rich-result eligibility. medium Invalid object type for fieldInvalid Object Type for Field (Structured Data) A schema property got the wrong value type — a string where an object or URL is expected — so Google can't parse it and drops the rich result. medium Discovered – not indexedDiscovered – currently not indexed (Google Search Console) Google knows the URL exists but hasn't crawled it yet, usually a crawl-budget or site-quality signal on large sites. medium Crawled – not indexedCrawled – currently not indexed (Google Search Console) Googlebot fetched the page but decided not to index it, a quality or relevance judgment rather than a technical block. medium Soft 404Soft 404 (page returns 200 but looks empty) Google judged a page as a "not found" experience even though the server returned HTTP 200, so it dropped the URL from the index. medium Invalid sitemap URLrobots.txt: "Invalid sitemap URL detected; syntax not understood" The Sitemap line in robots. medium Text too smallLighthouse: "Document doesn't use legible font sizes" Less than 60% of the page's text renders at 12px or larger on mobile, so Lighthouse fails the legible-font-size SEO audit. medium hreflang outside <head>hreflang link element placed outside the <head> hreflang <link> tags rendered into the <body> are ignored by Google, so language and regional targeting silently does nothing. medium Missing hasMerchantReturnPolicyMerchant listings: "Missing field 'hasMerchantReturnPolicy'" Product markup has no return-policy object, so Google can't show return terms and the merchant listing loses a rich-result feature. medium Missing shippingDetailsMerchant listings: "Missing field 'shippingDetails'" The Offer has no shipping object, so Google can't display shipping cost or delivery estimates in the merchant listing. medium Breadcrumbs: 'name' missingBreadcrumbs: "Either 'name' or 'item.name' should be specified (in 'itemListElement')" A BreadcrumbList item has no name, making the breadcrumb markup invalid and ineligible for the breadcrumb rich result. medium Alternate page w/ canonicalAlternate Page With Proper Canonical Tag Google found a duplicate that correctly points its canonical at the primary URL, so it indexes that one and skips this. low Page with redirectPage With Redirect (Excluded From Index) The URL redirects somewhere else, so Google drops it and indexes the destination instead of the redirecting URL. low rel=prev / rel=nextrel='prev' / rel='next' Pagination No Longer Supported Google stopped using rel=next/prev as an indexing signal years ago, so leaning on it to consolidate paginated series does nothing. low Video outside the viewportVideo Outside the Viewport (Video Indexing) Search Console can't index a video because it loads below the fold, lazy-loads, or sits hidden inside a tab on first render. low