Recipe Sitemap Strategy
How Meridian structures XML sitemaps to maximize recipe indexation across Google, Bing, and schema-aware crawlers.
Sitemap topology
Meridian emits a tiered sitemap index rooted at /sitemap.xml. The index references three child sitemaps: static pages, recipe detail pages, and a dedicated recipe-image sitemap for Google Image Search. Each child sitemap stays under the 50,000 URL / 50 MB uncompressed limit.
Recipe detail sitemap
Every published recipe gets a <url> entry with <lastmod> set to the recipe's most recent update timestamp and <changefreq>weekly</changefreq>. Priority is computed from engagement signals: recipes with higher save rates and comment velocity receive priority 0.9; dormant recipes drop to 0.5.
Image sitemap
A parallel image sitemap declares every hero and step image with <image:image> namespaced entries. Each entry carries <image:loc>, <image:title>, and <image:caption> populated from alt text and step descriptions. This sitemap is submitted separately in Google Search Console.
Generation pipeline
Sitemaps are rebuilt on a cron trigger every 6 hours via a Vercel Cron Job hitting an API route. The route queries the database for all published recipes, paginates in batches of 10,000, and streams XML directly to Vercel Edge Config as a static asset. A Cache-Control: s-maxage=21600 header ensures CDN freshness without per-request computation.
Robots.txt integration
The sitemap index URL is declared in robots.txt via Sitemap: https://getnimbus.net/sitemap.xml. Crawl budget is steered away from filter pages, pagination beyond page 3, and user-profile pages using Disallow rules.