Catalog / fcf.cat
64

SEO audit for fcf.cat

FCF | Federació Catalana de Futbol

other

Health 64/100 (fair) · 50 pages crawled · generated 2026-08-26

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

Tota l'actualitat, competicions i serveis del futbol català en un sol lloc. La nova web de la Federació Catalana de Futbol.

Screenshot of fcf.cat
50
pages crawled
46
indexable pages
2
errors
106
warnings
574
notices
0
orphan pages
1
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Crawlability 98 1 0 1
Links 98 1 0 2
Duplicate 66 0 56 46
Canonical 72 0 46 0
Headings 98 0 3 0
Indexability 99 0 1 0
Agent Readiness 100 0 0 3
Cache 100 0 0 46
Content 100 0 0 92
Images 100 0 0 52
Performance 100 0 0 185
Robots 100 0 0 1
Security 100 0 0 47
Social 100 0 0 46
Structured Data 100 0 0 46
URL 100 0 0 7
Findings

Errors (2 rules)

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

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

error Client error (4xx) response

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

Warnings (6 rules)

warning Duplicate page content

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

warning Near-duplicate page content

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

warning Duplicate <title> across pages

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

warning Missing <h1>

Rule h1.missing · Headings · 3 occurrence(s)

warning Page is noindex

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

Notices (21 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)

  • https://www.fcf.cat/ — no llms.txt found at the site root — add one so AI agents get a curated site summary

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

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

notice Duplicate meta description across pages

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

  • https://www.fcf.cat/ca — meta description shared by 46 pages: https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance, https://www.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322936&grupId=54322937
  • https://www.fcf.cat/ca/amistosos — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/assamblea-general — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/serveis/compliance, https://www.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322936&grupId=54322937
  • https://www.fcf.cat/ca/campanyes — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/camps — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/circulars — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/clubs — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/competicio — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322936&grupId=54322937 — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/concursos — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/delictes-sexuals — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/edat — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/estatuts — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/futbol — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/futbol-platja — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/futbol-sala — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/galeria — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/jugadors-exteriors — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/models-documents — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/notes-informatives — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/pla-competicio — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/portal-transparencia — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/resolucions-comite-apellacio — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance
  • https://www.fcf.cat/ca/serveis/compliance — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322936&grupId=54322937
  • https://www.fcf.cat/ca/subvencions — meta description shared by 46 pages: https://www.fcf.cat/ca, https://www.fcf.cat/ca/assamblea-general, https://www.fcf.cat/ca/serveis/compliance

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

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

notice Likely hero image lacks fetchpriority=high

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

  • https://www.fcf.cat/ca — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/amistosos — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/assamblea-general — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/campanyes — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/camps — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/circulars — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/clubs — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/competicio — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322936&grupId=54322937 — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/concursos — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/delictes-sexuals — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/edat — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/estatuts — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/futbol — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/futbol-platja — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/futbol-sala — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/galeria — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/jugadors-exteriors — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/models-documents — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/notes-informatives — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/pla-competicio — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/portal-transparencia — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/resolucions-comite-apellacio — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/serveis/compliance — the likely hero/LCP image (fcf_vermell.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://www.fcf.cat/ca/subvencions — the likely hero/LCP image (fcf_vermell.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 · 46 occurrence(s)

notice Internal link has no anchor text / accessible name

Rule links.no_anchor_text · Links · 2 occurrence(s)

  • https://www.fcf.cat/ca/estatuts — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://www.fcf.cat/ca/models-documents — 2 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.

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

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

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

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

  • https://www.fcf.cat/ca — 12 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.fcf.cat/ca/amistosos — 1 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.fcf.cat/ca/assamblea-general — 1 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.fcf.cat/ca/campanyes — 1 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.fcf.cat/ca/camps — 1 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.fcf.cat/ca/circulars — 1 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.fcf.cat/ca/clubs — 1 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.fcf.cat/ca/competicio — 1 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.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322936&grupId=54322937 — 1 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.fcf.cat/ca/concursos — 1 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.fcf.cat/ca/delictes-sexuals — 1 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.fcf.cat/ca/edat — 1 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.fcf.cat/ca/estatuts — 1 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.fcf.cat/ca/futbol — 1 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.fcf.cat/ca/futbol-platja — 1 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.fcf.cat/ca/futbol-sala — 1 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.fcf.cat/ca/galeria — 1 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.fcf.cat/ca/jugadors-exteriors — 1 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.fcf.cat/ca/models-documents — 1 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.fcf.cat/ca/notes-informatives — 1 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.fcf.cat/ca/pla-competicio — 1 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.fcf.cat/ca/portal-transparencia — 1 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.fcf.cat/ca/resolucions-comite-apellacio — 1 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.fcf.cat/ca/serveis/compliance — 1 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.fcf.cat/ca/subvencions — 1 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 Large HTML document

Rule perf.large_html · Performance · 1 occurrence(s)

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

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

  • https://www.fcf.cat/ca — 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.fcf.cat/ca/amistosos — 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.fcf.cat/ca/assamblea-general — 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.fcf.cat/ca/campanyes — 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.fcf.cat/ca/camps — 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.fcf.cat/ca/circulars — 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.fcf.cat/ca/clubs — 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.fcf.cat/ca/competicio — 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.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322936&grupId=54322937 — 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.fcf.cat/ca/concursos — 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.fcf.cat/ca/delictes-sexuals — 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.fcf.cat/ca/edat — 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.fcf.cat/ca/estatuts — 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.fcf.cat/ca/futbol — 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.fcf.cat/ca/futbol-platja — 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.fcf.cat/ca/futbol-sala — 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.fcf.cat/ca/galeria — 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.fcf.cat/ca/jugadors-exteriors — 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.fcf.cat/ca/models-documents — 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.fcf.cat/ca/notes-informatives — 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.fcf.cat/ca/pla-competicio — 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.fcf.cat/ca/portal-transparencia — 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.fcf.cat/ca/resolucions-comite-apellacio — 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.fcf.cat/ca/serveis/compliance — 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.fcf.cat/ca/subvencions — 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 · 46 occurrence(s)

  • https://www.fcf.cat/ca — 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.fcf.cat/ca/amistosos — 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.fcf.cat/ca/assamblea-general — 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.fcf.cat/ca/campanyes — 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.fcf.cat/ca/camps — 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.fcf.cat/ca/circulars — 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.fcf.cat/ca/clubs — 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.fcf.cat/ca/competicio — 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.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322936&grupId=54322937 — 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.fcf.cat/ca/concursos — 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.fcf.cat/ca/delictes-sexuals — 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.fcf.cat/ca/edat — 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.fcf.cat/ca/estatuts — 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.fcf.cat/ca/futbol — 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.fcf.cat/ca/futbol-platja — 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.fcf.cat/ca/futbol-sala — 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.fcf.cat/ca/galeria — 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.fcf.cat/ca/jugadors-exteriors — 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.fcf.cat/ca/models-documents — 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.fcf.cat/ca/notes-informatives — 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.fcf.cat/ca/pla-competicio — 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.fcf.cat/ca/portal-transparencia — 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.fcf.cat/ca/resolucions-comite-apellacio — 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.fcf.cat/ca/serveis/compliance — 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.fcf.cat/ca/subvencions — 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 robots.txt missing (root returns 404/none)

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

  • https://www.fcf.cat/ — robots.txt did not return a 200 at the site root — a healthy site should serve one (declare your sitemap and confirm the host serves root files)

notice Missing recommended security headers

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

notice Underscores in URL path (prefer hyphens)

Rule url.underscores · URL · 2 occurrence(s)

Pages (showing 50 of 50)
URLStatusIndexableWordsIn-links
https://www.fcf.cat/ca
FCF | Federació Catalana de Futbol
200 yes 284 46
https://www.fcf.cat/ca/amistosos
FCF | Federació Catalana de Futbol
200 yes 227 46
https://www.fcf.cat/ca/arbitres
FCF | Federació Catalana de Futbol
200 yes 244 46
https://www.fcf.cat/ca/assamblea-general
FCF | Federació Catalana de Futbol
200 yes 225 46
https://www.fcf.cat/ca/campanyes
FCF | Federació Catalana de Futbol
200 yes 294 46
https://www.fcf.cat/ca/camps
FCF | Federació Catalana de Futbol
200 yes 228 46
https://www.fcf.cat/ca/circulars
FCF | Federació Catalana de Futbol
200 yes 213 46
https://www.fcf.cat/ca/clubs
FCF | Federació Catalana de Futbol
200 yes 227 46
https://www.fcf.cat/ca/comissio-etica
FCF | Federació Catalana de Futbol
200 yes 556 46
https://www.fcf.cat/ca/competicio
FCF | Federació Catalana de Futbol
200 yes 234 46
https://www.fcf.cat/ca/concursos
FCF | Federació Catalana de Futbol
200 yes 378 46
https://www.fcf.cat/ca/delictes-sexuals
FCF | Federació Catalana de Futbol
200 yes 719 46
https://www.fcf.cat/ca/edat
FCF | Federació Catalana de Futbol
200 yes 266 46
https://www.fcf.cat/ca/entrenadors
FCF | Federació Catalana de Futbol
200 yes 334 46
https://www.fcf.cat/ca/estatuts
FCF | Federació Catalana de Futbol
200 yes 226 46
https://www.fcf.cat/ca/futbol
FCF | Federació Catalana de Futbol
200 yes 242 46
https://www.fcf.cat/ca/futbol-platja
FCF | Federació Catalana de Futbol
200 yes 235 46
https://www.fcf.cat/ca/futbol-sala
FCF | Federació Catalana de Futbol
200 yes 246 46
https://www.fcf.cat/ca/galeria
FCF | Federació Catalana de Futbol
200 yes 236 46
https://www.fcf.cat/ca/jugadors-exteriors
FCF | Federació Catalana de Futbol
200 yes 693 46
https://www.fcf.cat/ca/mediacio
FCF | Federació Catalana de Futbol
200 yes 397 46
https://www.fcf.cat/ca/models-documents
FCF | Federació Catalana de Futbol
200 yes 277 46
https://www.fcf.cat/ca/notes-informatives
FCF | Federació Catalana de Futbol
200 yes 214 46
https://www.fcf.cat/ca/noticies
FCF | Federació Catalana de Futbol
200 yes 225 46
https://www.fcf.cat/ca/pla-competicio
FCF | Federació Catalana de Futbol
200 yes 233 46
https://www.fcf.cat/ca/portal-transparencia
FCF | Federació Catalana de Futbol
200 yes 232 46
https://www.fcf.cat/ca/resolucions-comite-apellacio
FCF | Federació Catalana de Futbol
200 yes 221 46
https://www.fcf.cat/ca/serveis/compliance
FCF | Federació Catalana de Futbol
200 yes 600 46
https://www.fcf.cat/ca/subvencions
FCF | Federació Catalana de Futbol
200 yes 867 46
https://www.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322932&grupId=54322933
FCF | Federació Catalana de Futbol
200 yes 234 1
https://www.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322932&grupId=54322934
FCF | Federació Catalana de Futbol
200 yes 234 1
https://www.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322936&grupId=54322937
FCF | Federació Catalana de Futbol
200 yes 234 1
https://www.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322938&grupId=54322939
FCF | Federació Catalana de Futbol
200 yes 234 1
https://www.fcf.cat/ca/competicio?temporadaId=21&disciplinaId=19308233&competicioId=54322950&grupId=54695794
FCF | Federació Catalana de Futbol
200 yes 234 1
https://www.fcf.cat/ca/femfutfem
FCF | Federació Catalana de Futbol
200 yes 656 1
https://www.fcf.cat/ca/gracies
FCF | Federació Catalana de Futbol
200 yes 460 1
https://www.fcf.cat/ca/joc-net
FCF | Federació Catalana de Futbol
200 yes 644 1
https://www.fcf.cat/ca/jojocnet
FCF | Federació Catalana de Futbol
200 yes 1099 1
https://www.fcf.cat/ca/kesport
FCF | Federació Catalana de Futbol
200 yes 1032 1
https://www.fcf.cat/ca/orgullosa
FCF | Federació Catalana de Futbol
200 yes 794 1
https://www.fcf.cat/ca/prou-violencia
FCF | Federació Catalana de Futbol
200 yes 614 1
https://www.fcf.cat/ca/respecte
FCF | Federació Catalana de Futbol
200 yes 709 1
https://www.fcf.cat/ca/tots-som
FCF | Federació Catalana de Futbol
200 yes 1042 1
https://www.fcf.cat/ca/tots-som-batec
FCF | Federació Catalana de Futbol
200 yes 701 1
https://www.fcf.cat/ca/zero-insults
FCF | Federació Catalana de Futbol
200 yes 670 1
https://www.fcf.cat/ca/zero-insults-xarxes
FCF | Federació Catalana de Futbol
200 yes 511 1
https://www.fcf.cat/docs/estatuts/estatuts.pdf 200 no 0 1
https://www.fcf.cat/docs/estatuts/reglament_cta.pdf 200 no 0 1
https://www.fcf.cat/docs/estatuts/reglament_general.pdf 200 no 0 1
https://www.fcf.cat/models
404: This page could not be found.
404 no 7 1

Audit your own site — free

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

Scan your site →