Skip to content

A sitemap that stays correct, plus IndexNow

Generate the sitemap from your real pages with true dates, and ping IndexNow when content changes.

  • Free, no sign-up
  • 45 to 90 minutes with an agent
  • By Devvrat Hans
  • Version 1.0, updated Oct 26, 2026

1Your site and stack

Optional. The prompt adapts as you type; leave a field blank and the agent works it out.

2Copy it into your agent

sitemap-and-indexnow.md65 lines, about 948 tokens

Paste into any coding agent: Claude Code, Cursor, Codex, Copilot, Windsurf or Cline.

# A sitemap that stays correct, plus IndexNow

A sitemap tells search engines which pages of the production site exist and when they changed. Hand-written or stale sitemaps list pages that redirect, miss new ones, and stamp every URL with today's date, which teaches crawlers to ignore the dates. Generate it from the same routes and data the site serves, and tell search engines about changes as they happen with IndexNow.

Site: not given. Find the production URL in the project config, or ask me.

## Ground rules

1. Read before you write. Explore the parts of the codebase this job touches and tell me what is already in place.
2. Plan, then stop. Give me a numbered plan: what you will change, in which files, and why. Wait for my approval before editing anything.
3. Fix things at their source (the shared layout, the config, the generator), not with one-off patches page by page.
4. Keep the project's conventions: its framework APIs, file layout, naming and code style. Add no new dependency without asking.
5. Where something is already done well, say so and leave it alone.

## You will not

- Edit `.env` files, secrets or API keys, or print their values.
- Deploy, push, merge or publish anything.
- Delete data, or run migrations or scripts against a production database.
- Add tracking, third-party scripts or links to any site I did not ask for.
- Change copy, design or behaviour that this job does not need.
- Submit anything to Google Search Console or Bing Webmaster Tools on my behalf.

## Your stack

- Framework: Work out the framework, router and build output from the project files (package.json, lockfiles, framework config) before planning, and say which you found.
- Host: Work out where the site is hosted from the config files (vercel.json, netlify.toml, wrangler config, Dockerfile, fly.toml) and say which you found.

## Steps

### 1. Compare the sitemap with reality

Find how the sitemap is built today. List URLs in it that redirect, return 404, are `noindex`, need sign-in, or have a different canonical, and public pages that are missing. Show me the counts.

### 2. Generate it from the source

- Build the sitemap from the route list and the database or content files, with the same rules the pages use to decide whether they are indexable (a list page with too few items that is `noindex` must not be in the sitemap either).
- `lastmod` is the real date the page's content changed (the post's updated date, the newest item on a list page), never the build time. Leave it out rather than invent it.
- Use canonical URLs only. Split into a sitemap index if it passes 50,000 URLs or 50 MB.
- Reference it from robots.txt with a `Sitemap:` line.

### 3. IndexNow

Add IndexNow: generate a key, serve the key file at `/{key}.txt`, and when content is published, updated or deleted, send the changed URLs to `https://api.indexnow.org/indexnow` (in batches, after the change is live, never on every request). Keep the key in configuration, not hard-coded. Bing, Yandex and other engines use it; Google does not, and relies on the sitemap.

### 4. Guard it

Add a test that the sitemap contains no URL that is `noindex`, private or redirected, and that `lastmod` values come from content dates.

## Done means

- [ ] The sitemap is generated from the real routes and data.
- [ ] It holds no redirected, 404, noindex, private or non-canonical URLs.
- [ ] lastmod is the content's real change date, or absent.
- [ ] robots.txt points at the sitemap.
- [ ] IndexNow pings changed URLs after publishing, with the key file served.

## Report back

When you finish, give me:

- what you changed, file by file;
- anything you skipped, and why;
- anything I must do by hand (DNS records, dashboards, accounts, deploys);
- how to check each change on the live site.

One-line version

For agents that can read a URL. It fetches this prompt with your settings applied.

Read https://abacklaunch.com/prompts/sitemap-and-indexnow.md and follow it for this project.

3Check the result

When the changes are live, run these free checks. Add your site URL above and each one opens already running on it.

This prompt will not

  • Edit .env files, secrets or API keys, or print their values.
  • Deploy, push, merge or publish anything.
  • Delete data, or run migrations or scripts against a production database.
  • Add tracking, third-party scripts or links to any site I did not ask for.
  • Change copy, design or behaviour that this job does not need.
  • Submit anything to Google Search Console or Bing Webmaster Tools on my behalf.

It reads your code first, shows you a plan, and waits for your approval before it changes anything.

What you get

  • A sitemap generated from your real pages and their true change dates
  • Private, noindex and redirected URLs removed
  • IndexNow notifications when content changes
  • A test that keeps bad URLs out of the sitemap

How to use this prompt

  1. 1

    Describe your stack

    Add your site, framework and host. The prompt adapts; blank fields are left for the agent to work out.

  2. 2

    Paste it into your agent

    Open your project in Claude Code, Cursor, Codex, Copilot, Windsurf or Cline, and paste the prompt or the one-line version.

  3. 3

    Approve the plan

    The agent reads your code, shows you a plan with the files it will touch, and waits. Change anything you disagree with.

  4. 4

    Check the result

    When the changes are live, run the free checks below on your site to confirm each fix.

What the agent does

A sitemap tells search engines which pages of the production site exist and when they changed. Hand-written or stale sitemaps list pages that redirect, miss new ones, and stamp every URL with today's date, which teaches crawlers to ignore the dates. Generate it from the same routes and data the site serves, and tell search engines about changes as they happen with IndexNow.

  1. 1. Compare the sitemap with reality

    Find how the sitemap is built today. List URLs in it that redirect, return 404, are noindex, need sign-in, or have a different canonical, and public pages that are missing. Show me the counts.

  2. 2. Generate it from the source

    • Build the sitemap from the route list and the database or content files, with the same rules the pages use to decide whether they are indexable (a list page with too few items that is noindex must not be in the sitemap either).
    • lastmod is the real date the page's content changed (the post's updated date, the newest item on a list page), never the build time. Leave it out rather than invent it.
    • Use canonical URLs only. Split into a sitemap index if it passes 50,000 URLs or 50 MB.
    • Reference it from robots.txt with a Sitemap: line.
  3. 3. IndexNow

    Add IndexNow: generate a key, serve the key file at /{key}.txt, and when content is published, updated or deleted, send the changed URLs to https://api.indexnow.org/indexnow (in batches, after the change is live, never on every request). Keep the key in configuration, not hard-coded. Bing, Yandex and other engines use it; Google does not, and relies on the sitemap.

  4. 4. Guard it

    Add a test that the sitemap contains no URL that is noindex, private or redirected, and that lastmod values come from content dates.

Done means

  • The sitemap is generated from the real routes and data.
  • It holds no redirected, 404, noindex, private or non-canonical URLs.
  • lastmod is the content's real change date, or absent.
  • robots.txt points at the sitemap.
  • IndexNow pings changed URLs after publishing, with the key file served.

Questions

Does lastmod matter?

Google says it uses lastmod when it is consistently accurate. Stamping every URL with today's date makes it ignore the field for your whole site.

Does Google support IndexNow?

No. Bing, Yandex, Seznam, Naver and others do. For Google, an accurate sitemap and good internal links are what count.

Should noindex pages be in the sitemap?

No. The sitemap should list only pages you want indexed; listing noindex pages sends mixed signals.

Does this prompt add links to Aback Launch to my site?

No. Nothing in the prompt mentions Aback Launch or asks your agent to link to us. The only exception is an optional badge step, which stays off unless you tick it. Some prompt libraries slip their own link into your codebase by default; we think that should always be your choice.

Which coding agents does it work with?

Claude Code, Cursor, Codex, GitHub Copilot, Windsurf, Cline, and any agent that can read your project and edit files. You can copy it as a plain prompt, save it as a Claude Code skill or a Cursor rule, or add it to AGENTS.md.

Is it safe to run on my real codebase?

The prompt makes the agent read first, show a plan and wait for your approval, and it forbids touching secrets, deploying and deleting data. Still review the changes and run your tests before you deploy, as with any change.

Changelog

  • v1.0First version.

Launch your startup on Aback Launch

Get a launch page that search engines and AI assistants can read, a place in the weekly launch list, and a review by a real person. Free to join.