IndexNow: faster discovery for large generated sites
Sitemaps are a pull mechanism: engines fetch them when they choose. IndexNow is a push mechanism: you notify engines the moment a URL changes. On a site publishing hundreds of pages a week, that difference is measured in days of discovery latency.
What it does, and what it does not
| IndexNow does | IndexNow does not |
|---|---|
| Notify participating engines that a URL was added, updated or deleted | Guarantee crawling |
| Reduce discovery latency from days to hours | Guarantee indexation |
| Cover added, changed and removed URLs alike | Improve a page's perceived quality |
| Work without a per-engine account | Replace a sitemap |
The protocol is supported by Microsoft Bing, Yandex, Seznam and Naver, and IndexNow submissions are shared between participating engines. Google has not adopted it — for Google, sitemaps and internal linking remain the discovery path.
Implementation in three steps
1. Generate and host a key
A hexadecimal string of 8 to 128 characters, hosted as a text file at the root of the host, containing the key and nothing else.
https://example.com/a1b2c3d4e5f6a7b8.txt
content: a1b2c3d4e5f6a7b8
2. Submit URLs in batches
POST https://api.indexnow.org/indexnow
Content-Type: application/json
{
"host": "example.com",
"key": "a1b2c3d4e5f6a7b8",
"keyLocation": "https://example.com/a1b2c3d4e5f6a7b8.txt",
"urlList": [
"https://example.com/blog/page-1",
"https://example.com/blog/page-2"
]
}
Batches are capped at 10,000 URLs per request. All submitted URLs must belong to the declared host.
3. Handle responses
| Code | Meaning | Action |
|---|---|---|
| 200 | Accepted | Nothing |
| 202 | Accepted, key pending validation | Check the key file is reachable |
| 400 | Malformed request | Check the JSON body |
| 403 | Key invalid | Key file missing or content mismatched |
| 422 | URL does not match the host | Filter the batch by host |
| 429 | Too many requests | Batch more, submit less often |
Submission discipline
The protocol rewards accuracy and punishes noise. Three rules keep a large site in good standing:
- Submit on real change only. Resubmitting unchanged URLs on a schedule is the fastest way to have your submissions discounted.
- Submit deletions too. A removed URL notified promptly clears from the index faster, which helps the pruning cycle described in the quality threshold.
- Batch by wave. One submission per publication wave, not one per page as it is written.
Where it fits
IndexNow is a complement, never a replacement. The sitemap remains the canonical inventory of the site and the basis for coverage reporting — see sitemap limits and index files. IndexNow shortens the delay between publishing and discovery on the engines that consume it. Neither changes whether a page deserves to be indexed, which remains a crawl demand question.
Frequently asked questions
Does Google support IndexNow?
No. The protocol is supported by Bing, Yandex, Seznam and Naver, which share submissions between them. For Google, discovery still happens through sitemaps, internal links and external links.
Does IndexNow guarantee my page gets indexed?
No. It only shortens the time until an engine learns the URL exists or changed. Indexation still depends on the perceived value of the page.
How many URLs can I submit at once?
Up to 10,000 per request, and every URL must belong to the host declared in the payload.