I have a site that usually creates a few thousand pages a day, which don't change after they have been created. Recently my dedicated server has crashed due to googlebot crawling the site too often. According to the search console, many days googlebot crawls the site tens of thousands of times a day, indicating they keep crawling pages they already crawled. I am aware I can limit the googlebot crawl rate, but is it possible to force googlebot to crawl a page ONCE and ONCE only?
There is no way to prevent Googlebot from re-crawling pages.
Googlebot re-crawls pages in proportion with their PageRank. Googlebot will crawl pages as popular as the CNN home page once an hour. Pages deep in your site with no external links may only get crawled once a month.
Googlebot re-crawls pages in proportion to how often it sees them change. If your pages change every time Googlebot crawls, Googlebot will start to crawl them more frequently. If they never charge, Googlebot will continue to check them periodically.
Googlebot adjusts its crawl rate for your site based on the amount of time pages take to download. If your site delivers pages slowly, it will crawl less. If your pages download very quickly, Googlebot will crawl more.
Google has a setting in the old Google Search Console that lets you adjust the Googlebot crawl rate for your site. See https://support.google.com/webmasters/answer/48620?hl=en
Googlebot does not obey the robots.txt
crawl-delay directive. It is not possible to set the Googlebot crawl rate through robots.txt.
If your site is crashing due to Googlebot crawling you have three options:
- Get a faster server or upgrade to a cluster of servers behind a load balancer.
- Use Google Search Console to adjust the Googlebot crawl rate.
- Set up your server to respond more slowly to Googlebot requests.
Supplying a sitemap daily with lastmod-tag would most likely limit the crawl rate, it's one of the few ways which you can reliably tell Google that your pages (don't) need crawling. John Mueller tweet