IndexNow protocol reference

IndexNow,
as documented

What indexnow.org's documentation says about submitting URLs, proving ownership with a key file and reading the response codes. Quoted from the page on 2026-10-07.

IndexNow is a protocol for telling participating search engines that URLs on your site were added, updated or deleted. This page lists what its documentation says about the request formats, the key and the key file, and the responses, with the wording taken from the documentation page.

What the documentation says

TopicWhat it saysSource
What a submission is for “url-changed is a URL of your website which has been added, updated, or deleted.”IndexNow's single-URL request carries one such URL and your key. IndexNow docs
Verified 2026-10-07
URL format “URL must be URL-escaped and encoded and please make sure that your URLs follow the RFC-3986 standard for URIs.” IndexNow docs
Verified 2026-10-07
Key length “Your-key should have a minimum of 8 and a maximum of 128 hexadecimal characters.”The same page then lists the allowed characters, quoted in the next row; the two sentences are worded differently, so check the key against the list that follows. IndexNow docs
Verified 2026-10-07
Allowed key characters “The key can contain only the following characters: lowercase characters (a-z), uppercase characters (A-Z), numbers (0-9), and dashes (-).” IndexNow docs
Verified 2026-10-07
Sending a request “You can issue the HTTP request using your browser, wget, curl, or any other mechanism of your choosing.” IndexNow docs
Verified 2026-10-07
What a 200 means “The HTTP 200 response code only indicates that the search engine has received your URL.”The documentation says a successful single-URL request returns HTTP 200; it does not say the URL was crawled or indexed. IndexNow docs
Verified 2026-10-07
If it is not 200 “if you receive a different response, verify that you don’t submit too often, that the key and URL are valid and resubmit the request.” IndexNow docs
Verified 2026-10-07
Batch size “You can submit up to 10,000 URLs per post, mixing http and https URLs if needed.”The POST body in the documentation's example has host, key and urlList fields. IndexNow docs
Verified 2026-10-07
Recommended practice “The recommended way is to automate submission of URLs as soon as the content is added, updated, or deleted up to some limit; see best practices for user generated content in the Frequently Asked Questions.”The documentation sends readers to its FAQ for the limits; this page does not quote the FAQ. IndexNow docs
Verified 2026-10-07
Proving ownership “To submit URLs, you must "prove" ownership of the host for which URLs are being submitted by hosting at least one text file within the host.” IndexNow docs
Verified 2026-10-07
What engines do with the key “Once you submit your URLs to search engines, search engines will crawl the key file to verify ownership and use the key until you change the key.” IndexNow docs
Verified 2026-10-07
Keep the key private “Only you and the search engines should know the key and your file key location.” IndexNow docs
Verified 2026-10-07
Option 1: root key file “You must host a UTF-8 encoded text key file {your-key}.txt listing the key in the file at the root directory of your website.” IndexNow docs
Verified 2026-10-07
Option 2: key file elsewhere “You can also host one to many UTF-8 encoded text key files in other locations within the same host and you must tell search engines the location of this text key file in each IndexNow notification by specifying the location using the keyLocation variable.” IndexNow docs
Verified 2026-10-07
Option 2 limits the URLs “In this option 2, the location of a key file determines the set of URLs that can be included with this key.”The documentation's example: a key file in /catalog/ can include URLs starting with that folder but not URLs in /help/. IndexNow docs
Verified 2026-10-07
Option 2 example “A key file located at http://example.com/catalog/key12457EDd.txt can include any URLs starting with http://example.com/catalog/ but cannot include URLs starting with http://example.com/help/” IndexNow docs
Verified 2026-10-07
Invalid URLs under option 2 “URLs that are not considered valid in option 2 may not be considered for indexing.” IndexNow docs
Verified 2026-10-07
Which option to use “It is strongly recommended that you use Option 1 and place your file key at the root directory of your web server.” IndexNow docs
Verified 2026-10-07
Response 200 “URL submitted successfully”Shown in the documentation's response table next to 200 OK. IndexNow docs
Verified 2026-10-07
Response 202 “URL received. IndexNow key validation pending.”Shown next to 202 Accepted. IndexNow docs
Verified 2026-10-07
Response 400 “Invalid format”Shown next to 400 Bad request. IndexNow docs
Verified 2026-10-07
Response 403 “In case of key not valid (e.g. key not found, file found but key not in the file)”Shown next to 403 Forbidden. IndexNow docs
Verified 2026-10-07
Response 422 “In case of URLs which don’t belong to the host or the key is not matching the schema in the protocol”Shown next to 422 Unprocessable Entity. IndexNow docs
Verified 2026-10-07
Response 429 “Too Many Requests (potential Spam)”Shown next to 429 Too Many Requests. IndexNow docs
Verified 2026-10-07
Sharing between engines “Search engines adopting the IndexNow protocol agree that submitted URLs will be automatically shared with all other participating search engines.” IndexNow docs
Verified 2026-10-07
Joining as an engine “To participate, search engines must have a noticeable presence in at least one market or be closely linked to the search market and make a significant contribution to the number of url submissions.”This is the documentation's requirement for search engines that adopt the protocol, not for site owners. IndexNow docs
Verified 2026-10-07

Read on 2026-10-07. The documentation page showed no last-updated date. Notes under a quote are close paraphrases of the same page. This page covers only what that page documents: it does not list the participating search engines, and it says nothing about rankings.

Examples

The documentation's request for one URL. Replace the placeholders with the host name the search engine provides, the changed URL and your key.

https://<searchengine>/indexnow?url=url-changed&key=your-key

Its POST request for a set of URLs, with the optional keyLocation field from its option 2. The documentation leaves the key value blank in this example; YOUR-KEY is ours.

POST /indexnow HTTP/1.1
Content-Type: application/json; charset=utf-8
Host: <searchengine>
{
  "host": "www.example.com",
  "key": "YOUR-KEY",
  "keyLocation": "https://www.example.com/myIndexNowKey63638.txt",
  "urlList": [
    "https://www.example.com/url1",
    "https://www.example.com/folder/url2",
    "https://www.example.com/url3"
  ]
}

Build a key, the key file and these requests with the free IndexNow generator. It only builds the request; you send it. For the sitemap side of discovery, see Google's documented sitemap rules and the XML sitemap validator.

Rules to remember

  • The documentation says to use only the characters a-z, A-Z, 0-9 and dashes in a key, with 8 to 128 characters.
  • It says the host must be proved by a key file, and strongly recommends the root of the host.
  • It says a 200 response only means the search engine has received the URL.

How Google treats redirects and status codes: Google HTTP status codes guide.

Questions

What is IndexNow, according to its documentation?

The documentation describes a way to tell search engines that a URL of your website has been added, updated or deleted, either one URL per HTTP request or a set of up to 10,000 URLs in a POST with a JSON body. It says search engines that adopt the protocol agree to share submitted URLs with all other participating engines.

Does a 200 response mean my page is indexed?

No. The documentation says the HTTP 200 response code only indicates that the search engine has received your URL. It does not say a received URL will be crawled or indexed.

How do I prove I own the host?

By hosting a UTF-8 text key file that lists the key. The documentation prefers the root of the host, named {your-key}.txt. It also allows key files elsewhere on the same host, as long as every notification names the location with keyLocation, and then only URLs under that file's folder are valid.

What do the response codes mean?

The documentation's table lists 200 (URL submitted successfully), 202 (URL received, key validation pending), 400 (invalid format), 403 (key not valid, for example key not found or file found but key not in the file), 422 (URLs that do not belong to the host, or a key not matching the protocol schema) and 429 (too many requests, potential spam).

Does this page say which search engines take part?

No. The documentation page quoted here describes the protocol and the requirements for engines to join, and does not list the participating engines. This page does not name them or say that any engine does or does not use IndexNow.

How current is this page?

Every row was read from the documentation page on 2026-10-07. The page showed no last-updated date. IndexNow can change its documentation, so treat the linked page as the final word.

Sources

Let Balzac write the articles.

Type your website. Balzac finds the searches you can win, writes articles built to rank on Google and get cited by ChatGPT, and publishes them for you.

3 free articles · No card needed