Catalog / normanails.fr
49

SEO audit for normanails.fr

NormaNails — Prothésiste ongulaire à Rouen · normanails.fr

other

Health 49/100 (poor) · 29 pages crawled · generated 2026-08-26

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

Pose d'ongles en gel, chablon et vernis semi-permanent à Rouen (76). Sur rendez-vous à domicile. Produits sans HEMA, garantie 14 jours.

Screenshot of normanails.fr
29
pages crawled
25
indexable pages
10
errors
56
warnings
316
notices
15
orphan pages
7
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Links 60 7 15 3
Crawlability 90 3 0 0
Duplicate 67 0 32 18
Content 95 0 5 51
Performance 98 0 2 80
Budget 99 0 1 0
Indexability 99 0 1 0
Agent Readiness 100 0 0 3
Cache 100 0 0 26
Images 100 0 0 32
Meta Description 100 0 0 1
Security 100 0 0 26
Social 100 0 0 50
Structured Data 100 0 0 25
Titles 100 0 0 1
Findings

Errors (2 rules)

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

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

error Client error (4xx) response

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

Warnings (7 rules)

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

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

  • https://www.normanails.fr/mentions-legales/ — this noindex page has 26 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://www.normanails.fr/, https://www.normanails.fr/a-propos, https://www.normanails.fr/avis.

warning Thin content (low word count)

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

warning Duplicate page content

Rule duplicate.content · Duplicate · 14 occurrence(s)

warning Duplicate <title> across pages

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

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

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

  • https://www.normanails.fr/galerie — the likely hero/LCP image (76f5a943-3a25-4460-9dac-74fefc6f08f0-512.png) 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://www.normanails.fr/galerie/ — the likely hero/LCP image (76f5a943-3a25-4460-9dac-74fefc6f08f0-512.png) 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 · 1 occurrence(s)

warning Orphan page (no internal inlinks)

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

Notices (20 rules)

notice Heading levels skip a level

Rule agent.heading_skip · Agent Readiness · 2 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 · 26 occurrence(s)

notice Title tag and meta description are identical

Rule content.title_meta_same · Meta Description · 1 occurrence(s)

notice Duplicate meta description across pages

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

notice Image alt text is keyword-stuffed (repetition / low variety)

Rule images.alt_stuffed · Images · 3 occurrence(s)

  • https://www.normanails.fr/ — 2 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://www.normanails.fr/galerie — 10 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.
  • https://www.normanails.fr/galerie/ — 10 image(s) have keyword-stuffed alt text — the same word repeated several times, or a long low-variety keyword list. Google's image guidance asks for short, descriptive alt text, not keyword lists; rewrite it to describe the image.

notice Image alt text is very long (possible keyword stuffing)

Rule images.alt_too_long · Images · 3 occurrence(s)

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

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

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

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

notice Legacy <meta name=keywords> tag present (Google ignores it)

Rule meta.keywords_present · Content · 26 occurrence(s)

notice Large DOM (over 1500 elements) slows rendering & interaction

Rule perf.dom_size_large · Performance · 2 occurrence(s)

  • https://www.normanails.fr/avis — the page has 1708 DOM elements (recommended maximum is around 1500) — a large DOM increases style-recalculation, layout and paint cost, hurting LCP and INP. Flatten deep nesting, paginate long lists/tables, and lazy-render off-screen elements.
  • https://www.normanails.fr/avis/ — the page has 1708 DOM elements (recommended maximum is around 1500) — a large DOM increases style-recalculation, layout and paint cost, hurting LCP and INP. Flatten deep nesting, paginate long lists/tables, and lazy-render off-screen elements.

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

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

  • https://www.normanails.fr/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/a-propos — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/a-propos/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/avis — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/avis/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/faq — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/faq/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/galerie — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/galerie/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/journal — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/journal/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/mentions-legales/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/depose — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/extension-gel — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/extension-gel/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/gel-naturel — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/gel-naturel/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/nail-art — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/remplissage — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/retrait-et-nouvelle-pose-vsp — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/soin-exfoliant-hydratant — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/soin-japonais — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
  • https://www.normanails.fr/prestations/vernis-gel — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.

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

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

  • https://www.normanails.fr/ — 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://www.normanails.fr/a-propos — 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://www.normanails.fr/a-propos/ — 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://www.normanails.fr/avis — 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://www.normanails.fr/avis/ — 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://www.normanails.fr/faq — 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://www.normanails.fr/faq/ — 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://www.normanails.fr/galerie — 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://www.normanails.fr/galerie/ — 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://www.normanails.fr/journal — 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://www.normanails.fr/journal/ — 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://www.normanails.fr/mentions-legales/ — 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://www.normanails.fr/prestations — 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://www.normanails.fr/prestations/ — 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://www.normanails.fr/prestations/depose — 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://www.normanails.fr/prestations/extension-gel — 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://www.normanails.fr/prestations/extension-gel/ — 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://www.normanails.fr/prestations/gel-naturel — 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://www.normanails.fr/prestations/gel-naturel/ — 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://www.normanails.fr/prestations/nail-art — 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://www.normanails.fr/prestations/remplissage — 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://www.normanails.fr/prestations/retrait-et-nouvelle-pose-vsp — 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://www.normanails.fr/prestations/soin-exfoliant-hydratant — 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://www.normanails.fr/prestations/soin-japonais — 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://www.normanails.fr/prestations/vernis-gel — 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 · 26 occurrence(s)

  • https://www.normanails.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://www.normanails.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://www.normanails.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://www.normanails.fr/avis — 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://www.normanails.fr/avis/ — 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://www.normanails.fr/faq — 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://www.normanails.fr/faq/ — 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://www.normanails.fr/galerie — 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://www.normanails.fr/galerie/ — 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://www.normanails.fr/journal — 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://www.normanails.fr/journal/ — 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://www.normanails.fr/mentions-legales/ — 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://www.normanails.fr/prestations — 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://www.normanails.fr/prestations/ — 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://www.normanails.fr/prestations/depose — 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://www.normanails.fr/prestations/extension-gel — 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://www.normanails.fr/prestations/extension-gel/ — 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://www.normanails.fr/prestations/gel-naturel — 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://www.normanails.fr/prestations/gel-naturel/ — 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://www.normanails.fr/prestations/nail-art — 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://www.normanails.fr/prestations/remplissage — 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://www.normanails.fr/prestations/retrait-et-nouvelle-pose-vsp — 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://www.normanails.fr/prestations/soin-exfoliant-hydratant — 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://www.normanails.fr/prestations/soin-japonais — 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://www.normanails.fr/prestations/vernis-gel — 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 Missing recommended security headers

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

notice Title tag is identical to the H1 (missed keyword variation)

Rule title.same_as_h1 · Titles · 1 occurrence(s)

Pages (showing 29 of 29)
URLStatusIndexableWordsIn-links
https://www.normanails.fr/
NormaNails — Prothésiste ongulaire à Rouen · normanails.fr
200 yes 878 26
https://www.normanails.fr/a-propos/
À propos | NormaNails
200 yes 181 26
https://www.normanails.fr/avis/
Avis clients | NormaNails Rouen
200 yes 1985 26
https://www.normanails.fr/faq/
Questions fréquentes | NormaNails
200 yes 211 26
https://www.normanails.fr/galerie/
Galerie | NormaNails Rouen
200 yes 205 26
https://www.normanails.fr/journal/
Le Journal | NormaNails
200 yes 198 26
https://www.normanails.fr/mentions-legales/
Mentions légales | NormaNails
200 no 558 26
https://www.normanails.fr/prestations/
Prestations & tarifs | NormaNails Rouen
200 yes 230 26
https://www.normanails.fr/prestations/extension-gel/
Pose d’extensions au gel à Boucherville | NormaNails
200 yes 603 1
https://www.normanails.fr/prestations/gel-naturel/
Pose de gel sur ongles naturels à Boucherville | NormaNails
200 yes 565 1
https://www.normanails.fr/prestations/vernis-gel/
Vernis gel longue tenue à Boucherville | NormaNails
200 yes 627 1
https://www.normanails.fr/a-propos
À propos | NormaNails
200 yes 181 0
https://www.normanails.fr/avis
Avis clients | NormaNails Rouen
200 yes 1985 0
https://www.normanails.fr/faq
Questions fréquentes | NormaNails
200 yes 211 0
https://www.normanails.fr/galerie
Galerie | NormaNails Rouen
200 yes 205 0
https://www.normanails.fr/journal
Le Journal | NormaNails
200 yes 198 0
https://www.normanails.fr/prestations
Prestations & tarifs | NormaNails Rouen
200 yes 230 0
https://www.normanails.fr/prestations/depose
Dépose d’ongles en gel ou résine à Boucherville | NormaNails
200 yes 423 0
https://www.normanails.fr/prestations/extension-gel
Pose d’extensions au gel à Boucherville | NormaNails
200 yes 603 0
https://www.normanails.fr/prestations/gel-naturel
Pose de gel sur ongles naturels à Boucherville | NormaNails
200 yes 565 0
https://www.normanails.fr/prestations/nail-art
Nail Art personnalisé à Boucherville | NormaNails
200 yes 509 0
https://www.normanails.fr/prestations/remplissage
Remplissage d’ongles en gel à Boucherville | NormaNails
200 yes 529 0
https://www.normanails.fr/prestations/retrait-et-nouvelle-pose-vsp
Retrait + Nouvelle application Vernis Semi-Permanent
200 yes 193 0
https://www.normanails.fr/prestations/soin-exfoliant-hydratant
Soin exfoliant et hydratant des mains à Boucherville | NormaNails
200 yes 421 0
https://www.normanails.fr/prestations/soin-japonais
Soin Japonais pour ongles naturels à Boucherville | NormaNails
200 yes 429 0
https://www.normanails.fr/prestations/vernis-gel
Vernis gel longue tenue à Boucherville | NormaNails
200 yes 627 0
https://www.normanails.fr/services/extension-gel/
Error
404 no 3 2
https://www.normanails.fr/services/gel-naturel/
Error
404 no 3 2
https://www.normanails.fr/services/nail-art/
Error
404 no 3 3

Audit your own site — free

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

Scan your site →