Scheduled Sitemap Scans
Reads every sitemap URL you add for a site every 6 hours, follows index files to their child sitemaps and offers Scan now for an immediate pass.
Scheduled Sitemap ScansSitemap monitoring
Sitemap monitoring scans your XML sitemaps every 6 hours and records every URL they list. A sitemap monitor keeps a page inventory with the date each URL first appeared and the date it was last seen. With auto-submit on, monitoring XML sitemaps on a schedule sends newly listed pages to Google and Bing without anyone copying URLs into the Request Indexing box one at a time.
Definition
Sitemap monitoring is the scheduled scanning of a site's XML sitemaps to keep an inventory of every listed URL, record when each URL appears and leaves, and submit new URLs for indexing. In SearchAnalysis.io a scan runs every 6 hours, follows sitemap index files to their child sitemaps and moves each page through four states: Discovered, Submitted, Indexed and Removed.
An XML sitemap is the file a site publishes to list the URLs it wants search engines to crawl. A sitemap index file lists other sitemaps, and each child sitemap lists pages.
The page inventory is the record a sitemap monitor builds from those files: a first seen date, a last seen date and a state per URL. With auto-submit on, a new URL enters a batch with the source scheduled scan.
50,000URLs
Per sitemap fileA single sitemap holds at most 50,000 URLs, so sitemap monitoring follows index files to reach every child sitemap on a larger site.
6hours
Between scheduled scansSitemap monitoring rescans each sitemap every 6 hours, so a newly listed page enters the inventory within one scan cycle.
10minutes
To the first inspectionAn auto-submitted URL gets its first URL Inspection about 10 minutes after submission, so Google's first verdict reaches the inventory within the hour.
Old way, new way
Three ways to keep track of the pages in your sitemaps, side by side.
Inside the feature
Five parts work together from the moment you add a sitemap URL to the moment Google confirms a page.
Reads every sitemap URL you add for a site every 6 hours, follows index files to their child sitemaps and offers Scan now for an immediate pass.
Scheduled Sitemap ScansRecords every URL a scan finds with a first seen date, a last seen date and a state: Discovered, Submitted, Indexed or Removed.
Page Inventory With Indexing StatusSends each newly discovered URL as a URL_UPDATED notification inside a batch tagged scheduled scan, within Google's quota of 200 publish requests a day.
Notifies Bing and the other IndexNow engines about new URLs after SearchAnalysis.io verifies the key file hosted on your domain.
Auto-Submit Through IndexNowLets you scan a sitemap, pick the URLs you want and send them as one batch when auto-submit is off.
Sitemap Import for Manual BatchesProcess
Five steps take a page from your sitemap to a confirmed Indexed state.
Add Your Site and Connect Google
Add the site, connect Google with OAuth and pick the matching Search Console property, either a domain property (sc-domain:) or a URL-prefix property.
Add Your Sitemap URLs
Enter each sitemap or sitemap index URL for the site. Scans follow index files to their child sitemaps.
Let the First Scan Build the Inventory
Press Scan now or wait for the schedule. Every URL found enters the page inventory as Discovered with a first seen date.
Turn On Auto-Submit
With auto-submit on, each new URL goes out in a batch with the source scheduled scan, to the Google Indexing API, URL Inspection and IndexNow.
Watch Google Confirm Each Page
The first URL Inspection runs about 10 minutes after submission. When the verdict is PASS or the coverageState says indexed, the URL turns Indexed.
Why it matters
Sitemap monitoring advantages are earlier submission of new pages, a dated record of every listed URL and an indexing status that Google itself confirmed.
A new page in your sitemap enters the inventory on the next scan. With auto-submit on, it reaches the Google Indexing API submission queue and IndexNow submission without a person in the loop.
Google Indexing API submissionGreen means the Google index checker read a PASS verdict or an indexed coverageState, and nothing else turns a row green.
First seen and last seen dates show when a URL entered your sitemap and the last scan that still listed it. A page that leaves the file turns Removed, and an indexed page stays on the deindex monitoring watch.
Deindex monitoringAuto-submit replaces pasting each new URL into Search Console, and a URL already tracked inside 30 days is skipped.
SearchAnalysis.io product tourBefore you add a sitemap, run its key pages through the free indexability checker to catch a noindex directive, a robots.txt block or a canonical that points elsewhere.
Picture a Monday morning: the sitemap monitor scanned every 6 hours over the weekend, the new pages your team published on Saturday are in the inventory with Saturday's first seen date, the batch tagged scheduled scan already went out, and the rows URL Inspection confirmed are green.
What we publish about limits
Sitemap monitoring works inside rules set by Google and Bing. These are the edges.
Google Decides What It Indexes
Google decides what it crawls and indexes, and nobody can guarantee indexing. SearchAnalysis.io reports what URL Inspection says.
The Indexing API Has a Documented Scope
Google documents the Indexing API for JobPosting and BroadcastEvent pages. Most content sites show a Best-effort badge, and submission proceeds best-effort.
Quotas Pace Every Channel
The Google Indexing API allows 200 publish requests a day per Google Cloud project. URL Inspection allows 2,000 inspections a day and 600 a minute per property. URLs over a day's quota wait for the next UTC window and keep their place in line.
Changed Pages Are Not Resubmitted Yet
Auto-submit sends newly discovered URLs. Automatic resubmission when a sitemap <lastmod> changes is PLANNED and will arrive in a later release.
“The Indexing API can only be used to crawl pages with either JobPosting or BroadcastEvent embedded in a VideoObject.”
Google's sitemap rules
Sitemap monitoring runs inside the rules Google publishes for sitemaps. Each panel covers one rule, what Google documents about it and how SearchAnalysis.io handles it.
(Select a rule to read more)
Sitemap monitoring starts with a file Google caps. A single sitemap is limited to 50MB uncompressed or 50,000 URLs. A site with more pages than that splits its URLs across several sitemap files and lists those files in a sitemap index.
| Limit | Number | Who sets it |
|---|---|---|
| One sitemap file | 50,000 URLs or 50MB uncompressed | |
| One SearchAnalysis.io batch | 10,000 URLs | SearchAnalysis.io |
| One IndexNow POST | 10,000 URLs | IndexNow |
| IndexNow budget | 10,000 URLs a day per property | SearchAnalysis.io |
| URL Inspection API | 2,000 a day and 600 a minute per property | |
| Google Indexing API | 200 publish requests a day per Cloud project |
Read the table from top to bottom and the funnel narrows. A scan records every URL in a full 50,000-URL sitemap in the page inventory. Confirmation moves slower: the URL Inspection API allows 2,000 inspections a day on one property, so a large new sitemap gets confirmed across several days.
The Google Indexing API submission queue holds URLs over the day's quota until the next UTC window, and each URL keeps its place in line. SearchAnalysis.io respects each quota and never tries to get around it.
For most sites the limits never bind. A blog that adds 10 posts a week fits inside every quota on the first day. The table matters when you launch a new section, migrate a site or connect a large catalog for the first time.
Sitemap monitoring follows sitemap index files the way Google reads them. A sitemap index is a sitemap whose entries are other sitemaps. Each child sitemap then lists pages. A site with more than 50,000 pages needs more than one file, and an index ties those files together.
You add sitemap URLs per site. Adding the index file once covers its children. You can add several sitemap URLs to the same site when your CMS publishes separate files for posts, products or categories without an index.
If a later scan no longer finds a page in any listed file, that page turns Removed and its last seen date stays on the row. A whole child sitemap dropping out of the index shows up the same way: every page it held turns Removed on the next scan. That pattern points to a change in how the site builds its sitemaps.
Indexed pages stay on the 7-day recheck even after they leave the sitemap, so deindex monitoring tells you if Google drops one later.
Sitemap monitoring reads the <lastmod> tag Google treats as a conditional signal. Google uses <lastmod> "if it's consistently and verifiably accurate". A date that changes on every page view, or a date stamped on every URL at each build, gives Google no reason to trust it.
The practical reading of Google's wording: set <lastmod> when the main content of a page changes, and leave it alone when nothing on the page changed. A sitemap where every date matches a real edit is a sitemap whose dates Google can verify against what it crawls.
| Sitemap habit | How Google's rule reads it |
|---|---|
<lastmod> updated when the article text changes | Consistent with the page, so the date is usable |
<lastmod> set to the build time on every URL | Not verifiably accurate |
<lastmod> missing | No date signal for that URL |
Scans record the URLs in each file and track first seen and last seen dates. Auto-submit sends newly discovered URLs. A URL that stays in the sitemap with a new <lastmod> is not resubmitted automatically today.
Until then, resubmit an updated page from the SearchAnalysis.io product by hand. The 30-day dedup rule skips a URL that is already actively tracked on your account inside 30 days, and reports the skip in the batch.
Sitemap monitoring treats <priority> and <changefreq> as values Google does not use. Google's sitemap documentation says it plainly: "Google ignores <priority> and <changefreq> values." Setting every product page to 1.0, or tagging the home page as hourly, changes nothing in how Google crawls.
Many sitemap generators still write both tags by default, and every byte counts toward the 50MB uncompressed cap.
The word priority means two separate things on this page, so the table below keeps them apart.
| Sitemap `<priority>` tag | SearchAnalysis.io priority | |
|---|---|---|
| Where it lives | Inside your XML sitemap | On each URL in a SearchAnalysis.io batch |
| Values | Set in the XML file | High, Normal, Low |
| Who reads it | Google ignores it | Your own SearchAnalysis.io queue |
| What it changes | Nothing in Google's crawl | Order of sending within your own queue |
SearchAnalysis.io priority orders URLs inside your own queue. When the Google Indexing API quota of 200 publish requests a day is close, High URLs go out before Normal and Low ones, and the rest wait for the next UTC window. The Google Indexing API submission page covers that queue in full.
To send one page ahead of the rest, submit it as a single URL with High priority.
Sitemap monitoring no longer has a Google ping to send. Google retired its sitemap ping endpoint, announced in June 2023 on the Google Search Central blog in the post titled "Sitemaps ping endpoint is going away". Scripts and plugins that still call that ping address get nothing useful from it.
If your deploy pipeline or CMS plugin pinged Google after each publish, that step now does nothing for Google. The routes that still work are the three documented ways to tell Google about a sitemap, plus the per-URL channels below.
URL_UPDATED notification per URL, 200 publish requests a day per Cloud project, documented for JobPosting and BroadcastEvent pages.SearchAnalysis.io sends through the last three for every auto-submitted URL. Each URL gets three status rows: Google Indexing API, Search Console and Bing. Only the Search Console row turns green, because only URL Inspection confirms indexing.
Read the IndexNow submission page for the key file step, and remove any old Google ping call from your build scripts.
Sitemap monitoring in SearchAnalysis.io reads the sitemaps you add to it, and Google learns about the same sitemaps through its own routes. Google documents three of them.
Sitemap: line with the full sitemap URL to the robots.txt file at your site root.Pick one or use all three. They point Google at the same file.
Adding a sitemap URL to SearchAnalysis.io tells SearchAnalysis.io where to scan. It builds the page inventory and, with auto-submit on, sends each new URL to the Google Indexing API and IndexNow and inspects it with URL Inspection. Telling Google about the sitemap file itself stays one of the three routes above.
The robots.txt route has a side effect worth checking: a robots.txt rule that blocks a page stops Googlebot even when the sitemap lists it. Run a listed page through the free indexability checker to see which robots.txt rule applies, with the Googlebot group winning over * and the longest matching rule deciding.
Use the same Search Console property in both places. When you connect Google in SearchAnalysis.io you pick the property, a domain property (sc-domain:) or a URL-prefix property, and inspections run against it.
Sitemap monitoring keeps two facts apart: a URL is in your sitemap, and a URL is in Google. A sitemap tells Google a page exists. Google decides what it crawls and indexes, and nobody can guarantee indexing.
Search Console's Page indexing report names the reasons a listed URL stays out. These are some of the ones sitemap owners meet most.
| Google's reason | What it means |
|---|---|
| Discovered, currently not indexed | "The page was found by Google, but not crawled yet." |
| Crawled, currently not indexed | "The page was crawled by Google but not indexed." |
| URL marked 'noindex' | A noindex directive in meta robots or the X-Robots-Tag header |
| URL blocked by robots.txt | A robots.txt rule stops Googlebot |
| Duplicate, Google chose different canonical than user | Google picked another URL as canonical |
| Page with redirect | The listed URL redirects; Google indexes the destination |
SearchAnalysis.io checks the Google side with the URL Inspection API. Each inspection stores the verdict, coverageState, robotsTxtState, indexing state, the Google-selected canonical and the last crawl time. A URL turns Indexed when the verdict is PASS or the coverage state says indexed.
The guide to Crawled, currently not indexed covers the most common gap between a sitemap and the index. For one page at a time, the Google index checker shows every verdict field.
Inventory reference
Every URL a scan finds sits in one inventory state at a time, with a first seen and a last seen date. Each panel covers one state or one inventory behavior.
(Select a state to read more)
Discovered is the first state in the sitemap monitoring page inventory. A URL turns Discovered when a scan finds it in one of the sitemaps you added for the site, and the scan writes the first seen date on the row at the same moment.
scheduled scan, and the URL moves to Submitted.SearchAnalysis.io uses the word for its own scan. Google's Page indexing report has a reason with a similar name, Discovered, currently not indexed, which Google describes as "The page was found by Google, but not crawled yet." The two are separate facts. A URL may show Discovered in the inventory before Google has seen it at all, and a URL may sit in Google's Discovered, currently not indexed group long after SearchAnalysis.io submitted it.
When a URL spends days in Google's Discovered group, the cause sits on Google's side of the line. Check the page with the free indexability checker first: a page that fails to load, redirects, carries noindex or points its canonical elsewhere gets fixed there before any resubmission.
Submitted is the sitemap monitoring state for a URL that has entered a batch. From there, every URL gets three separate status rows, one per channel.
| Channel | What SearchAnalysis.io sends | What the row can show |
|---|---|---|
| Google Indexing API | A URL_UPDATED notification | Processing once Google answers HTTP 2xx; never Indexed |
| Google Search Console | URL Inspection API calls on a schedule | Processing until inspection confirms; then Indexed |
| Bing | An IndexNow notification | Processing once accepted |
The Google Indexing API and IndexNow rows are fire-and-forget. Google acknowledging a notification means the ping was accepted. It does not mean the page is indexed, so the row stays Processing. The Search Console row carries the confirmation.
Inside the batch, each URL keeps a priority of High, Normal or Low, which sets order within your own queue. The Google Indexing API submission queue sends up to 100 URLs per batch request and stays inside 200 publish requests a day per Google Cloud project. URLs over the day's quota wait for the next UTC window and keep their place in line.
Some URLs never reach a channel. A URL outside the site's domain, a duplicate or an invalid format shows Dropped. An error that needs a person shows Failed, with the error text on the row, and the Monitor offers bulk retry.
The batch page lists the URLs 100 per page, with the batch name and its source.
Indexed is the sitemap monitoring state that only Google can set. SearchAnalysis.io calls the Search Console URL Inspection API for the URL, and when the verdict is PASS or the coverageState says indexed, the row turns Indexed. Green means verified and nothing else.
Each inspection becomes a row in the URL's check history with the time, the state (INDEXED, NOT_INDEXED or ERROR), the coverage state and the source. Each one stores Google's health snapshot too: verdict, coverageState, robotsTxtState, indexing state, the Google-selected canonical and the last crawl time.
When a URL turns Indexed, SearchAnalysis.io sends a transactional email titled "Indexed: <url>". From then on the URL is inspected again every 7 days for as long as the site is connected. The Google index checker page covers every verdict field in detail.
Transient errors from Google (429, 5xx or network) retry after 30 minutes, so a brief outage does not stall the ladder.
Removed is the sitemap monitoring state for a URL a later scan no longer finds in any sitemap you added. The row keeps its last seen date, which marks the final scan that still listed it.
Removed describes your sitemap. It says nothing on its own about Google. A page you deleted, redirected or merged usually leaves the sitemap on purpose, and a page that vanished after a plugin update leaves it by accident. The inventory shows both the same way, so the dates help you tell them apart.
An Indexed URL is inspected again every 7 days for as long as the site is connected, whether or not it is still in the sitemap. If a recheck finds it not indexed, the row shows amber Not indexed, a deindex event. Deindex monitoring tracks those drops across the whole site.
Alerts for deindex events by email and Slack are PLANNED and will arrive in a later release. Today the Monitor filters and the Google index card show the change.
Sitemap monitoring stamps two dates on every inventory row. First seen is the scan that found the URL for the first time. Last seen is the most recent scan that still listed it.
| Pattern on the row | What it tells you |
|---|---|
| Last seen matches the latest scan | The URL is still in your sitemap |
| Last seen is older than the latest scan | The URL left the sitemap and shows Removed |
| First seen is recent, state is Discovered | A new page waiting for submission |
| First seen is recent, state is Indexed | Google confirmed a new page |
| First seen is old, state is Submitted | Listed for a while, still not confirmed by Google |
The time between a first seen date and the inspection that turned the row Indexed is how long the page took to get from your sitemap into Google, as far as URL Inspection can see. The full check history on the URL detail page shows every inspection in between, each with its time and coverage state.
The dates make a site migration readable. After a URL change, old URLs show a last seen date on migration day and new URLs show a first seen date on the same day. The Monitor exports submitted URLs as CSV, and the SearchAnalysis.io product tour shows where each view lives.
Auto-submit is the sitemap monitoring switch that turns a scan into a submission. You turn it on per site. With it on, newly discovered URLs are submitted on their own as a batch with the source scheduled scan.
scheduled scan (every 6 hours) or Scan now
new URL found -> Discovered, first seen date set
auto-submit on -> batch created, source: scheduled scan
sent to 3 channels -> Submitted
URL Inspection PASS -> Indexed
URL leaves the sitemap -> Removed, last seen date kepthttps://yourdomain/{key}.txt.SearchAnalysis.io reads each page for JobPosting or BroadcastEvent structured data, the scope Google documents for the Indexing API. A blog post or product page shows Best-effort, which is normal for most content sites, and submission proceeds best-effort. URL Inspection and IndexNow submission run either way.
Each auto-submitted batch has its own page, and a confirmed URL triggers the "Indexed: <url>" email.
Resubmission on <lastmod> change is a PLANNED sitemap monitoring feature. When it ships, SearchAnalysis.io will resubmit a URL automatically when its <lastmod> value in the sitemap changes. It is not in the product today.
Google uses <lastmod> "if it's consistently and verifiably accurate". A site that updates <lastmod> only when a page changes publishes a clean signal, and the planned feature will read that same signal to decide when a page goes out again. A sitemap that stamps every URL with the build time would trigger a resubmission for every URL at every build, so accurate dates will matter on both sides.
A free sitemap checker tool is PLANNED and will join the free indexability checker. Drip-feed submission, paced over a number of days, is PLANNED too. Waitlist members get an invite before public launch and will see these features as they ship.
FAQ
An XML sitemap is a file that lists the URLs a site wants search engines to crawl. Google caps one sitemap at 50MB uncompressed or 50,000 URLs, and a sitemap index file lists several sitemaps for larger sites.
The best sitemap for SEO is an XML sitemap, the format Google's sitemap documentation describes. Google ignores <priority> and <changefreq>, and uses <lastmod> when it is consistently and verifiably accurate.
A sitemap is needed for SEO when you want Google to get a full list of your URLs through a documented route: Search Console, the Search Console API or robots.txt. A listed URL still carries no guarantee, because Google decides what it crawls and indexes.
You find a website's sitemap in its robots.txt file, where a Sitemap: line gives the full sitemap URL. If that file is a sitemap index, it lists the child sitemaps that hold the page URLs.
You submit a sitemap to Google in Search Console, through the Search Console API or with a Sitemap: line in robots.txt. Google retired its sitemap ping endpoint in June 2023, so a ping no longer does anything.
You check a sitemap by confirming the file stays under 50MB uncompressed and 50,000 URLs, then testing listed pages with the free indexability checker. A free sitemap checker tool from SearchAnalysis.io is PLANNED and will check whole sitemap files.
Your sitemap's pages are not being indexed because a listed URL is not an indexed URL, and Google decides what it crawls and indexes. Search Console's Page indexing report gives the reason per URL, like Discovered, currently not indexed. Sitemap monitoring shows Google's verdict and coverageState for each submitted URL.
Sitemap monitoring in SearchAnalysis.io scans each sitemap every 6 hours, and Scan now runs a scan on demand. Automatic resubmission when <lastmod> changes is PLANNED.
Invite-only access
SearchAnalysis.io is invite-only today. Join the waitlist with your email, and invites go out from the waitlist.
Picture your next publish day: the page goes live, the next scan lists it, and its row turns green once Google confirms it.
An Invite Before Public Launch
Waitlist members get access before SearchAnalysis.io opens to everyone.
Launch Pricing Locked
Your launch price stays locked for as long as you stay subscribed. The price is announced at launch.
An Extended Free Trial
Waitlist members get a longer free trial. Its length is announced at launch.
Scheduled Sitemap Scans
Scans every 6 hours, Scan now on demand, and index files followed to every child sitemap.
Page Inventory With Dates
Discovered, Submitted, Indexed and Removed states with first seen and last seen dates.
Auto-Submit and Confirmation
New URLs sent to the Google Indexing API and IndexNow, then confirmed by URL Inspection.