Catalog / montaguebookmill.com
65

SEO audit for montaguebookmill.com

The Montague Bookmill :: Home

otherWordPress

Health 65/100 (fair) · 44 pages crawled · generated 2026-08-26

Download Markdown report (feed to ChatGPT / Claude / Cursor)
44
pages crawled
44
indexable pages
0
errors
400
warnings
561
notices
4
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Links 0 0 180 44
Agent Readiness 70 0 44 1
Images 70 0 44 46
Meta Description 70 0 44 0
Content 72 0 41 41
Headings 75 0 37 5
Duplicate 93 0 10 0
Crawlability 100 0 0 4
Performance 100 0 0 176
Security 100 0 0 44
Sitemap 100 0 0 35
Social 100 0 0 88
Structured Data 100 0 0 44
URL 100 0 0 33
Findings

Warnings (9 rules)

warning Control has no accessible name

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

warning Duplicate page content

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

warning Duplicate <title> across pages

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

warning Images missing alt text

Rule images.missing_alt · Images · 44 occurrence(s)

warning Orphan page (no internal inlinks)

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

warning Internal link points to a redirect

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

Notices (18 rules)

notice No llms.txt for AI agents

Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)

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

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

  • https://montaguebookmill.com/events — this page reads as difficult (Flesch Reading Ease 50, 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://montaguebookmill.com/events/ — this page reads as difficult (Flesch Reading Ease 50, 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 Multiple <h1> elements

Rule h1.multiple · Headings · 5 occurrence(s)

notice Image filename is generic/auto-generated (missed image-search signal)

Rule images.generic_filename · Images · 2 occurrence(s)

  • https://montaguebookmill.com/photos — 33 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.
  • https://montaguebookmill.com/photos/ — 33 image(s) use a generic/auto-generated filename (e.g. IMG_1234.jpg, photo1.png, a bare UUID). Google reads the filename as a signal of image content, so rename files descriptively (hyphen-separated words) before upload.

notice Likely hero image lacks fetchpriority=high

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

  • https://montaguebookmill.com/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/contact — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/contact/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/events — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/events/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/history — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/history/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8294/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8325/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8327/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8359/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8360/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8365/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8371/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8377/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8418/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8433/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8441/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8449/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_8474/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_9678/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_9688/ — the likely hero/LCP image (bookmillheader.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://montaguebookmill.com/photos/dsc_9707/ — the likely hero/LCP image (bookmillheader.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 has no anchor text / accessible name

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

  • https://montaguebookmill.com/ — 6 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/contact — 6 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/contact/ — 6 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/events — 6 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/events/ — 6 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/history — 6 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/history/ — 6 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos — 41 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/ — 41 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8294/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8325/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8327/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8359/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8360/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8365/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8371/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8377/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8418/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8433/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8441/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8449/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_8474/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_9678/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_9688/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.
  • https://montaguebookmill.com/photos/dsc_9707/ — 7 internal link(s) have no anchor text, aria-label, or image alt — they pass no keyword signal and are unusable to screen readers. Add descriptive text or an aria-label.

notice Missing Open Graph tags

Rule og.missing · Social · 44 occurrence(s)

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

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

  • https://montaguebookmill.com/ — 10 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://montaguebookmill.com/contact — 10 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://montaguebookmill.com/contact/ — 10 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://montaguebookmill.com/events — 10 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://montaguebookmill.com/events/ — 10 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://montaguebookmill.com/history — 13 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://montaguebookmill.com/history/ — 13 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://montaguebookmill.com/photos — 45 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://montaguebookmill.com/photos/ — 45 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://montaguebookmill.com/photos/dsc_8294/ — 11 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://montaguebookmill.com/photos/dsc_8325/ — 11 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://montaguebookmill.com/photos/dsc_8327/ — 11 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://montaguebookmill.com/photos/dsc_8359/ — 11 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://montaguebookmill.com/photos/dsc_8360/ — 11 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://montaguebookmill.com/photos/dsc_8365/ — 11 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://montaguebookmill.com/photos/dsc_8371/ — 11 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://montaguebookmill.com/photos/dsc_8377/ — 11 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://montaguebookmill.com/photos/dsc_8418/ — 11 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://montaguebookmill.com/photos/dsc_8433/ — 11 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://montaguebookmill.com/photos/dsc_8441/ — 11 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://montaguebookmill.com/photos/dsc_8449/ — 11 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://montaguebookmill.com/photos/dsc_8474/ — 11 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://montaguebookmill.com/photos/dsc_9678/ — 11 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://montaguebookmill.com/photos/dsc_9688/ — 11 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://montaguebookmill.com/photos/dsc_9707/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.

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

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

  • https://montaguebookmill.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://montaguebookmill.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://montaguebookmill.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://montaguebookmill.com/events — 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://montaguebookmill.com/events/ — 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://montaguebookmill.com/history — 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://montaguebookmill.com/history/ — 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://montaguebookmill.com/photos — 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://montaguebookmill.com/photos/ — 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://montaguebookmill.com/photos/dsc_8294/ — 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://montaguebookmill.com/photos/dsc_8325/ — 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://montaguebookmill.com/photos/dsc_8327/ — 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://montaguebookmill.com/photos/dsc_8359/ — 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://montaguebookmill.com/photos/dsc_8360/ — 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://montaguebookmill.com/photos/dsc_8365/ — 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://montaguebookmill.com/photos/dsc_8371/ — 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://montaguebookmill.com/photos/dsc_8377/ — 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://montaguebookmill.com/photos/dsc_8418/ — 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://montaguebookmill.com/photos/dsc_8433/ — 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://montaguebookmill.com/photos/dsc_8441/ — 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://montaguebookmill.com/photos/dsc_8449/ — 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://montaguebookmill.com/photos/dsc_8474/ — 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://montaguebookmill.com/photos/dsc_9678/ — 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://montaguebookmill.com/photos/dsc_9688/ — 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://montaguebookmill.com/photos/dsc_9707/ — 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://montaguebookmill.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://montaguebookmill.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://montaguebookmill.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://montaguebookmill.com/events — 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://montaguebookmill.com/events/ — 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://montaguebookmill.com/history — 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://montaguebookmill.com/history/ — 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://montaguebookmill.com/photos — 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://montaguebookmill.com/photos/ — 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://montaguebookmill.com/photos/dsc_8294/ — 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://montaguebookmill.com/photos/dsc_8325/ — 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://montaguebookmill.com/photos/dsc_8327/ — 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://montaguebookmill.com/photos/dsc_8359/ — 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://montaguebookmill.com/photos/dsc_8360/ — 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://montaguebookmill.com/photos/dsc_8365/ — 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://montaguebookmill.com/photos/dsc_8371/ — 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://montaguebookmill.com/photos/dsc_8377/ — 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://montaguebookmill.com/photos/dsc_8418/ — 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://montaguebookmill.com/photos/dsc_8433/ — 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://montaguebookmill.com/photos/dsc_8441/ — 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://montaguebookmill.com/photos/dsc_8449/ — 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://montaguebookmill.com/photos/dsc_8474/ — 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://montaguebookmill.com/photos/dsc_9678/ — 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://montaguebookmill.com/photos/dsc_9688/ — 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://montaguebookmill.com/photos/dsc_9707/ — 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 · 4 occurrence(s)

notice Missing recommended security headers

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

notice Indexable page not listed in sitemap

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

Pages (showing 44 of 44)
URLStatusIndexableWordsIn-links
https://montaguebookmill.com/
The Montague Bookmill :: Home
200 yes 320 44
https://montaguebookmill.com/contact
The Montague Bookmill :: Contact
200 yes 64 44
https://montaguebookmill.com/events
The Montague Bookmill :: Events
200 yes 185 44
https://montaguebookmill.com/history
The Montague Bookmill :: History
200 yes 733 44
https://montaguebookmill.com/photos
The Montague Bookmill :: Photos
200 yes 15 44
https://montaguebookmill.com/photos/cimg5062/
The Montague Bookmill :: CIMG5062
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5118/
The Montague Bookmill :: dsc_5118
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5128/
The Montague Bookmill :: dsc_5128
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5133/
The Montague Bookmill :: dsc_5133
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5150/
The Montague Bookmill :: dsc_5150
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5157/
The Montague Bookmill :: dsc_5157
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5167/
The Montague Bookmill :: dsc_5167
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5168/
The Montague Bookmill :: dsc_5168
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5175/
The Montague Bookmill :: dsc_5175
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5193/
The Montague Bookmill :: dsc_5193
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5203/
The Montague Bookmill :: dsc_5203
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5222/
The Montague Bookmill :: dsc_5222
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5233/
The Montague Bookmill :: dsc_5233
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5235/
The Montague Bookmill :: dsc_5235
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5246/
The Montague Bookmill :: dsc_5246
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5254/
The Montague Bookmill :: dsc_5254
200 yes 15 2
https://montaguebookmill.com/photos/dsc_5263/
The Montague Bookmill :: dsc_5263
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8290/
The Montague Bookmill :: dsc_8290
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8294/
The Montague Bookmill :: dsc_8294
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8325/
The Montague Bookmill :: dsc_8325
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8327/
The Montague Bookmill :: dsc_8327
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8359/
The Montague Bookmill :: dsc_8359
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8360/
The Montague Bookmill :: dsc_8360
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8365/
The Montague Bookmill :: dsc_8365
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8371/
The Montague Bookmill :: dsc_8371
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8377/
The Montague Bookmill :: dsc_8377
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8418/
The Montague Bookmill :: dsc_8418
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8433/
The Montague Bookmill :: dsc_8433
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8441/
The Montague Bookmill :: dsc_8441
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8449/
The Montague Bookmill :: dsc_8449
200 yes 15 2
https://montaguebookmill.com/photos/dsc_8474/
The Montague Bookmill :: dsc_8474
200 yes 15 2
https://montaguebookmill.com/photos/dsc_9678/
The Montague Bookmill :: dsc_9678
200 yes 15 2
https://montaguebookmill.com/photos/dsc_9688/
The Montague Bookmill :: dsc_9688
200 yes 15 2
https://montaguebookmill.com/photos/dsc_9707/
The Montague Bookmill :: dsc_9707
200 yes 15 2
https://montaguebookmill.com/photos/joe5/
The Montague Bookmill :: joe5
200 yes 15 2
https://montaguebookmill.com/contact/
The Montague Bookmill :: Contact
200 yes 64 0
https://montaguebookmill.com/events/
The Montague Bookmill :: Events
200 yes 185 0
https://montaguebookmill.com/history/
The Montague Bookmill :: History
200 yes 733 0
https://montaguebookmill.com/photos/
The Montague Bookmill :: Photos
200 yes 15 0

Audit your own site — free

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

Scan your site →