Catalog / grandlidoresorts.com
37

SEO audit for grandlidoresorts.com

Grand Lido Resorts | Au-Naturel, Adults Only All-Inclusive Resort

other

Health 37/100 (poor) · 50 pages crawled · generated 2026-08-26

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

Private and protected, Grand Lido Negril Au-Naturel, An Autograph Collection All-Inclusive Resort - Adults Only is an oceanfront boutique hotel.

Screenshot of grandlidoresorts.com
50
pages crawled
38
indexable pages
28
errors
165
warnings
602
notices
0
orphan pages
19
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Links 35 19 45 142
Crawlability 89 5 1 1
Sitemap 92 4 0 7
Performance 74 0 44 176
Hreflang 87 0 21 0
Meta Description 93 0 12 6
Indexability 93 0 11 0
Headings 95 0 8 0
Budget 96 0 6 0
Duplicate 96 0 6 23
Agent Readiness 97 0 5 0
Content 97 0 5 36
Canonical 99 0 1 0
Cache 100 0 0 44
Images 100 0 0 44
Security 100 0 0 94
Social 100 0 0 14
Structured Data 100 0 0 15
Findings

Errors (3 rules)

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

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

error Non-200 URL listed in sitemap

Rule sitemap.not_200 · Sitemap · 4 occurrence(s)

Warnings (15 rules)

warning Control has no accessible name

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

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

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

  • https://www.grandlidoresorts.com/dining-drinks — this noindex page has 27 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://www.grandlidoresorts.com/, https://www.grandlidoresorts.com/awards, https://www.grandlidoresorts.com/contact.
  • https://www.grandlidoresorts.com/es/dining-drinks — this noindex page has 17 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://www.grandlidoresorts.com/es, https://www.grandlidoresorts.com/es/awards, https://www.grandlidoresorts.com/es/resort/features.
  • https://www.grandlidoresorts.com/es/resort — this noindex page has 17 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://www.grandlidoresorts.com/es, https://www.grandlidoresorts.com/es/awards, https://www.grandlidoresorts.com/es/resort/features.
  • https://www.grandlidoresorts.com/resort — this noindex page has 27 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://www.grandlidoresorts.com/, https://www.grandlidoresorts.com/awards, https://www.grandlidoresorts.com/contact.
  • https://www.grandlidoresorts.com/special-occasions — this noindex page has 27 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://www.grandlidoresorts.com/, https://www.grandlidoresorts.com/awards, https://www.grandlidoresorts.com/contact.
  • https://www.grandlidoresorts.com/specials — this noindex page has 27 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://www.grandlidoresorts.com/, https://www.grandlidoresorts.com/awards, https://www.grandlidoresorts.com/contact.

warning Missing canonical tag

Rule canonical.missing · Canonical · 1 occurrence(s)

warning Lorem-ipsum placeholder text in a live page

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

warning Thin content (low word count)

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

warning Duplicate page content

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

warning Duplicate <title> across pages

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

warning Self hreflang language disagrees with html lang

Rule hreflang.mismatch_html_lang · Hreflang · 17 occurrence(s)

  • https://www.grandlidoresorts.com/es — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/awards — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/contact — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/dining-drinks — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/dining-drinks/bars — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/gallery — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/lido-luxury-extras — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/resort — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/resort/features — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/restaurants — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/reviews — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/suites — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/tours-transfers — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/travel-assistance — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/travel-professionals — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/virtual-tour — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.
  • https://www.grandlidoresorts.com/es/wellness — the self-referencing hreflang is "es" but <html lang> is "en" — contradictory language signals can make Google distrust the hreflang cluster. Align both to the same BCP-47 language.

warning hreflang has no return link (not reciprocal)

Rule hreflang.no_return · Hreflang · 4 occurrence(s)

warning noindex + nofollow (blocks link equity flow)

Rule index.noindex_nofollow · Indexability · 11 occurrence(s)

warning Internal link points to a redirect

Rule links.redirect_target · Links · 45 occurrence(s)

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

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

warning Redirect chain (multiple hops)

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

Notices (19 rules)

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

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

notice Main text is hard to read (low Flesch Reading Ease)

Rule content.readability_poor · Content · 36 occurrence(s)

  • https://www.grandlidoresorts.com/ — this page reads as difficult (Flesch Reading Ease 39, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/awards — this page reads as difficult (Flesch Reading Ease 35, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/es — this page reads as very difficult (Flesch Reading Ease 18, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/es/awards — this page reads as very difficult (Flesch Reading Ease 14, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/es/contact — this page reads as very difficult (Flesch Reading Ease 23, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/es/gallery — this page reads as very difficult (Flesch Reading Ease 16, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/es/resort/features — this page reads as very difficult (Flesch Reading Ease 12, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/gallery — this page reads as difficult (Flesch Reading Ease 31, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/grand-lido-farewell-offer — this page reads as difficult (Flesch Reading Ease 42, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/homepage-nmlp — this page reads as difficult (Flesch Reading Ease 45, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/jamaica-adults-only-all-inclusive-resort-deals — this page reads as difficult (Flesch Reading Ease 41, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/lido-luxury-extras — this page reads as very difficult (Flesch Reading Ease 22, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/resort/features — this page reads as difficult (Flesch Reading Ease 42, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/resorts/grand-lido-resorts/awards — this page reads as difficult (Flesch Reading Ease 35, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/restaurants — this page reads as difficult (Flesch Reading Ease 43, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/reviews — this page reads as difficult (Flesch Reading Ease 44, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/sitemap — this page reads as difficult (Flesch Reading Ease 33, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/special-occasions/groups — this page reads as difficult (Flesch Reading Ease 31, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/suites — this page reads as difficult (Flesch Reading Ease 34, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/suites-and-villas — this page reads as difficult (Flesch Reading Ease 36, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/tours-transfers — this page reads as difficult (Flesch Reading Ease 49, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/travel-assistance — this page reads as difficult (Flesch Reading Ease 42, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/travel-professionals — this page reads as difficult (Flesch Reading Ease 38, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/virtual-tour — this page reads as difficult (Flesch Reading Ease 42, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://www.grandlidoresorts.com/wellness — this page reads as difficult (Flesch Reading Ease 37, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.

notice Duplicate meta description across pages

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

notice Likely hero image lacks fetchpriority=high

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

  • https://www.grandlidoresorts.com/ — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/awards — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/contact — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/dining-drinks — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/dining-drinks/bars — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/es — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/es/awards — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/gallery — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/grand-lido-farewell-offer — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/homepage-nmlp — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/jamaica-adults-only-all-inclusive-resort-deals — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/lido-luxury-extras — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/resort — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/resort/features — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/restaurants — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/reviews — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/special-occasions — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/special-occasions/groups — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/suites — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/suites-and-villas — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/tours-transfers — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/travel-assistance — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/travel-professionals — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/virtual-tour — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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.grandlidoresorts.com/wellness — the likely hero/LCP image (akmbjgn_ko_horizontal-6267fd46d6084.png) 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 · 44 occurrence(s)

notice Internal link points to a noindex page

Rule links.to_noindex · Links · 142 occurrence(s)

notice Meta description too short

Rule meta_desc.too_short · Meta Description · 1 occurrence(s)

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

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

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

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

  • https://www.grandlidoresorts.com/ — 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.grandlidoresorts.com/awards — 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.grandlidoresorts.com/contact — 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.grandlidoresorts.com/dining-drinks — 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.grandlidoresorts.com/dining-drinks/bars — 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.grandlidoresorts.com/es — 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.grandlidoresorts.com/es/awards — 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.grandlidoresorts.com/gallery — 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.grandlidoresorts.com/grand-lido-farewell-offer — 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.grandlidoresorts.com/homepage-nmlp — 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.grandlidoresorts.com/jamaica-adults-only-all-inclusive-resort-deals — 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.grandlidoresorts.com/lido-luxury-extras — 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.grandlidoresorts.com/resort — 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.grandlidoresorts.com/resort/features — 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.grandlidoresorts.com/restaurants — 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.grandlidoresorts.com/reviews — 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.grandlidoresorts.com/special-occasions — 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.grandlidoresorts.com/special-occasions/groups — 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.grandlidoresorts.com/suites — 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.grandlidoresorts.com/suites-and-villas — 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.grandlidoresorts.com/tours-transfers — 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.grandlidoresorts.com/travel-assistance — 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.grandlidoresorts.com/travel-professionals — 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.grandlidoresorts.com/virtual-tour — 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.grandlidoresorts.com/wellness — 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 · 44 occurrence(s)

  • https://www.grandlidoresorts.com/ — 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.grandlidoresorts.com/awards — 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.grandlidoresorts.com/contact — the response carries no Last-Modified header — Googlebot can't send an If-Modified-Since request, so it re-downloads the full page body on every crawl even when nothing changed. Emit Last-Modified (or an ETag) on stable pages to enable 304 Not Modified responses.
  • https://www.grandlidoresorts.com/dining-drinks — 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.grandlidoresorts.com/dining-drinks/bars — 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.grandlidoresorts.com/es — 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.grandlidoresorts.com/es/awards — 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.grandlidoresorts.com/gallery — 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.grandlidoresorts.com/grand-lido-farewell-offer — 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.grandlidoresorts.com/homepage-nmlp — 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.grandlidoresorts.com/jamaica-adults-only-all-inclusive-resort-deals — 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.grandlidoresorts.com/lido-luxury-extras — 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.grandlidoresorts.com/resort — 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.grandlidoresorts.com/resort/features — 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.grandlidoresorts.com/restaurants — 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.grandlidoresorts.com/reviews — 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.grandlidoresorts.com/special-occasions — 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.grandlidoresorts.com/special-occasions/groups — 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.grandlidoresorts.com/suites — 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.grandlidoresorts.com/suites-and-villas — 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.grandlidoresorts.com/tours-transfers — 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.grandlidoresorts.com/travel-assistance — 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.grandlidoresorts.com/travel-professionals — 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.grandlidoresorts.com/virtual-tour — 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.grandlidoresorts.com/wellness — 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 Deep page has no BreadcrumbList structured data

Rule schema.breadcrumb_missing · Structured Data · 3 occurrence(s)

notice target=_blank link without rel=noopener (tab-napping)

Rule security.unsafe_cross_origin_links · Security · 44 occurrence(s)

notice Indexable page not listed in sitemap

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

notice Missing Twitter Card tag

Rule twitter.missing · Social · 1 occurrence(s)

Pages (showing 50 of 50)
URLStatusIndexableWordsIn-links
https://www.grandlidoresorts.com/
Grand Lido Resorts | Au-Naturel, Adults Only All-Inclusive Resort
200 yes 1094 46
https://www.grandlidoresorts.com/contact
Contact | Grand Lido Resorts
200 yes 588 44
https://www.grandlidoresorts.com/privacy-policy
Privacy Policy | Blue Diamond Resorts
200 yes 4249 44
https://www.grandlidoresorts.com/awards
Awards | Grand Lido Resorts
200 yes 252 27
https://www.grandlidoresorts.com/dining-drinks
Dining & Drinks | Grand Lido Resorts
200 no 274 27
https://www.grandlidoresorts.com/dining-drinks/bars
Bars | Grand Lido Resorts
200 yes 390 27
https://www.grandlidoresorts.com/gallery
Gallery | Grand Lido Resorts
200 yes 305 27
https://www.grandlidoresorts.com/lido-luxury-extras
Lido Luxury Extras | Grand Lido Resorts
200 yes 510 27
https://www.grandlidoresorts.com/resort
Our Resort | Grand Lido Resorts
200 no 342 27
https://www.grandlidoresorts.com/resort/features
Features | Grand Lido Resorts
200 yes 455 27
https://www.grandlidoresorts.com/restaurants
Restaurants | Grand Lido Resorts
200 yes 888 27
https://www.grandlidoresorts.com/sitemap
Sitemap | Grand Lido Negril
200 yes 230 27
https://www.grandlidoresorts.com/special-occasions
Special Occasions | Grand Lido Resorts
200 no 305 27
https://www.grandlidoresorts.com/special-occasions/groups
Groups | Grand Lido Resorts
200 yes 663 27
https://www.grandlidoresorts.com/special-occasions/weddings
Grand Lido Negril: Your Premier Wedding Destination
200 yes 836 27
https://www.grandlidoresorts.com/specials
Specials | Grand Lido Resorts
200 no 202 27
https://www.grandlidoresorts.com/suites
Suites | Grand Lido Resorts
200 yes 740 27
https://www.grandlidoresorts.com/suites-and-villas
Suites and Villas - Grand Lido Negril
200 yes 740 27
https://www.grandlidoresorts.com/tours-transfers
Tours & Transfers | Grand Lido Resorts
200 yes 524 27
https://www.grandlidoresorts.com/virtual-tour
Virtual Tour | Grand Lido Negril
200 yes 229 27
https://www.grandlidoresorts.com/wellness
Jamaica Spa | Grand Lido Negril
200 yes 388 27
https://www.grandlidoresorts.com/es
Inicio | Grand Lido Resorts
200 yes 1175 21
https://www.grandlidoresorts.com/es/awards
Premios | Grand Lido Resorts
200 yes 265 17
https://www.grandlidoresorts.com/es/contact
Contacto | Grand Lido Resorts
200 yes 598 17
https://www.grandlidoresorts.com/es/dining-drinks
Alimentos y Bebidas | Grand Lido Resorts
200 no 293 17
https://www.grandlidoresorts.com/es/dining-drinks/bars
Bares | Grand Lido Resorts
200 yes 414 17
https://www.grandlidoresorts.com/es/gallery
Galería | Grand Lido Resorts
200 yes 311 17
https://www.grandlidoresorts.com/es/lido-luxury-extras
Lujo Grand Lido | Grand Lido Resorts
200 yes 562 17
https://www.grandlidoresorts.com/es/resort
Nuestro Resort | Grand Lido Resorts
200 no 364 17
https://www.grandlidoresorts.com/es/resort/features
Características | Grand Lido Resorts
200 yes 478 17
https://www.grandlidoresorts.com/es/restaurants
Restaurantes | Grand Lido Resorts
200 yes 966 17
https://www.grandlidoresorts.com/es/suites
Habitaciones | Grand Lido Resorts
200 yes 814 17
https://www.grandlidoresorts.com/es/tours-transfers
Tours & Traslados | Grand Lido Resorts
200 yes 588 17
https://www.grandlidoresorts.com/es/virtual-tour
Virtual Tour | Grand Lido Negril
200 yes 237 17
https://www.grandlidoresorts.com/es/wellness
Bienestar | Grand Lido Resorts
200 yes 428 17
https://www.grandlidoresorts.com/resorts/grand-lido-resorts/awards
Awards | Grand Lido Resorts
200 yes 252 1
https://www.grandlidoresorts.com/es/reviews
Reseñas - Grand Lido Negril
200 yes 222 0
https://www.grandlidoresorts.com/es/travel-assistance
Asistencia de Viaje | Grand Lido Resorts
200 yes 194 0
https://www.grandlidoresorts.com/es/travel-professionals
Profesionales de Viaje | Grand Lido Resorts
200 yes 305 0
https://www.grandlidoresorts.com/grand-lido-farewell-offer
Farewell Offer - Grand Lido Negril
200 yes 188 0
https://www.grandlidoresorts.com/homepage-nmlp
homepage-NMLP - Grand Lido Negril
200 yes 298 0
https://www.grandlidoresorts.com/jamaica-adults-only-all-inclusive-resort-deals
Jamaica Adults Only All Inclusive Luxury Resort Deals - Grand Lido Negril
200 yes 1232 0
https://www.grandlidoresorts.com/reviews
Reviews - Grand Lido Negril
200 yes 216 0
https://www.grandlidoresorts.com/travel-assistance
Travel Assistance | Grand Lido Negril
200 yes 188 0
https://www.grandlidoresorts.com/travel-professionals
Travel Professionals | Grand Lido Negril
200 yes 286 0
https://www.grandlidoresorts.com/es/grand-lido-farewell-offer
Página no encontrada
404 no 28 0
https://www.grandlidoresorts.com/es/homepage-nmlp
Página no encontrada
404 no 28 0
https://www.grandlidoresorts.com/es/jamaica-adults-only-all-inclusive-resort-deals
Página no encontrada
404 no 28 0
https://www.grandlidoresorts.com/es/suites-and-villas
Página no encontrada
404 no 28 17
https://www.grandlidoresorts.com/resorts/grand-lido-resorts
Page Not Found
404 no 28 2

Audit your own site — free

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

Scan your site →