Catalog / petitmarin.fr
65

SEO audit for petitmarin.fr

Programs

other

Health 65/100 (fair) · 20 pages crawled · generated 2026-07-12

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

Made with Softr, the easiest way to turn your data into internal tools and client portals. No coding required.

20
pages crawled
20
indexable pages
0
errors
96
warnings
129
notices
18
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Content 72 0 19 0
Headings 72 0 19 0
Performance 72 0 19 38
Rendering 72 0 19 0
Links 73 0 18 0
Crawlability 97 0 2 0
Cache 100 0 0 19
Duplicate 100 0 0 19
Security 100 0 0 19
Structured Data 100 0 0 19
Titles 100 0 0 15
Findings

Warnings (7 rules)

warning Incomplete/empty response after retries (likely transient — re-crawl)

Rule fetch.incomplete · Crawlability · 1 occurrence(s)

warning Orphan page (no internal inlinks)

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

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

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

warning Content only rendered by JavaScript (invisible to non-JS crawlers & AI)

Rule rendering.js_shell · Rendering · 19 occurrence(s)

  • https://www.petitmarin.fr/ — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/401 — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/404 — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/cr-ercompte — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/forgot-password — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/link-expired — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/login — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/module1 — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/module2 — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/module3 — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/module4 — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/module5 — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/module6 — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/page-de-connection — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/paiement1 — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/partenaires — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/programme — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/tableaudebordclient — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.
  • https://www.petitmarin.fr/temoignages — Raw HTML has 0 words and 0 links — this page is built by JavaScript in the browser. Googlebot renders JS but delays it, and most crawlers and AI assistants (ChatGPT, Perplexity, Claude) don't run JavaScript at all, so to them the page looks empty. Server-render or pre-render your main content and navigation.

warning Soft 404 (200 OK but content signals not found)

Rule status.soft_404 · Crawlability · 1 occurrence(s)

  • https://www.petitmarin.fr/404 — HTTP 200 but only 0 words and a not-found marker ("page not found") in the title/H1 — return a real 404/410 or add content

Notices (7 rules)

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

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

notice Duplicate meta description across pages

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

  • https://www.petitmarin.fr/ — meta description shared by 19 pages: https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3, https://www.petitmarin.fr/login
  • https://www.petitmarin.fr/401 — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/404 — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/cr-ercompte — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/forgot-password — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/link-expired — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/module3, https://www.petitmarin.fr/login
  • https://www.petitmarin.fr/login — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/module1 — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/module2 — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/module3 — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/login
  • https://www.petitmarin.fr/module4 — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/module5 — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/module6 — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/page-de-connection — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/paiement1 — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/partenaires — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/programme — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/tableaudebordclient — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3
  • https://www.petitmarin.fr/temoignages — meta description shared by 19 pages: https://www.petitmarin.fr/, https://www.petitmarin.fr/link-expired, https://www.petitmarin.fr/module3

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

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

  • https://www.petitmarin.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.petitmarin.fr/401 — 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.petitmarin.fr/404 — 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.petitmarin.fr/cr-ercompte — 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.petitmarin.fr/forgot-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://www.petitmarin.fr/link-expired — 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.petitmarin.fr/login — 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.petitmarin.fr/module1 — 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.petitmarin.fr/module2 — 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.petitmarin.fr/module3 — 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.petitmarin.fr/module4 — 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.petitmarin.fr/module5 — 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.petitmarin.fr/module6 — 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.petitmarin.fr/page-de-connection — 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.petitmarin.fr/paiement1 — 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.petitmarin.fr/partenaires — 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.petitmarin.fr/programme — 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.petitmarin.fr/tableaudebordclient — 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.petitmarin.fr/temoignages — 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 · 19 occurrence(s)

  • https://www.petitmarin.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.petitmarin.fr/401 — 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.petitmarin.fr/404 — 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.petitmarin.fr/cr-ercompte — 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.petitmarin.fr/forgot-password — 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.petitmarin.fr/link-expired — 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.petitmarin.fr/login — 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.petitmarin.fr/module1 — 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.petitmarin.fr/module2 — 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.petitmarin.fr/module3 — 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.petitmarin.fr/module4 — 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.petitmarin.fr/module5 — 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.petitmarin.fr/module6 — 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.petitmarin.fr/page-de-connection — 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.petitmarin.fr/paiement1 — 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.petitmarin.fr/partenaires — 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.petitmarin.fr/programme — 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.petitmarin.fr/tableaudebordclient — 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.petitmarin.fr/temoignages — 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.
Pages (showing 20 of 20)
URLStatusIndexableWordsIn-links
https://www.petitmarin.fr/
Programs
200 yes 0 0
https://www.petitmarin.fr/401
Permission denied
200 yes 0 0
https://www.petitmarin.fr/404
Page not found
200 yes 0 0
https://www.petitmarin.fr/cr-ercompte
cr-ercompte
200 yes 0 0
https://www.petitmarin.fr/forgot-password
Forgot password
200 yes 0 0
https://www.petitmarin.fr/link-expired
Link expired
200 yes 0 0
https://www.petitmarin.fr/login
Log in
200 yes 0 0
https://www.petitmarin.fr/module1
/module1
200 yes 0 0
https://www.petitmarin.fr/module2
/module2
200 yes 0 0
https://www.petitmarin.fr/module3
/module3
200 yes 0 0
https://www.petitmarin.fr/module4
/module4
200 yes 0 0
https://www.petitmarin.fr/module5
/module5
200 yes 0 0
https://www.petitmarin.fr/module6
/module6
200 yes 0 0
https://www.petitmarin.fr/page-de-connection
/page-de-connection
200 yes 0 0
https://www.petitmarin.fr/paiement1
paiement1
200 yes 0 0
https://www.petitmarin.fr/partenaires
/partenaires
200 yes 0 0
https://www.petitmarin.fr/programme
programme
200 yes 0 0
https://www.petitmarin.fr/reset-password 200 yes 3 0
https://www.petitmarin.fr/tableaudebordclient
tableaudebordclient
200 yes 0 0
https://www.petitmarin.fr/temoignages
/temoignages
200 yes 0 0

Audit your own site — free

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

Scan your site →