IndexNow quickly notifies search engines that support new, updated, or deleted URLs. Site ownership is verified with a UTF-8 key file. Either a single URL GET or multiple URLs POST can be used; HTTP 200/202 indicates the request was received, but does not guarantee indexing.
HTTP 200 OK
HTTP 202 Accepted
HTTP 400 Bad Request
HTTP 403 Forbidden
HTTP 422 Unprocessable Entity
HTTP 429 Too Many RequestsIndexNow quickly notifies search engines that support new, updated, or deleted URLs. Site ownership is verified with a UTF-8 key file. Either a single URL GET or multiple URLs POST can be used; HTTP 200/202 indicates the request was received, but does not guarantee indexing.
Do not submit indexes until HTTP/HTTPS, www and canonical signals are combined on a single URL.
Test 200 response, robots, noindex, canonical, auth, WAF and render status.
Separate single URL, bulk sitemap, IndexNow, or custom API usage by search engine and content type.
Follow the webmaster reports in a dated format without counting the submission response as an index guarantee.
Do not show IndexNow as the official Google index API.
Meaning: URL notification has been received successfully.
Possible cause: Normal result.
Meaning: The URL list was retrieved and may be awaiting verification.
Possible cause: New key/host or process queue.
Meaning: The request format is invalid.
Possible cause: The JSON, host, URL, or key field is corrupted.
Meaning: Key could not be validated.
Possible cause: Key file not found, wrong location or content.
Meaning: URL/host key relationship was not accepted.
Possible cause: Another host URL or keyLocation is incompatible.
Meaning: Too many requests were sent.
Possible cause: Retry/backoff is not available or spamming again.
Meaning: Key URL returns theme/404 HTML.
Possible cause: Rewrite or incorrect document root.
Meaning: IndexNow only notifies of changes.
Possible cause: Normal index decision.
No records matching this expression were found.
python3 -c "import secrets; print(secrets.token_hex(16))"Generates a 32-character random IndexNow key.
printf '%s' 'INDEXNOW_KEY' > INDEXNOW_KEY.txtWrites the key value to a plain UTF-8 file.
curl -sS -i https://example.com/INDEXNOW_KEY.txtDisplays the status, content type, and content of the key file.
curl -G 'https://api.indexnow.org/indexnow' --data-urlencode 'url=https://example.com/new-url' --data-urlencode 'key=INDEXNOW_KEY'Submits Single URL to IndexNow endpoint.
curl -sS -X POST 'https://api.indexnow.org/indexnow' -H 'Content-Type: application/json; charset=utf-8' --data '{"host":"example.com","key":"INDEXNOW_KEY","keyLocation":"https://example.com/INDEXNOW_KEY.txt","urlList":["https://example.com/a","https://example.com/b"]}' -iSends multiple URLs with a JSON body.
php -r '$u="https://api.indexnow.org/indexnow?url=".rawurlencode("https://example.com/new-url")."&key=INDEXNOW_KEY"; echo file_get_contents($u);'Tests a simple single URL call via PHP.
Key alone in databaseProvide key value at `https://example.com/KEY.txt` in plain text.Wait for API response while content is being recorded.Add URL to queue; send in bulk and with retry controls via cron/worker.{"host":"example.com","urlList":["https://other.com/x"]}host and urlList should be within the same verified site scope.Call IndexNow on each page view.Notify only when content is added, meaningfully updated, or deleted.IndexNow supported plugin can notify automatically in content changes.
The change event in the model/service layer can be written to the queue.
Notification can be made when new software, blog or category pages are published.
No. Submission and verification tools provide a discovery signal; the search engine's indexing and ranking decision are separate.
There is no fixed time. Technical access may take days or longer depending on factors such as site quality, internal links, sitemap, and crawl priority.
Usually no. Instead of re-spamming, issues with robots, canonical, HTTP, content, and internal linking should be fixed.
It assists in Sitemap URL discovery; crawlability, canonical, content quality, and site structure are still required.
IndexNow is used for supported search engines. On the Google side, Search Console, sitemap, and official Indexing API flow are separate.
No. It should contain only the canonical and 200 returning URLs that are intended to be indexed.
Domain, URL, key and file paths should be changed according to the project and tested in a staging or controlled environment.
We organize Search Console, Bing Webmaster, Yandex Webmaster, sitemap, robots, canonical, IndexNow, WordPress, custom PHP and WISECP indexing flows together.