Sitemap has not been updated in over a year
Every dated entry in the sitemap at its published location is older than a year — the most recent `lastmod` is the value.
Why it matters
Every dated entry in the sitemap at its published location is older than a year — the most recent `lastmod` is the value. Crawlers use these dates to decide what to re-fetch and how often to come back, so a sitemap frozen in the past tells them the site is dormant and slows down how quickly new pages get picked up. This usually means the sitemap is a static file that was generated once and committed, rather than being rebuilt with the site. If the content genuinely has not changed in a year, this is accurate and can be ignored.
How ShipReady detects it
Sitemap health — whether the sitemap a site publishes can actually be used. PRESENCE IS NOT CHECKED HERE. `missing-sitemap-xml` in readiness.py already reports a sitemap that does not exist, and reporting it twice would double-count one defect across two pillars. This module stays silent unless a sitemap is served, and then asks only whether it works: does it parse, does it list anything, and is it maintained. That split is deliberate. "You have no sitemap" is a launch-readiness gap — a box left unticked. "You have a sitemap and it is broken" is a discovery problem, because the site looks configured to its owner while search engines and AI crawlers get nothing from it, which is exactly the kind of silent failure this pillar exists to surface.
Detection is deterministic. ShipReady reports this only when it observes the condition directly, and prefers to miss a real problem over inventing one. Rule version 1.1.0.
How to fix it
This is the prompt ShipReady puts in your report — written to be pasted straight into Cursor, Claude Code, or whichever assistant built the app.
Every dated entry in your sitemap is more than a year old. Crawlers use <lastmod> to decide what to re-fetch and how often to return, so a frozen sitemap signals a dormant site and slows discovery of anything new. This normally means the sitemap is a static file that was generated once and committed rather than rebuilt with the site: move generation into your build (Next.js has a sitemap.ts convention; most static generators have a sitemap plugin) so lastmod reflects real publish dates. Only set lastmod when content actually changed — bumping every entry to today's date on each deploy trains crawlers to ignore the field.
Frequently asked questions
- What does "Sitemap has not been updated in over a year" mean?
- Every dated entry in the sitemap at its published location is older than a year — the most recent `lastmod` is the value.
- How serious is it?
- ShipReady rates this low. Worth fixing. Small individually, and they accumulate.
- How do I fix it?
- Paste the fix prompt on this page into Cursor, Claude Code or your AI editor. It is the same prompt ShipReady puts in your report.
- Can I check my own site?
- Yes — ShipReady scans up to ten pages of any public site for free and reports this alongside every other check. The free report lists every issue it finds and shows full evidence and a fix prompt for the critical and high-severity ones; medium and low findings are counted and unlock on Pro.
Related checks
- Sitemap is published but lists no URLsmedium
- Sitemap is served but cannot be parsedmedium
- Your robots.txt tells search engines to stay out of the whole sitehigh
- Your site tells search engines not to index ithigh
- AI assistants are blocked from reading your sitemedium
- Canonical URL points to a different domainmedium
Run this check on your site
ShipReady checks this and 193 other things across up to ten pages of your site, with an AI-ready fix for each. Free, no signup.