You hit publish. Your article is live. And then... you wait. Sometimes hours. Sometimes days. All while your freshest content sits invisible to search engines still running their slow, periodic crawl cycles.
This is the frustrating reality of traditional pull-based indexing. Search engine bots operate on their own schedule, revisiting your site whenever they feel like it. If you just updated a pricing page, launched a new product, or published a time-sensitive piece of content, that delay costs you visibility.
IndexNow solves this problem directly. Launched through a collaboration between Microsoft Bing and Yandex in 2021, IndexNow is an open-source protocol that flips the model entirely. Instead of waiting for crawlers to find your changes, you proactively push a notification to participating search engines the moment a URL is created, updated, or deleted. Think of it like the difference between waiting for a friend to check their mailbox versus sending them a text message. One is passive. The other gets results immediately.
For marketers, founders, and agencies managing content-heavy websites, IndexNow setup for websites has become a critical piece of a modern SEO stack. Whether you're publishing AI-optimized articles at scale, refreshing product pages, or managing a blog that needs to rank fast, getting IndexNow configured properly ensures your content reaches search indexes as quickly as possible.
As of 2026, participating search engines include Bing, Yandex, Naver, Seznam, and Yep. Google has not officially adopted IndexNow, though they've acknowledged testing similar approaches. Even without Google in the mix, faster indexing across Bing and its partner network has real, measurable impact on content discovery and traffic.
This guide walks you through every step of the IndexNow setup process: from understanding how the protocol works to generating your API key, submitting your first URL, integrating with your CMS, and scaling the whole system. By the end, you'll have a fully operational IndexNow integration running in the background, keeping search engines informed every time your content changes.
Let's get into it.
Step 1: Understand How IndexNow Works Under the Hood
Before you start generating keys and making API calls, it's worth taking five minutes to understand the mechanics. This isn't just theoretical context. Understanding how IndexNow works helps you configure it correctly and troubleshoot problems when they come up.
Traditional search engine crawling is a pull-based system. Search engine bots maintain a queue of URLs to visit, prioritize them based on factors like site authority and crawl frequency, and revisit pages on their own schedule. For a small, low-traffic site, that might mean a bot checks in every few weeks. For a high-authority site publishing daily, it might be every few hours. Either way, you have no control over the timing.
IndexNow is a push-based model. When a URL changes on your site, your server sends an HTTP request to the IndexNow API endpoint. That request contains the URL that changed and your API key for authentication. The participating search engines receive this notification and prioritize the URL for crawling. You're not bypassing quality evaluation. You're just making sure they know where to look, and when. For a deeper dive into the protocol itself, check out our guide on what the IndexNow protocol is and why it matters.
The three core components of IndexNow:
The API Key: A unique hexadecimal string between 8 and 128 characters that identifies your website. This key is used to authenticate your submissions and prevent unauthorized parties from submitting URLs on your behalf.
The Key File: A plain text file named after your key (e.g., abc123.txt) hosted at the root directory of your website. When a search engine receives your submission, it verifies your identity by checking that this file exists and contains the correct key string.
The Submission Endpoint: The IndexNow API accepts both single-URL GET requests and batch POST requests containing up to 10,000 URLs at a time. All requests go to api.indexnow.org/indexnow or directly to a participating search engine's endpoint.
One nuance worth understanding: IndexNow is a notification protocol, not an indexing guarantee. Search engines still evaluate content quality, relevance, and authority before adding pages to their index. What IndexNow eliminates is the discovery delay. Your content gets evaluated sooner because search engines know it exists sooner.
This matters especially for large sites. If you're managing thousands of pages, traditional crawl-based discovery is inefficient. Crawl budget is finite, and bots may never get to low-priority pages before they change again. IndexNow lets you direct attention exactly where it's needed, when it's needed, making it a powerful tool for crawl budget optimization at scale.
Once you understand this foundation, the rest of the setup process makes intuitive sense.
Step 2: Generate and Host Your IndexNow API Key
With the protocol mechanics clear, your first practical task is generating an API key and making it accessible on your website. This is the authentication layer that proves you own the domain you're submitting URLs for.
Generating your API key
You have two options here. The simplest is to visit indexnow.org/generate, which provides an official key generation tool that outputs a valid hexadecimal string. Alternatively, you can generate a GUID or UUID manually using any standard UUID generator. The key must be a hexadecimal string between 8 and 128 characters. No special characters, no spaces.
Copy the generated key and save it somewhere accessible. You'll use this string in two places: as the filename of your key file and inside the key file itself.
Creating and uploading the key file
Create a plain text file on your computer. Name it using your key string followed by .txt. For example, if your key is a1b2c3d4e5f6, your file should be named a1b2c3d4e5f6.txt.
Open the file and type (or paste) only the key string inside it. Nothing else. No extra spaces, no line breaks, no HTML, no byte order mark (BOM) characters. The file must contain exactly the key string and nothing more.
Upload this file to the root directory of your website. The root directory is the top-level folder that serves your homepage. Depending on your hosting setup, you can do this via FTP, your hosting control panel's file manager, or your CMS's media or file management tools. The goal is for the file to be publicly accessible at:
https://yourdomain.com/{your-key}.txt
Verifying the key file is accessible
Open a browser and navigate to that URL. You should see only the key string displayed in plain text. No HTML wrapper, no page template, just the raw string. If your CMS is wrapping the file in a page template or returning a 404, you'll need to adjust your hosting configuration to serve the file directly from the root.
A common pitfall here: some CMS platforms route all requests through their templating engine, which can intercept your .txt file and wrap it in HTML. If this happens, you may need to add a rewrite rule to your server configuration (Apache .htaccess or Nginx config) to serve the file directly. This is one reason many teams turn to indexing automation tools that handle these technical details out of the box.
Also confirm the file returns a 200 HTTP status code. You can check this using browser developer tools or a tool like curl -I https://yourdomain.com/{your-key}.txt in your terminal.
Security note: Treat your API key like a password. Anyone who has it can submit URLs on your behalf to participating search engines. Keep it out of public repositories and don't share it unnecessarily. If you suspect your key has been compromised, generate a new one and update both the key file and any integrations that reference it.
Once your key file is live and returning a clean 200 response, you're ready to make your first submission.
Step 3: Submit Your First URL via the IndexNow API
With your key file hosted and verified, it's time to make your first IndexNow submission. This step lets you test the integration manually before automating it, which is the right order of operations. Confirm the basics work before building anything on top of them.
Single URL submission via GET request
The simplest submission method is a GET request. The structure is:
https://api.indexnow.org/indexnow?url=https://yourdomain.com/your-page&key=your-api-key
You can test this directly in a browser by pasting the URL with your actual domain and key substituted in. Alternatively, use cURL from your terminal for a cleaner test:
curl "https://api.indexnow.org/indexnow?url=https://yourdomain.com/your-page&key=your-api-key"
Replace yourdomain.com/your-page with a real URL on your site and your-api-key with your actual key string. Submit a URL that already exists and is publicly accessible.
Batch submission via POST request
For submitting multiple URLs at once, use the POST method with a JSON payload. The structure looks like this:
POST https://api.indexnow.org/indexnow
Content-Type: application/json
The JSON body should follow this format:
{ "host": "yourdomain.com", "key": "your-api-key", "keyLocation": "https://yourdomain.com/your-api-key.txt", "urlList": [ "https://yourdomain.com/page-one", "https://yourdomain.com/page-two" ] }
The host field is your domain without the protocol. The keyLocation field is optional but recommended. The urlList array can contain up to 10,000 URLs per request.
Here's a cURL example for batch submission:
curl -X POST "https://api.indexnow.org/indexnow" -H "Content-Type: application/json" -d '{"host":"yourdomain.com","key":"your-api-key","urlList":["https://yourdomain.com/page-one","https://yourdomain.com/page-two"]}'
Understanding response codes
The API returns standard HTTP status codes. Here's what each means:
200 OK: The submission was received and accepted successfully. This is what you want to see.
202 Accepted: The submission was received and is being processed. Also a success state.
400 Bad Request: Your request is malformed. Check that your URL is properly encoded and your JSON structure is valid.
403 Forbidden: Authentication failed. This usually means the key file is inaccessible, returning a non-200 status, or the key in the file doesn't match the key in your request.
422 Unprocessable Entity: The URL you submitted doesn't belong to the host where your key file is hosted. IndexNow will only accept submissions for URLs on the same domain as the key file.
That last point is a common pitfall: if your key file is hosted at yourdomain.com and you try to submit a URL from subdomain.yourdomain.com or a completely different domain, you'll get a 422 error. Each domain or subdomain needs its own key file. For a more detailed walkthrough of the submission process and common errors, see our guide on how to use the IndexNow protocol.
A 200 or 202 response on your first submission confirms the integration is working correctly. You're now ready to automate this process within your publishing workflow.
Step 4: Integrate IndexNow Into Your CMS or Publishing Workflow
Manual submissions are useful for testing, but the real value of IndexNow comes from automation. Every time you publish a new page, update existing content, or delete a URL, the submission should fire automatically without any manual intervention. Here's how to set that up across different publishing environments.
WordPress integration
WordPress users have the easiest path. Microsoft developed an official IndexNow plugin for WordPress that handles the entire process. To set it up:
1. Go to your WordPress admin panel, navigate to Plugins, and search for "IndexNow." Install and activate the official plugin by Microsoft.
2. Once activated, go to the plugin settings and enter your API key. If you haven't generated one yet, the plugin can generate one for you and will automatically create and host the key file in your site's root directory.
3. Configure which content types trigger submissions. By default, the plugin submits URLs when posts and pages are published or updated. Verify these settings match your content structure.
4. Test by publishing or updating a post and checking the plugin's submission log to confirm it fired correctly.
The plugin handles both the key file hosting and automatic submission, which removes most of the technical overhead for WordPress users.
Custom CMS and headless setups
For custom-built or headless CMS environments, you'll need to add a post-publish hook to your server-side code. The approach varies by stack, but the pattern is consistent: after a content save or publish event, trigger an HTTP POST request to the IndexNow API with the affected URL in the payload.
In a Node.js environment, this might be a simple function that fires after your content save handler. In Python, a post-save signal. In PHP, an action hook. The key is attaching the IndexNow submission to your existing publish/update events rather than running it as a separate manual process. If you're evaluating tools to streamline this, our roundup of the best indexing tools for websites covers several options worth considering.
Make sure your integration covers all three content change scenarios: new page creation, content updates, and URL deletions. Deletions are often overlooked but matter for keeping search engine indexes clean and accurate.
Using a platform with built-in IndexNow support
For teams publishing AI-optimized content at scale, managing IndexNow configuration manually across a custom stack adds unnecessary friction. Platforms like Sight AI include built-in IndexNow integration alongside automated sitemap management, so every piece of content you publish gets submitted and indexed without any manual configuration. This is particularly valuable when you're running content operations at volume and need the entire pipeline from creation to indexing to run automatically.
What to verify after integration: Publish a test page through your normal workflow and confirm the IndexNow submission fires without any manual action on your part. Check your submission logs or Bing Webmaster Tools to confirm the URL was received. If the submission doesn't fire, review your hook configuration and ensure the API key matches the one in your hosted key file.
Step 5: Validate Submissions and Monitor Indexing Results
Getting IndexNow set up is only half the job. Knowing whether it's actually working requires a monitoring layer. Without visibility into submission status and indexing outcomes, you're flying blind.
Bing Webmaster Tools
Your primary validation tool is Bing Webmaster Tools. If you haven't already, verify your website there and connect it to your domain. Once verified, navigate to the URL Submission section. You'll find an IndexNow submission report that shows submitted URLs, submission timestamps, and processing status.
This report is your ground truth for whether submissions are being received. If you submit a URL and it doesn't appear here within a reasonable timeframe, there's likely a configuration issue to investigate: a broken key file, a malformed request, or an authentication error.
Cross-referencing with your XML sitemap
IndexNow handles real-time push notifications, but your XML sitemap serves a different function: it gives search engines a comprehensive, crawlable map of your entire site structure. These two tools are complementary, not interchangeable. If you're looking to streamline your sitemap workflow, our guide on sitemap automation for websites covers how to keep sitemaps current without manual effort.
Periodically cross-reference your IndexNow submission logs against your sitemap to confirm that all important URLs are being submitted and none are falling through the cracks. If you have pages that are in your sitemap but never triggering IndexNow submissions, investigate whether your CMS integration is covering all content types.
Setting up submission logging
Build a simple logging mechanism to track your IndexNow activity over time. At minimum, log the submission timestamp, the URL submitted, and the HTTP response code received. This can be as simple as appending to a server log file, writing to a database table, or piping data into a spreadsheet via a webhook.
Logging serves two purposes: it helps you catch errors quickly (a spike in 403 responses might indicate your key file was accidentally overwritten) and it gives you a historical record for performance analysis.
Measuring actual indexing speed
After implementing IndexNow, run a before-and-after comparison on indexing speed. Publish a new page and note the time. Then search Bing for the exact URL or a unique phrase from the content and track when it first appears in results. Compare this to the time-to-index you experienced before IndexNow was in place. For teams that need even faster results, explore our overview of instant indexing solutions that go beyond the basics.
One important caveat: IndexNow confirms receipt of your notification, not indexing. Search engines still evaluate content quality, relevance, and authority before adding pages to their index. If a page isn't getting indexed despite successful submissions, the issue is content quality or crawlability, not IndexNow configuration.
Track index coverage rate and crawl stats in Bing Webmaster Tools over time to measure the broader impact of your IndexNow implementation on site-wide indexing health.
Step 6: Optimize and Scale Your IndexNow Strategy
Once your basic IndexNow setup is running smoothly, there are several ways to refine the strategy and make it more effective as your site grows.
Submit only genuinely changed URLs
IndexNow is not a tool for gaming search engines by constantly re-submitting the same URLs. Search engines track submission patterns, and excessive submissions of unchanged content can lead to throttling or your submissions being deprioritized. Only trigger a submission when content has meaningfully changed: a new post is published, an existing page is updated with new information, or a URL is deleted.
Avoid setting up integrations that submit every URL on every page load or on trivial changes like timestamp updates. Quality and relevance of submissions matter.
Pair IndexNow with a well-structured XML sitemap
A healthy IndexNow strategy doesn't replace your XML sitemap. It works alongside it. Your sitemap gives search engines a complete picture of your site's structure and helps them understand the relationship between pages. IndexNow gives them real-time notifications about changes. Together, they provide both breadth and speed in content discovery.
Keep your sitemap updated and accurate. Remove deleted URLs promptly. Use sitemap priority and change frequency attributes to signal which content matters most.
Handle bulk updates with rate limiting and queuing
If you're running large-scale content operations, you may occasionally need to submit hundreds or thousands of URLs at once. For example, after a site migration, a bulk content refresh, or a major structural change. In these scenarios, use the batch POST method and implement a queue system to manage submissions in controlled batches rather than firing everything simultaneously.
The IndexNow API supports up to 10,000 URLs per batch request, which is generous. But even within that limit, spreading large submissions over time reduces the risk of triggering rate limits or having your submissions flagged as unusual activity. Teams exploring open-source approaches to this challenge should review our analysis of open source solutions for web indexing for additional options.
Complement IndexNow with Google-specific indexing strategies
Because Google doesn't currently participate in IndexNow, you'll need a parallel strategy for Google indexing. Google's own Indexing API is available for certain content types (primarily job postings and live stream content officially, though some SEOs use it more broadly). For general content, Google Search Console's URL inspection tool and a well-maintained sitemap remain your primary levers.
Think of IndexNow as your Bing and partner network strategy, and maintain your Google-specific approach separately. The two are complementary parts of a complete indexing strategy.
IndexNow and GEO strategy
Here's where things get interesting for content teams focused on AI visibility. Generative Engine Optimization (GEO) is about getting your content cited and referenced by AI models like ChatGPT, Claude, and Perplexity. These models pull from indexed web content. The faster your content gets indexed by search engines, the sooner it becomes available for AI models to discover, process, and reference.
IndexNow is therefore not just an SEO tool. It's part of your GEO pipeline. Faster indexing means faster AI visibility. For teams building content strategies around AI mentions and brand citations, understanding optimizing content for AI search alongside IndexNow is increasingly important to act on.
Your Complete IndexNow Setup Checklist
With IndexNow configured and integrated into your publishing workflow, you've eliminated one of the most persistent bottlenecks in content SEO: the gap between publishing and discovery. Here's a quick checklist to confirm everything is in place before you call this done.
API key generated and hosted: Your key file is live at https://yourdomain.com/{your-key}.txt and returns only the key string with a 200 status code.
First manual submission tested: You've submitted a URL via GET or POST and received a 200 or 202 response from the IndexNow API.
CMS integration active: Your WordPress plugin or custom hook is firing automatically on publish and update events, with no manual intervention required.
Bing Webmaster Tools configured: Your site is verified, and the URL Submission report is showing incoming IndexNow submissions.
Logging in place: You have a mechanism tracking submission timestamps, URLs, and response codes for ongoing monitoring.
XML sitemap aligned: Your sitemap is current, accurate, and complementing your IndexNow push notifications.
Scaling strategy defined: You have a plan for handling bulk updates and a clear policy on what triggers a submission.
For teams publishing content at scale, managing all of this manually across a custom stack is time-consuming work that pulls focus away from what actually matters: creating content that earns rankings, traffic, and AI citations. Platforms like Sight AI handle the IndexNow integration and automated sitemap management natively, so your entire content-to-index pipeline runs without manual configuration.
The faster your content gets indexed, the sooner it can rank, drive traffic, and get cited by AI models. But indexing speed is just one piece of the puzzle. You also need to know how AI models are talking about your brand once that content is live.
Start tracking your AI visibility today and see exactly where your brand appears across top AI platforms like ChatGPT, Claude, and Perplexity. Stop guessing how AI models talk about your brand and start building a content strategy grounded in real visibility data.



