How to Use IndexNow

A step-by-step guide to generating an IndexNow key, verifying your website, submitting changed URLs, and checking that your setup is ready to use.

What Is IndexNow?

IndexNow is an open protocol that lets website owners notify participating search engines when pages on their sites are added, updated, or deleted.

Normally, a search engine must discover changes by crawling your website. IndexNow gives your site another way to announce those changes directly.

IndexNow does not guarantee that a page will be crawled, indexed, or ranked. It simply provides search engines with a direct signal that a URL has changed.

IndexNow does not replace your sitemap. Your XML sitemap provides a broader inventory of your site's URLs, while IndexNow can notify search engines about recent changes.

1 Generate an IndexNow Key

The first step is creating a key that IndexNow can use to verify that you control the website whose URLs you submit.

IndexNow keys must be between 8 and 128 characters long. The easiest option is to generate a random key automatically.

Use the IndieWebTools IndexNow Generator

Our generator creates a random IndexNow key and a ready-to-upload verification file directly in your browser.

Generate an IndexNow Key

2 Create the Verification File

Your key must normally be placed inside a UTF-8 text file. The filename should match the key.

For example, if your key were:

7f91d852c06b4a29b132ee73d01dcb18

your file would be named:

7f91d852c06b4a29b132ee73d01dcb18.txt

and the contents of that file would simply be:

7f91d852c06b4a29b132ee73d01dcb18

No HTML markup is required.

3 Upload the Key File

The simplest and recommended setup is to upload the key file to the root of your website.

If your site is:

https://www.example.com/

your verification file would look like:

https://www.example.com/7f91d852c06b4a29b132ee73d01dcb18.txt

Open that URL in your browser. If the file loads and displays the same key contained in the filename, your basic verification setup is in place.

Using Netlify or another static host? Put the key file alongside files such as your index.html, robots.txt, and sitemap.xml so that it is deployed at the site's root.

4 Check Your Setup

Before submitting URLs, check that your domain, key, and verification-file location match.

IndieWebTools includes an IndexNow checker that constructs the expected verification URL and helps you inspect your setup for common configuration mistakes.

Check IndexNow Setup

5 Submit a Changed URL

Once the key file is available, you can notify IndexNow when a page is added, substantially updated, or deleted.

A basic request follows this structure:

https://api.indexnow.org/indexnow?url=URL-CHANGED&key=YOUR-KEY

For example:

https://api.indexnow.org/indexnow?url=https%3A%2F%2Fwww.example.com%2Fnew-page.html&key=YOUR-KEY

The URL being submitted should belong to the host associated with your key file.

6 Submit Multiple URLs

Sites that publish or update many pages can use the IndexNow API to submit URLs in batches instead of sending them one at a time.

A JSON request can follow this general structure:

{
  "host": "www.example.com",
  "key": "YOUR-KEY",
  "keyLocation": "https://www.example.com/YOUR-KEY.txt",
  "urlList": [
    "https://www.example.com/page-one.html",
    "https://www.example.com/page-two.html",
    "https://www.example.com/page-three.html"
  ]
}

IndexNow currently supports up to 10,000 URLs in a single POST request.

When Should You Use IndexNow?

IndexNow is designed to report actual URL changes. Good times to submit a URL include:

There is generally no reason to repeatedly submit URLs that have not changed.

IndexNow vs. XML Sitemaps

IndexNow and XML sitemaps solve related but different problems.

XML sitemap: provides search engines with a structured list of canonical URLs on your website.

IndexNow: provides a direct notification when specific URLs change.

You can use both. A sitemap helps search engines understand the broader URL inventory of your site, while IndexNow can provide more immediate change notifications.

You can also check your sitemap with the IndieWebTools Sitemap Validator.

Common IndexNow Problems

Key file returns 404

Check that the text file was uploaded to the correct directory and that its filename exactly matches your key.

Key doesn't match

The contents of the verification file must match the IndexNow key being used for the submission.

Wrong hostname

Pay attention to the exact host you are using. For example, www.example.com and example.com may be configured differently.

Submission received but page isn't indexed

This is not necessarily an error. IndexNow notification does not guarantee crawling or indexing. Search engines still make their own decisions about whether a URL should be crawled, indexed, or shown in search results.

IndexNow HTTP Response Codes

When working directly with the API, these are some of the responses you may encounter:

A successful submission means the notification was received. It does not guarantee that the URL will subsequently be indexed.

Frequently Asked Questions

Is IndexNow free?

Yes. IndexNow is an open protocol and does not charge website owners to submit URL-change notifications.

Do I still need a sitemap?

A sitemap remains useful even when you use IndexNow. The two mechanisms can work together.

Does IndexNow guarantee Google or Bing rankings?

No. IndexNow is a discovery and change-notification mechanism. It does not guarantee crawling, indexing, ranking, or traffic.

Do I need to submit every page?

No. IndexNow is intended primarily for URLs that have actually been added, changed, or deleted.

How do I know whether IndexNow is working?

First verify that your key file is publicly accessible. You can also use Bing Webmaster Tools to inspect IndexNow submissions and related information.

IndexNow Tools

Ready to set it up?

IndexNow Key Generator — generate a key and verification file.

IndexNow Checker — inspect your domain, key, and verification-file setup.

Sitemap Validator — check your XML sitemap for common problems.

Robots.txt Checker — inspect your site's robots.txt configuration.