SEO audit for annuaireequestre.ca
Annuaire Équitation - Trouvez des services équestres
Health 68/100 (fair) · 50 pages crawled · generated 2026-08-26
Download Markdown report (feed to ChatGPT / Claude / Cursor)Annuaire complet des services équestres au Québec : écuries, cours, centres équestres, vétérinaires, et plus encore.
| Category | Score | Errors | Warnings | Notices |
|---|---|---|---|---|
| Headings | 82 | 0 | 30 | 0 |
| Hreflang | 87 | 0 | 21 | 0 |
| Performance | 90 | 0 | 16 | 100 |
| Content | 94 | 0 | 10 | 42 |
| Duplicate | 96 | 0 | 6 | 0 |
| Structured Data | 97 | 0 | 5 | 9 |
| Budget | 99 | 0 | 2 | 0 |
| Indexability | 99 | 0 | 2 | 0 |
| Agent Readiness | 100 | 0 | 0 | 10 |
| Canonical | 100 | 0 | 0 | 1 |
| Images | 100 | 0 | 0 | 1 |
| Meta Description | 100 | 0 | 0 | 9 |
| Security | 100 | 0 | 0 | 50 |
| Social | 100 | 0 | 0 | 82 |
| Titles | 100 | 0 | 0 | 6 |
Warnings (9 rules)
warning Noindex page receives internal links (crawl-budget waste)
Rule budget.noindex_linked · Budget · 2 occurrence(s)
- https://annuaireequestre.ca/en/contact/?category=ecuries — this noindex page has 1 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://annuaireequestre.ca/en/.
- https://annuaireequestre.ca/fr/contact/?category=ecuries — this noindex page has 2 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://annuaireequestre.ca/, https://annuaireequestre.ca/fr/.
warning Thin content (low word count)
Rule content.thin · Content · 10 occurrence(s)
- https://annuaireequestre.ca/en/interests/ — 130 words
- https://annuaireequestre.ca/en/nt/ — 72 words
- https://annuaireequestre.ca/en/nu/ — 64 words
- https://annuaireequestre.ca/en/qc/montreal/riding-lessons/ — 140 words
- https://annuaireequestre.ca/en/yt/ — 128 words
- https://annuaireequestre.ca/fr/interests/ — 148 words
- https://annuaireequestre.ca/fr/nt/ — 80 words
- https://annuaireequestre.ca/fr/nu/ — 70 words
- https://annuaireequestre.ca/fr/qc/montreal/riding-lessons/ — 152 words
- https://annuaireequestre.ca/fr/yt/ — 148 words
warning Near-duplicate page content
Rule duplicate.near · Duplicate · 5 occurrence(s)
- https://annuaireequestre.ca/en/ — near-duplicate of 1 page(s): https://annuaireequestre.ca/en/regions/
- https://annuaireequestre.ca/en/interests/adult-beginner-lessons/ — near-duplicate of 2 page(s): https://annuaireequestre.ca/en/qc/, https://annuaireequestre.ca/en/interests/riding-lessons/
- https://annuaireequestre.ca/en/interests/riding-lessons/ — near-duplicate of 2 page(s): https://annuaireequestre.ca/en/qc/, https://annuaireequestre.ca/en/interests/adult-beginner-lessons/
- https://annuaireequestre.ca/en/qc/ — near-duplicate of 2 page(s): https://annuaireequestre.ca/en/interests/riding-lessons/, https://annuaireequestre.ca/en/interests/adult-beginner-lessons/
- https://annuaireequestre.ca/en/regions/ — near-duplicate of 1 page(s): https://annuaireequestre.ca/en/
warning Homepage duplicated across protocol/host variants (no redirect)
Rule duplicate.protocol_host · Duplicate · 1 occurrence(s)
- https://annuaireequestre.ca/ — https://www.annuaireequestre.ca/ serves the same homepage content with a 200 and no redirect — Google sees a duplicate. Pick one canonical host/scheme and 301-redirect the others.
warning Missing <h1>
Rule h1.missing · Headings · 30 occurrence(s)
- https://annuaireequestre.ca/en/ab/
- https://annuaireequestre.ca/en/bc/
- https://annuaireequestre.ca/en/contact/?category=ecuries
- https://annuaireequestre.ca/en/mb/
- https://annuaireequestre.ca/en/nb/
- https://annuaireequestre.ca/en/nl/
- https://annuaireequestre.ca/en/ns/
- https://annuaireequestre.ca/en/on/
- https://annuaireequestre.ca/en/pe/
- https://annuaireequestre.ca/en/qc/
- https://annuaireequestre.ca/en/qc/montreal/riding-lessons/
- https://annuaireequestre.ca/en/sk/
- https://annuaireequestre.ca/fr/ab/
- https://annuaireequestre.ca/fr/bc/
- https://annuaireequestre.ca/fr/contact/?category=ecuries
- https://annuaireequestre.ca/fr/mb/
- https://annuaireequestre.ca/fr/nb/
- https://annuaireequestre.ca/fr/nl/
- https://annuaireequestre.ca/fr/ns/
- https://annuaireequestre.ca/fr/on/
- https://annuaireequestre.ca/fr/pe/
- https://annuaireequestre.ca/fr/qc/
- https://annuaireequestre.ca/fr/qc/montreal/riding-lessons/
- https://annuaireequestre.ca/fr/sk/
- https://annuaireequestre.ca/fr/yt/
warning Self hreflang language disagrees with html lang
Rule hreflang.mismatch_html_lang · Hreflang · 21 occurrence(s)
- https://annuaireequestre.ca/en/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/ab/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/about/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/bc/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/interests/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/interests/adult-beginner-lessons/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/interests/kids-riding-lessons/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/interests/riding-lessons/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/mb/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/nb/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/nl/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/ns/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/nt/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/nu/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/on/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/pe/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/qc/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/qc/montreal/riding-lessons/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/regions/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/sk/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
- https://annuaireequestre.ca/en/yt/ — the self-referencing hreflang is "en" but <html lang> is "fr" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
warning Hero/LCP image is lazy-loaded (loading=lazy delays LCP)
Rule images.no_lazy_lcp_candidate · Performance · 16 occurrence(s)
- https://annuaireequestre.ca/ — the likely hero/LCP image (montreal-card.webp) 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://annuaireequestre.ca/en/ — the likely hero/LCP image (montreal-card.webp) 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://annuaireequestre.ca/en/interests/adult-beginner-lessons/ — the likely hero/LCP image (les-ecuries-de-senneville-card.webp) 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://annuaireequestre.ca/en/interests/kids-riding-lessons/ — the likely hero/LCP image (centre-equestre-tezanos-card.webp) 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://annuaireequestre.ca/en/interests/riding-lessons/ — the likely hero/LCP image (les-ecuries-de-senneville-card.webp) 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://annuaireequestre.ca/en/qc/ — the likely hero/LCP image (les-ecuries-de-senneville-card.webp) 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://annuaireequestre.ca/en/qc/montreal/riding-lessons/ — the likely hero/LCP image (outlander-equestrian-card.webp) 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://annuaireequestre.ca/en/regions/ — the likely hero/LCP image (montreal-card.webp) 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://annuaireequestre.ca/fr/ — the likely hero/LCP image (montreal-card.webp) 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://annuaireequestre.ca/fr/interests/adult-beginner-lessons/ — the likely hero/LCP image (les-ecuries-de-senneville-card.webp) 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://annuaireequestre.ca/fr/interests/horse-boarding/ — the likely hero/LCP image (les-ecuries-mon-destin-card.webp) 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://annuaireequestre.ca/fr/interests/kids-riding-lessons/ — the likely hero/LCP image (centre-equestre-tezanos-card.webp) 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://annuaireequestre.ca/fr/interests/riding-lessons/ — the likely hero/LCP image (les-ecuries-de-senneville-card.webp) 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://annuaireequestre.ca/fr/qc/ — the likely hero/LCP image (les-ecuries-de-senneville-card.webp) 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://annuaireequestre.ca/fr/qc/montreal/riding-lessons/ — the likely hero/LCP image (outlander-equestrian-card.webp) 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://annuaireequestre.ca/fr/regions/ — the likely hero/LCP image (montreal-card.webp) 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 · 2 occurrence(s)
- https://annuaireequestre.ca/en/contact/?category=ecuries — meta/X-Robots: meta=noindex, follow
- https://annuaireequestre.ca/fr/contact/?category=ecuries — meta/X-Robots: meta=noindex, follow
warning Schema describes content not visible on the page
Rule schema.hidden_content · Structured Data · 5 occurrence(s)
- https://annuaireequestre.ca/en/bc/ — a schema name/headline ("Equestrian services in British Columbia") does not appear in the page's visible text — Google's policies prohibit marking up content not visible to readers. This is a heuristic (a static-HTML substring check): JS-rendered or abbreviated names can be false positives, so verify before removing.
- https://annuaireequestre.ca/en/nt/ — a schema name/headline ("Equestrian services in Northwest Territories") does not appear in the page's visible text — Google's policies prohibit marking up content not visible to readers. This is a heuristic (a static-HTML substring check): JS-rendered or abbreviated names can be false positives, so verify before removing.
- https://annuaireequestre.ca/fr/bc/ — a schema name/headline ("Services équestres au Colombie-Britannique") does not appear in the page's visible text — Google's policies prohibit marking up content not visible to readers. This is a heuristic (a static-HTML substring check): JS-rendered or abbreviated names can be false positives, so verify before removing.
- https://annuaireequestre.ca/fr/nt/ — a schema name/headline ("Services équestres au Territoires du Nord-Ouest") does not appear in the page's visible text — Google's policies prohibit marking up content not visible to readers. This is a heuristic (a static-HTML substring check): JS-rendered or abbreviated names can be false positives, so verify before removing.
- https://annuaireequestre.ca/fr/pe/ — a schema name/headline ("Services équestres au Île-du-Prince-Édouard") does not appear in the page's visible text — Google's policies prohibit marking up content not visible to readers. This is a heuristic (a static-HTML substring check): JS-rendered or abbreviated names can be false positives, so verify before removing.
Notices (16 rules)
notice Heading levels skip a level
Rule agent.heading_skip · Agent Readiness · 9 occurrence(s)
- https://annuaireequestre.ca/en/interests/ — h3 follows h1 — skips h2
- https://annuaireequestre.ca/en/interests/adult-beginner-lessons/ — h3 follows h1 — skips h2
- https://annuaireequestre.ca/en/interests/kids-riding-lessons/ — h3 follows h1 — skips h2
- https://annuaireequestre.ca/en/interests/riding-lessons/ — h3 follows h1 — skips h2
- https://annuaireequestre.ca/fr/interests/ — h3 follows h1 — skips h2
- https://annuaireequestre.ca/fr/interests/adult-beginner-lessons/ — h3 follows h1 — skips h2
- https://annuaireequestre.ca/fr/interests/horse-boarding/ — h3 follows h1 — skips h2
- https://annuaireequestre.ca/fr/interests/kids-riding-lessons/ — h3 follows h1 — skips h2
- https://annuaireequestre.ca/fr/interests/riding-lessons/ — h3 follows h1 — skips h2
notice No llms.txt for AI agents
Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)
- https://annuaireequestre.ca/ — no llms.txt found at the site root — add one so AI agents get a curated site summary
notice Canonical points to a different URL
Rule canonical.non_self · Canonical · 1 occurrence(s)
- https://annuaireequestre.ca/ — canonical=https://annuaireequestre.ca/fr/
notice Low text-to-HTML ratio
Rule content.low_ratio · Content · 42 occurrence(s)
- https://annuaireequestre.ca/ — 3.2%
- https://annuaireequestre.ca/en/ — 2.0%
- https://annuaireequestre.ca/en/ab/ — 0.8%
- https://annuaireequestre.ca/en/bc/ — 0.8%
- https://annuaireequestre.ca/en/interests/riding-lessons/ — 0.6%
- https://annuaireequestre.ca/en/mb/ — 1.4%
- https://annuaireequestre.ca/en/nb/ — 1.4%
- https://annuaireequestre.ca/en/ns/ — 1.2%
- https://annuaireequestre.ca/en/on/ — 0.7%
- https://annuaireequestre.ca/en/pe/ — 1.6%
- https://annuaireequestre.ca/en/qc/ — 0.5%
- https://annuaireequestre.ca/en/qc/montreal/riding-lessons/ — 1.4%
- https://annuaireequestre.ca/en/sk/ — 1.3%
- https://annuaireequestre.ca/fr/ — 2.3%
- https://annuaireequestre.ca/fr/ab/ — 1.0%
- https://annuaireequestre.ca/fr/bc/ — 0.9%
- https://annuaireequestre.ca/fr/interests/riding-lessons/ — 0.6%
- https://annuaireequestre.ca/fr/mb/ — 1.6%
- https://annuaireequestre.ca/fr/nb/ — 1.6%
- https://annuaireequestre.ca/fr/ns/ — 1.4%
- https://annuaireequestre.ca/fr/on/ — 0.8%
- https://annuaireequestre.ca/fr/pe/ — 1.8%
- https://annuaireequestre.ca/fr/qc/ — 0.5%
- https://annuaireequestre.ca/fr/qc/montreal/riding-lessons/ — 1.6%
- https://annuaireequestre.ca/fr/sk/ — 1.5%
notice Images without width/height (layout shift / CLS)
Rule images.missing_dimensions · Images · 1 occurrence(s)
- https://annuaireequestre.ca/ — 6 of 28 images without width/height
notice Meta description too long
Rule meta_desc.too_long · Meta Description · 6 occurrence(s)
- https://annuaireequestre.ca/en/about/ — 161 chars
- https://annuaireequestre.ca/fr/about/ — 180 chars
- https://annuaireequestre.ca/fr/bc/ — 162 chars
- https://annuaireequestre.ca/fr/nl/ — 165 chars
- https://annuaireequestre.ca/fr/nt/ — 167 chars
- https://annuaireequestre.ca/fr/pe/ — 163 chars
notice Meta description too short
Rule meta_desc.too_short · Meta Description · 3 occurrence(s)
- https://annuaireequestre.ca/en/privacy/ — 39 chars
- https://annuaireequestre.ca/en/terms/ — 37 chars
- https://annuaireequestre.ca/fr/terms/ — 49 chars
notice Missing Open Graph tags
Rule og.missing · Social · 46 occurrence(s)
- https://annuaireequestre.ca/ — og:image
- https://annuaireequestre.ca/en/ — og:image
- https://annuaireequestre.ca/en/ab/ — og:title, og:description, og:image
- https://annuaireequestre.ca/en/bc/ — og:title, og:description, og:image
- https://annuaireequestre.ca/en/interests/riding-lessons/ — og:image
- https://annuaireequestre.ca/en/mb/ — og:title, og:description, og:image
- https://annuaireequestre.ca/en/nb/ — og:title, og:description, og:image
- https://annuaireequestre.ca/en/nl/ — og:title, og:description, og:image
- https://annuaireequestre.ca/en/ns/ — og:title, og:description, og:image
- https://annuaireequestre.ca/en/on/ — og:title, og:description, og:image
- https://annuaireequestre.ca/en/pe/ — og:title, og:description, og:image
- https://annuaireequestre.ca/en/qc/ — og:title, og:description, og:image
- https://annuaireequestre.ca/en/sk/ — og:title, og:description, og:image
- https://annuaireequestre.ca/fr/ — og:image
- https://annuaireequestre.ca/fr/ab/ — og:title, og:description, og:image
- https://annuaireequestre.ca/fr/bc/ — og:title, og:description, og:image
- https://annuaireequestre.ca/fr/interests/riding-lessons/ — og:image
- https://annuaireequestre.ca/fr/mb/ — og:title, og:description, og:image
- https://annuaireequestre.ca/fr/nb/ — og:title, og:description, og:image
- https://annuaireequestre.ca/fr/nl/ — og:title, og:description, og:image
- https://annuaireequestre.ca/fr/ns/ — og:title, og:description, og:image
- https://annuaireequestre.ca/fr/on/ — og:title, og:description, og:image
- https://annuaireequestre.ca/fr/pe/ — og:title, og:description, og:image
- https://annuaireequestre.ca/fr/qc/ — og:title, og:description, og:image
- https://annuaireequestre.ca/fr/sk/ — og:title, og:description, og:image
notice Legacy image format (jpg/png/gif) with no next-gen fallback
Rule perf.images_legacy_format · Performance · 50 occurrence(s)
- https://annuaireequestre.ca/ — 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://annuaireequestre.ca/en/ — 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://annuaireequestre.ca/en/ab/ — 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://annuaireequestre.ca/en/bc/ — 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://annuaireequestre.ca/en/contact/?category=ecuries — 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://annuaireequestre.ca/en/interests/riding-lessons/ — 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://annuaireequestre.ca/en/mb/ — 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://annuaireequestre.ca/en/nb/ — 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://annuaireequestre.ca/en/ns/ — 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://annuaireequestre.ca/en/on/ — 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://annuaireequestre.ca/en/qc/ — 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://annuaireequestre.ca/en/qc/montreal/riding-lessons/ — 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://annuaireequestre.ca/en/sk/ — 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://annuaireequestre.ca/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://annuaireequestre.ca/fr/ab/ — 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://annuaireequestre.ca/fr/bc/ — 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://annuaireequestre.ca/fr/contact/?category=ecuries — 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://annuaireequestre.ca/fr/interests/riding-lessons/ — 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://annuaireequestre.ca/fr/mb/ — 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://annuaireequestre.ca/fr/nb/ — 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://annuaireequestre.ca/fr/ns/ — 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://annuaireequestre.ca/fr/on/ — 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://annuaireequestre.ca/fr/qc/ — 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://annuaireequestre.ca/fr/qc/montreal/riding-lessons/ — 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://annuaireequestre.ca/fr/sk/ — 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 Last-Modified header (no conditional GET for unchanged pages)
Rule perf.no_last_modified · Performance · 50 occurrence(s)
- https://annuaireequestre.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://annuaireequestre.ca/en/ — 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://annuaireequestre.ca/en/ab/ — 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://annuaireequestre.ca/en/bc/ — 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://annuaireequestre.ca/en/contact/?category=ecuries — 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://annuaireequestre.ca/en/interests/riding-lessons/ — 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://annuaireequestre.ca/en/mb/ — 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://annuaireequestre.ca/en/nb/ — 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://annuaireequestre.ca/en/ns/ — 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://annuaireequestre.ca/en/on/ — 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://annuaireequestre.ca/en/qc/ — 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://annuaireequestre.ca/en/qc/montreal/riding-lessons/ — 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://annuaireequestre.ca/en/sk/ — 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://annuaireequestre.ca/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://annuaireequestre.ca/fr/ab/ — 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://annuaireequestre.ca/fr/bc/ — 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://annuaireequestre.ca/fr/contact/?category=ecuries — 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://annuaireequestre.ca/fr/interests/riding-lessons/ — 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://annuaireequestre.ca/fr/mb/ — 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://annuaireequestre.ca/fr/nb/ — 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://annuaireequestre.ca/fr/ns/ — 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://annuaireequestre.ca/fr/on/ — 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://annuaireequestre.ca/fr/qc/ — 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://annuaireequestre.ca/fr/qc/montreal/riding-lessons/ — 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://annuaireequestre.ca/fr/sk/ — 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 Deprecated schema type with no Google rich result
Rule schema.deprecated_type · Structured Data · 2 occurrence(s)
- https://annuaireequestre.ca/en/ — deprecated rich-result type(s) present: Sitelinks Searchbox. The markup is valid schema.org but Google no longer generates a rich result for it — remove or repurpose the block.
- https://annuaireequestre.ca/fr/ — deprecated rich-result type(s) present: Sitelinks Searchbox. The markup is valid schema.org but Google no longer generates a rich result for it — remove or repurpose the block.
notice No structured data detected
Rule schema.none · Structured Data · 7 occurrence(s)
notice Missing recommended security headers
Rule security.missing_headers · Security · 50 occurrence(s)
- https://annuaireequestre.ca/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/en/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/en/ab/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/en/bc/ — X-Content-Type-Options, CSP
- https://annuaireequestre.ca/en/contact/?category=ecuries — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/en/interests/riding-lessons/ — X-Content-Type-Options, CSP
- https://annuaireequestre.ca/en/mb/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/en/nb/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/en/ns/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/en/on/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/en/qc/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/en/qc/montreal/riding-lessons/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/en/sk/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/ab/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/bc/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/contact/?category=ecuries — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/interests/riding-lessons/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/mb/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/nb/ — X-Content-Type-Options, CSP
- https://annuaireequestre.ca/fr/ns/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/on/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/qc/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/qc/montreal/riding-lessons/ — CSP, X-Content-Type-Options
- https://annuaireequestre.ca/fr/sk/ — CSP, X-Content-Type-Options
notice Title tag is identical to the H1 (missed keyword variation)
Rule title.same_as_h1 · Titles · 4 occurrence(s)
- https://annuaireequestre.ca/en/privacy/ — the <title> and the H1 are identical — differentiate them to cover more query variation
- https://annuaireequestre.ca/en/terms/ — the <title> and the H1 are identical — differentiate them to cover more query variation
- https://annuaireequestre.ca/fr/privacy/ — the <title> and the H1 are identical — differentiate them to cover more query variation
- https://annuaireequestre.ca/fr/terms/ — the <title> and the H1 are identical — differentiate them to cover more query variation
notice Title is very short
Rule title.too_short · Titles · 2 occurrence(s)
- https://annuaireequestre.ca/en/privacy/ — 14 chars
- https://annuaireequestre.ca/en/terms/ — 12 chars
notice Missing Twitter Card tag
Rule twitter.missing · Social · 36 occurrence(s)
- https://annuaireequestre.ca/en/ab/
- https://annuaireequestre.ca/en/bc/
- https://annuaireequestre.ca/en/mb/
- https://annuaireequestre.ca/en/nb/
- https://annuaireequestre.ca/en/nl/
- https://annuaireequestre.ca/en/ns/
- https://annuaireequestre.ca/en/nt/
- https://annuaireequestre.ca/en/on/
- https://annuaireequestre.ca/en/pe/
- https://annuaireequestre.ca/en/qc/
- https://annuaireequestre.ca/en/sk/
- https://annuaireequestre.ca/en/yt/
- https://annuaireequestre.ca/fr/ab/
- https://annuaireequestre.ca/fr/bc/
- https://annuaireequestre.ca/fr/mb/
- https://annuaireequestre.ca/fr/nb/
- https://annuaireequestre.ca/fr/nl/
- https://annuaireequestre.ca/fr/ns/
- https://annuaireequestre.ca/fr/nt/
- https://annuaireequestre.ca/fr/nu/
- https://annuaireequestre.ca/fr/on/
- https://annuaireequestre.ca/fr/pe/
- https://annuaireequestre.ca/fr/qc/
- https://annuaireequestre.ca/fr/sk/
- https://annuaireequestre.ca/fr/yt/
| URL | Status | Indexable | Words | In-links |
|---|---|---|---|---|
| https://annuaireequestre.ca/fr/ Annuaire Équitation - Trouvez des services équestres |
200 | yes | 885 | 26 |
| https://annuaireequestre.ca/fr/about/ À propos - Annuaire Équitation |
200 | yes | 340 | 26 |
| https://annuaireequestre.ca/fr/interests/ Intérêts - Annuaire Équitation |
200 | yes | 148 | 26 |
| https://annuaireequestre.ca/fr/privacy/ Politique de confidentialité |
200 | yes | 378 | 26 |
| https://annuaireequestre.ca/fr/regions/ Régions - Annuaire Équestre du Canada |
200 | yes | 485 | 26 |
| https://annuaireequestre.ca/fr/terms/ Conditions d'utilisation |
200 | yes | 507 | 26 |
| https://annuaireequestre.ca/en/ Equestrian Directory - Find equestrian services |
200 | yes | 746 | 24 |
| https://annuaireequestre.ca/en/about/ About Us - Equestrian Directory |
200 | yes | 308 | 24 |
| https://annuaireequestre.ca/en/interests/ Interests - Equestrian Directory |
200 | yes | 130 | 24 |
| https://annuaireequestre.ca/en/privacy/ Privacy Policy |
200 | yes | 328 | 24 |
| https://annuaireequestre.ca/en/regions/ Regions - Canadian Equestrian Directory |
200 | yes | 383 | 24 |
| https://annuaireequestre.ca/en/terms/ Terms of Use |
200 | yes | 479 | 24 |
| https://annuaireequestre.ca/fr/qc/ Annuaire Équestre Québec - Tous les services équestres |
200 | yes | 363 | 14 |
| https://annuaireequestre.ca/en/qc/ Quebec Equestrian Directory - All equestrian services |
200 | yes | 337 | 12 |
| https://annuaireequestre.ca/en/interests/adult-beginner-lessons/ Equestrian services - Adult beginner lessons - Equestrian Directory |
200 | yes | 371 | 3 |
| https://annuaireequestre.ca/en/interests/kids-riding-lessons/ Equestrian services - Kids riding lessons - Equestrian Directory |
200 | yes | 419 | 3 |
| https://annuaireequestre.ca/en/interests/riding-lessons/ Equestrian services - Riding lessons - Equestrian Directory |
200 | yes | 376 | 3 |
| https://annuaireequestre.ca/fr/interests/adult-beginner-lessons/ Services équestres - Cours débutant pour adultes - Annuaire Équitation |
200 | yes | 403 | 4 |
| https://annuaireequestre.ca/fr/interests/horse-boarding/ Services équestres - Pension pour chevaux - Annuaire Équitation |
200 | yes | 453 | 4 |
| https://annuaireequestre.ca/fr/interests/kids-riding-lessons/ Services équestres - Cours d'équitation pour enfants - Annuaire Équitation |
200 | yes | 448 | 4 |
| https://annuaireequestre.ca/fr/interests/riding-lessons/ Services équestres - Cours d'équitation - Annuaire Équitation |
200 | yes | 408 | 4 |
| https://annuaireequestre.ca/fr/contact/?category=ecuries Contactez-nous - Annuaire Équitation |
200 | no | 71 | 2 |
| https://annuaireequestre.ca/en/contact/?category=ecuries Contact Us - Equestrian Directory |
200 | no | 65 | 1 |
| https://annuaireequestre.ca/fr/ab/ Annuaire Équestre Alberta - Tous les services équestres |
200 | yes | 293 | 2 |
| https://annuaireequestre.ca/fr/bc/ Annuaire Équestre Colombie-Britannique - Tous les services équestres |
200 | yes | 301 | 2 |
| https://annuaireequestre.ca/fr/mb/ Annuaire Équestre Manitoba - Tous les services équestres |
200 | yes | 275 | 2 |
| https://annuaireequestre.ca/fr/nb/ Annuaire Équestre Nouveau-Brunswick - Tous les services équestres |
200 | yes | 279 | 2 |
| https://annuaireequestre.ca/fr/nl/ Annuaire Équestre Terre-Neuve-et-Labrador - Tous les services équestres |
200 | yes | 244 | 2 |
| https://annuaireequestre.ca/fr/ns/ Annuaire Équestre Nouvelle-Écosse - Tous les services équestres |
200 | yes | 285 | 2 |
| https://annuaireequestre.ca/fr/nt/ Annuaire Équestre Territoires du Nord-Ouest - Tous les services équestres |
200 | yes | 80 | 2 |
| https://annuaireequestre.ca/fr/nu/ Annuaire Équestre Nunavut - Tous les services équestres |
200 | yes | 70 | 2 |
| https://annuaireequestre.ca/fr/on/ Annuaire Équestre Ontario - Tous les services équestres |
200 | yes | 286 | 2 |
| https://annuaireequestre.ca/fr/pe/ Annuaire Équestre Île-du-Prince-Édouard - Tous les services équestres |
200 | yes | 229 | 2 |
| https://annuaireequestre.ca/fr/sk/ Annuaire Équestre Saskatchewan - Tous les services équestres |
200 | yes | 307 | 2 |
| https://annuaireequestre.ca/fr/yt/ Annuaire Équestre Yukon - Tous les services équestres |
200 | yes | 148 | 2 |
| https://annuaireequestre.ca/en/ab/ Alberta Equestrian Directory - All equestrian services |
200 | yes | 258 | 2 |
| https://annuaireequestre.ca/en/bc/ British Columbia Equestrian Directory - All equestrian services |
200 | yes | 247 | 2 |
| https://annuaireequestre.ca/en/mb/ Manitoba Equestrian Directory - All equestrian services |
200 | yes | 229 | 2 |
| https://annuaireequestre.ca/en/nb/ New Brunswick Equestrian Directory - All equestrian services |
200 | yes | 235 | 2 |
| https://annuaireequestre.ca/en/nl/ Newfoundland and Labrador Equestrian Directory - All equestrian services |
200 | yes | 219 | 2 |
| https://annuaireequestre.ca/en/ns/ Nova Scotia Equestrian Directory - All equestrian services |
200 | yes | 255 | 2 |
| https://annuaireequestre.ca/en/nt/ Northwest Territories Equestrian Directory - All equestrian services |
200 | yes | 72 | 2 |
| https://annuaireequestre.ca/en/nu/ Nunavut Equestrian Directory - All equestrian services |
200 | yes | 64 | 2 |
| https://annuaireequestre.ca/en/on/ Ontario Equestrian Directory - All equestrian services |
200 | yes | 240 | 2 |
| https://annuaireequestre.ca/en/pe/ Prince Edward Island Equestrian Directory - All equestrian services |
200 | yes | 202 | 2 |
| https://annuaireequestre.ca/en/sk/ Saskatchewan Equestrian Directory - All equestrian services |
200 | yes | 249 | 2 |
| https://annuaireequestre.ca/en/yt/ Yukon Equestrian Directory - All equestrian services |
200 | yes | 128 | 2 |
| https://annuaireequestre.ca/en/qc/montreal/riding-lessons/ Riding lessons in Montreal - Quebec Equestrian Directory |
200 | yes | 140 | 1 |
| https://annuaireequestre.ca/fr/qc/montreal/riding-lessons/ Cours d'équitation en Montréal - Annuaire Équestre Québec |
200 | yes | 152 | 1 |
| https://annuaireequestre.ca/ Annuaire Équitation - Trouvez des services équestres |
200 | yes | 685 | 1 |
Audit your own site — free
157 checks, internal PageRank, render-diff. No signup, results in ~30s.