XML sitemaps should remain under 50MB uncompressed and 50,000 URLs per file per protocol specifications, but practical performance degrades well before these limits. Aim for individual sitemap files under 10MB uncompressed and 10,000 URLs for optimal crawler processing speed. Always implement gzip compression, which typically reduces sitemap file sizes by 80-90%, making a 10MB uncompressed file transmit as 1-2MB.
When you exceed 50,000 URLs, implement a sitemap index that splits content into logical segments rather than arbitrary numerical chunks. Monitor server response times for sitemap requests and implement caching strategies that serve pre-generated files rather than generating on every request. For extremely large sites with millions of URLs, consider CDN distribution of sitemap files to ensure sub-second delivery regardless of crawler location or request volume.