Catalog / vitor-online.fr
55

SEO audit for vitor-online.fr

Vitor — Miroirs LED sur mesure fabriqués en France

otherWordPress

Health 55/100 (fair) · 37 pages crawled · generated 2026-08-26

Download Markdown report (feed to ChatGPT / Claude / Cursor)

Miroirs LED nouvelle génération, conçus sur mesure et fabriqués en Haute-Savoie depuis 1969. Prix instantané sans devis, livraison sécurisée. Créez le vôtre.

Screenshot of vitor-online.fr
37
pages crawled
28
indexable pages
8
errors
112
warnings
306
notices
6
orphan pages
4
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Links 84 4 6 4
Crawlability 89 4 0 1
Performance 64 0 45 92
Duplicate 81 0 23 9
Headings 93 0 9 10
Indexability 93 0 9 0
Structured Data 95 0 6 29
Content 96 0 5 16
Sitemap 98 0 3 1
Budget 98 0 2 0
Canonical 98 0 2 0
Agent Readiness 99 0 1 29
Robots 99 0 1 0
Cache 100 0 0 5
Images 100 0 0 45
Meta Description 100 0 0 5
Security 100 0 0 37
Social 100 0 0 16
Titles 100 0 0 2
URL 100 0 0 5
Findings

Errors (2 rules)

error Broken internal link (target 4xx/5xx)

Rule links.broken_internal · Links · 4 occurrence(s)

error Client error (4xx) response

Rule status.4xx · Crawlability · 4 occurrence(s)

Warnings (15 rules)

warning Control has no accessible name

Rule agent.control_no_name · Agent Readiness · 1 occurrence(s)

warning Noindex page receives internal links (crawl-budget waste)

Rule budget.noindex_linked · Budget · 2 occurrence(s)

  • https://vitor-online.fr/mon-compte/lost-password/ — this noindex page has 2 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://vitor-online.fr/mon-compte/, https://vitor-online.fr/mon-compte/woo-wish-list/.
  • https://vitor-online.fr/mon-compte/woo-wish-list/ — this noindex page has 37 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://vitor-online.fr/, https://vitor-online.fr/paiement/, https://vitor-online.fr/mon-compte/.

warning Canonical target is noindex

Rule canonical.to_noindex · Canonical · 2 occurrence(s)

warning Lorem-ipsum placeholder text in a live page

Rule content.lorem_ipsum · Content · 5 occurrence(s)

warning Near-duplicate page content

Rule duplicate.near · Duplicate · 19 occurrence(s)

warning Duplicate <title> across pages

Rule duplicate.title · Duplicate · 4 occurrence(s)

warning Hero/LCP image is lazy-loaded (loading=lazy delays LCP)

Rule images.no_lazy_lcp_candidate · Performance · 12 occurrence(s)

  • https://vitor-online.fr/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/a-propos/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/blog/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/boutique/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/collections/cosmos/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/collections/miroir-led-forme-libre/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/collections/miroir-led-rectangulaire/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/collections/miroir-led-rond/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/collections/miroirs-led/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/collections/nova/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/collections/orbite/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://vitor-online.fr/contact/ — the likely hero/LCP image (logo.svg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.

warning Page is noindex

Rule index.noindex · Indexability · 9 occurrence(s)

warning Orphan page (no internal inlinks)

Rule links.orphan · Links · 6 occurrence(s)

warning Render-blocking script in <head> (no defer/async)

Rule perf.render_blocking · Performance · 33 occurrence(s)

warning robots.txt blocks CSS/JS the pages need to render

Rule robots.blocks_css_js · Robots · 1 occurrence(s)

  • https://vitor-online.fr/ — robots.txt Disallow blocks render-critical CSS/JS under: /wp-admin/js/ — Google's renderer can't fetch these, so the affected pages may render blank or thin. Allow the asset path(s) for Googlebot.

warning BreadcrumbList present but structurally incomplete

Rule schema.breadcrumb_incomplete · Structured Data · 1 occurrence(s)

  • https://vitor-online.fr/ — a BreadcrumbList is present but structurally incomplete — missing required itemListElement. Give itemListElement at least 2 ListItems, each with a sequential integer position and a name, and an item URL on every entry except the last.

warning Schema describes content not visible on the page

Rule schema.hidden_content · Structured Data · 5 occurrence(s)

  • https://vitor-online.fr/blog/ — a schema name/headline ("Blog — Conseils miroirs LED & salle de bain | Vitor") does not appear in the page's visible text — Google's policies prohibit marking up content not visible to readers. This is a heuristic (a static-HTML substring check): JS-rendered or abbreviated names can be false positives, so verify before removing.
  • https://vitor-online.fr/ct_size_guide/dresses-size-guide/ — a schema name/headline ("Dresses - Size Guide - Vitor") does not appear in the page's visible text — Google's policies prohibit marking up content not visible to readers. This is a heuristic (a static-HTML substring check): JS-rendered or abbreviated names can be false positives, so verify before removing.
  • https://vitor-online.fr/ct_size_guide/hats-size-guide/ — a schema name/headline ("Hats - Size Guide - Vitor") does not appear in the page's visible text — Google's policies prohibit marking up content not visible to readers. This is a heuristic (a static-HTML substring check): JS-rendered or abbreviated names can be false positives, so verify before removing.
  • https://vitor-online.fr/ct_size_guide/sweaters-size-guide/ — a schema name/headline ("Sweaters - Size Guide - Vitor") does not appear in the page's visible text — Google's policies prohibit marking up content not visible to readers. This is a heuristic (a static-HTML substring check): JS-rendered or abbreviated names can be false positives, so verify before removing.
  • https://vitor-online.fr/ct_size_guide/t-shirts-size-guide/ — a schema name/headline ("T-Shirts - Size Guide - Vitor") does not appear in the page's visible text — Google's policies prohibit marking up content not visible to readers. This is a heuristic (a static-HTML substring check): JS-rendered or abbreviated names can be false positives, so verify before removing.

warning Non-indexable URL listed in sitemap

Rule sitemap.non_indexable · Sitemap · 3 occurrence(s)

Notices (22 rules)

notice Heading levels skip a level

Rule agent.heading_skip · Agent Readiness · 28 occurrence(s)

notice No llms.txt for AI agents

Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)

notice Page served uncached (no-store/private or CDN bypass)

Rule cache.not_cacheable · Cache · 5 occurrence(s)

notice Duplicate meta description across pages

Rule duplicate.meta_desc · Duplicate · 9 occurrence(s)

notice Image filename is generic/auto-generated (missed image-search signal)

Rule images.generic_filename · Images · 33 occurrence(s)

  • https://vitor-online.fr/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/a-propos/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/blog/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/boutique/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/collections/miroir-led-forme-libre/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/contact/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/creer-mon-miroir/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/ct_size_guide/dresses-size-guide/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/ct_size_guide/hats-size-guide/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/ct_size_guide/sweaters-size-guide/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/ct_size_guide/t-shirts-size-guide/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/miroir-led-sur-mesure/cosmos/lumis/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/miroir-led-sur-mesure/cosmos/noctis/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/miroir-led-sur-mesure/miroirs-led/miroir-sur-mesure/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/miroir-led-sur-mesure/nova/cosmo/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/miroir-led-sur-mesure/nova/kepler/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/miroir-led-sur-mesure/nova/solaris/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/altaire/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/celeste/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/eclipse/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/novae/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/mon-compte/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/mon-compte/woo-wish-list/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/paiement/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://vitor-online.fr/panier/ — 1 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.

notice Likely hero image lacks fetchpriority=high

Rule images.hero_no_fetchpriority · Performance · 21 occurrence(s)

  • https://vitor-online.fr/creer-mon-miroir/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/ct_size_guide/dresses-size-guide/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/ct_size_guide/hats-size-guide/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/ct_size_guide/shoes-socks-size-guide/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/ct_size_guide/sweaters-size-guide/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/ct_size_guide/t-shirts-size-guide/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/miroir-led-sur-mesure/cosmos/lumis/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/miroir-led-sur-mesure/cosmos/noctis/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/miroir-led-sur-mesure/miroirs-led/miroir-sur-mesure/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/miroir-led-sur-mesure/nova/cosmo/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/miroir-led-sur-mesure/nova/kepler/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/miroir-led-sur-mesure/nova/solaris/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/altaire/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/celeste/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/eclipse/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/novae/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/mon-compte/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/mon-compte/lost-password/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/mon-compte/woo-wish-list/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/paiement/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://vitor-online.fr/panier/ — the likely hero/LCP image (logo.svg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.

notice Images without width/height (layout shift / CLS)

Rule images.missing_dimensions · Images · 12 occurrence(s)

notice Page has only one internal inlink (fragile crawl path)

Rule links.single_inlink · Links · 4 occurrence(s)

notice Legacy image format (jpg/png/gif) with no next-gen fallback

Rule perf.images_legacy_format · Performance · 33 occurrence(s)

notice No ETag header (no conditional GET for unchanged pages)

Rule perf.no_etag · Performance · 5 occurrence(s)

  • https://vitor-online.fr/mon-compte/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://vitor-online.fr/mon-compte/lost-password/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://vitor-online.fr/mon-compte/woo-wish-list/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://vitor-online.fr/paiement/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.
  • https://vitor-online.fr/panier/ — the response carries no ETag header — without an ETag (or Last-Modified) there is no cache-revalidation mechanism, so crawlers re-download the full body every visit. Emit an ETag (a content hash) to enable conditional If-None-Match requests.

notice No Last-Modified header (no conditional GET for unchanged pages)

Rule perf.no_last_modified · Performance · 33 occurrence(s)

  • https://vitor-online.fr/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/a-propos/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/blog/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/boutique/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/collections/miroir-led-forme-libre/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/contact/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/creer-mon-miroir/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/ct_size_guide/dresses-size-guide/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/ct_size_guide/hats-size-guide/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/ct_size_guide/sweaters-size-guide/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/ct_size_guide/t-shirts-size-guide/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/miroir-led-sur-mesure/cosmos/lumis/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/miroir-led-sur-mesure/cosmos/noctis/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/miroir-led-sur-mesure/miroirs-led/miroir-sur-mesure/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/miroir-led-sur-mesure/nova/cosmo/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/miroir-led-sur-mesure/nova/kepler/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/miroir-led-sur-mesure/nova/solaris/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/altaire/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/celeste/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/eclipse/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/miroir-led-sur-mesure/orbite/novae/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/mon-compte/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/mon-compte/woo-wish-list/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/paiement/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://vitor-online.fr/panier/ — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.

notice URL redirects to another URL

Rule redirect.single · Crawlability · 1 occurrence(s)

notice Deprecated schema type with no Google rich result

Rule schema.deprecated_type · Structured Data · 28 occurrence(s)

notice FAQPage structured data (rich result removed May 2026)

Rule schema.faq_deprecated · Structured Data · 1 occurrence(s)

  • https://vitor-online.fr/ — FAQPage structured data is present — Google removed FAQ rich results on 7 May 2026 (except for authoritative government/health sites). The markup is harmless but earns no SERP enhancement; remove it during template maintenance.

notice Missing recommended security headers

Rule security.missing_headers · Security · 37 occurrence(s)

notice Indexable page not listed in sitemap

Rule sitemap.orphan_not_listed · Sitemap · 1 occurrence(s)

notice Title is very short

Rule title.too_short · Titles · 2 occurrence(s)

Pages (showing 37 of 37)
URLStatusIndexableWordsIn-links
https://vitor-online.fr/
Vitor — Miroirs LED sur mesure fabriqués en France
200 yes 1485 37
https://vitor-online.fr/a-propos/
À propos de Vitor — Artisans du verre depuis 1969
200 yes 760 37
https://vitor-online.fr/blog/
Blog — Conseils miroirs LED & salle de bain | Vitor
200 yes 375 37
https://vitor-online.fr/boutique/
Boutique — Miroirs LED sur mesure | Vitor
200 yes 435 37
https://vitor-online.fr/collections/miroir-led-forme-libre/
Miroir LED forme originale sur mesure | Vitor
200 yes 423 37
https://vitor-online.fr/collections/miroir-led-rectangulaire/
Miroir LED rectangulaire sur mesure | Vitor
200 yes 407 37
https://vitor-online.fr/collections/miroir-led-rond/
Miroir LED rond sur mesure | Vitor
200 yes 421 37
https://vitor-online.fr/collections/miroirs-led/
Miroirs LED sur mesure | Vitor
200 yes 419 37
https://vitor-online.fr/contact/
Contact — Vitor, miroirs LED sur mesure
200 yes 385 37
https://vitor-online.fr/creer-mon-miroir/
Créer mon miroir LED sur mesure | Vitor
200 yes 360 37
https://vitor-online.fr/mon-compte/woo-wish-list/
Mon compte - Vitor
200 no 350 37
https://vitor-online.fr/miroir-led-sur-mesure/miroirs-led/miroir-sur-mesure/
Miroir LED sur mesure — dimensions au cm | Vitor
200 yes 541 11
https://vitor-online.fr/miroir-led-sur-mesure/orbite/altaire/
Miroir LED Altaire — forme libre sur mesure | Vitor
200 yes 1372 11
https://vitor-online.fr/miroir-led-sur-mesure/nova/kepler/
Miroir LED Kepler — rectangulaire sur mesure | Vitor
200 yes 1358 10
https://vitor-online.fr/miroir-led-sur-mesure/nova/solaris/
Miroir LED Solaris — rectangulaire sur mesure | Vitor
200 yes 1358 10
https://vitor-online.fr/miroir-led-sur-mesure/orbite/eclipse/
Miroir LED Eclipse — rond sur mesure | Vitor
200 yes 1351 10
https://vitor-online.fr/mon-compte/lost-password/
Mon compte - Vitor
200 no 363 2
https://vitor-online.fr/miroir-led-sur-mesure/cosmos/noctis/
Miroir LED Altaire — forme libre sur mesure | Vitor
200 yes 1382 2
https://vitor-online.fr/collections/cosmos/
Collection Cosmos — Miroirs LED | Vitor
200 yes 403 2
https://vitor-online.fr/miroir-led-sur-mesure/cosmos/lumis/
Miroir LED Eclipse — rond sur mesure | Vitor
200 yes 1360 2
https://vitor-online.fr/collections/orbite/
Collection Orbite — Miroirs LED | Vitor
200 yes 417 1
https://vitor-online.fr/miroir-led-sur-mesure/nova/cosmo/
Miroir LED Cosmo — rectangulaire sur mesure | Vitor
200 yes 1358 1
https://vitor-online.fr/miroir-led-sur-mesure/orbite/celeste/
Miroir LED Céleste — rond sur mesure | Vitor
200 yes 1358 1
https://vitor-online.fr/miroir-led-sur-mesure/orbite/novae/
Miroir LED Novae — forme libre sur mesure | Vitor
200 yes 1374 1
https://vitor-online.fr/collections/nova/
Collection Nova — Miroirs LED | Vitor
200 yes 403 0
https://vitor-online.fr/ct_size_guide/dresses-size-guide/
Dresses - Size Guide - Vitor
200 yes 443 0
https://vitor-online.fr/ct_size_guide/hats-size-guide/
Hats - Size Guide - Vitor
200 yes 422 0
https://vitor-online.fr/ct_size_guide/shoes-socks-size-guide/
Shoes & Socks - Size Guide - Vitor
200 yes 448 0
https://vitor-online.fr/ct_size_guide/sweaters-size-guide/
Sweaters - Size Guide - Vitor
200 yes 445 0
https://vitor-online.fr/ct_size_guide/t-shirts-size-guide/
T-Shirts - Size Guide - Vitor
200 yes 437 0
https://vitor-online.fr/mon-compte/
Mon compte - Vitor
200 no 350 0
https://vitor-online.fr/paiement/
Panier - Vitor
200 no 348 0
https://vitor-online.fr/panier/
Panier - Vitor
200 no 348 0
https://vitor-online.fr/collections
Page not found - Vitor
404 no 351 0
https://vitor-online.fr/collections/
Page not found - Vitor
404 no 351 1
https://vitor-online.fr/configurateur
Page not found - Vitor
404 no 351 1
https://vitor-online.fr/elementor/kiddy/shop/
Page not found - Vitor
404 no 351 2

Audit your own site — free

157 checks, internal PageRank, render-diff. No signup, results in ~30s.

Scan your site →