# Submit URLs automatically with IndexNow | Creght AI Documentation

> 🚀 Turn this on and Creght automatically tells search engines which URLs changed every time you publish or edit content. No more submitting by hand.…

[AI](/docs/ai/quick-create-first-website.md) [Visual](/docs/get-start.md) [General](/docs/shared/baidu-search-submit-indexing.md)

Getting Started

- [Create Your First Website in 5 Minutes](/docs/ai/quick-create-first-website.md)
- [AI Website Prompt Writing Guide](/docs/ai/ai-create-website-guide.md)
- [Direct Editing: Update Content Without Credits](/docs/ai/ai-edit-content-guide.md)
- [Use Pick to Bring a Section from Another Template into Your Site](/docs/ai/pick-element-in-tpl.md)
- [Prompt Library](/docs/ai/prompt-lib.md)
- [AI Credits Guide](/docs/ai/ai-credits-guide.md)
- [How to Choose an AI Model](/docs/ai/ai-model-guide.md)
- [Creght Skill](/docs/ai/creght-skill.md)
- [Platform Limits](/docs/ai/platform-limits.md)

Backend

- [Add Login, Bookings, Private Pages, and More to Your Website](/docs/ai/backend-database-guide.md)
- [Configure OAuth Login: Google and GitHub](/docs/ai/backend-auth-guide.md)
- [More integrations: email, Alipay, Stripe](/docs/ai/more-integrations.md)
- [Take payments with Alipay](/docs/ai/alipay-payment.md)

Site Setting

- [Multilingual Website Setup Guide](/docs/ai/localization.md)
- [Domain Binding Guide](/docs/ai/custom-domain.md)
- [Alibaba Cloud Domain Purchase Guide (Beginner Version)](/docs/ai/aliyun-domain-registration-guide.md)
- [Redirect Setup Guide](/docs/ai/redirects.md)
- [Missing Pages: Redirect or 404?](/docs/ai/redirect-or-404.md)
- [Meta Pixel Integration Guide](/docs/ai/facebook-meta-pixel.md)
- [Submit URLs automatically with IndexNow](/docs/ai/indexnow-auto-submit.md)

Advanced Usage

- [Configure Different Default Languages for Different Domains](/docs/ai/domain-locale-routing.md)

[Help Center](/help.md)/Site Setting

# Submit URLs automatically with IndexNow

> **🚀**
>
> Turn this on and Creght **automatically** tells search engines which URLs changed every time you publish or edit content. No more submitting by hand.
>
> It covers **Bing, Yandex, Seznam and Naver**, which share the IndexNow protocol. **Google does not support it** and still relies on your sitemap and Search Console.

## What it does for you

Without it, search engines find new pages on their own schedule, which usually takes days to weeks. With it, they hear about the change within minutes of publishing.

The clearest win is **new pages**: a new article, a new product, a new landing page all get indexed much sooner.

## Turning it on

1. Make sure the site has a **custom domain** and has been published. Without a domain the option does not appear, because search engines do not index preview addresses.
2. Open **SEO → Search engine indexing** in the editor.
3. Switch on **Automatic submission (IndexNow)**.

That is the whole setup. No account to register, no key to fetch from a search engine dashboard.

> **What happens right after you switch it on**
>
> Creght runs once immediately and submits your **most recently updated** URLs, up to 1000 of them. Older pages are left to normal sitemap indexing: IndexNow exists to say "this just changed", not to push your whole archive again.

## Reading the panel

| Field | Meaning |
| --- | --- |
| Last sync | When the last submission happened and how many URLs it carried. It answers "is this still working" |
| Total | How many URLs have been submitted since you turned it on |
| Verification file | A small file at your site root that proves to search engines you own the site. If opening it shows a string of characters, it is working |

When a submission fails, the error appears here in red and usually says exactly what to fix.

## When it submits

Three things trigger it: **publishing the site**, **editing CMS content**, and a **daily sweep** that catches anything the first two missed.

Rapid edits do not cause repeat submissions: changes within a minute of each other are merged into one run.

## Common questions

### Will it submit drafts or unpublished pages?

No. The list comes from your site's `sitemap.xml`, which only holds URLs search engines can already see. Preview and system addresses are never submitted.

### Does the string in the verification file need to be kept secret?

No. The protocol requires it to be public. All it proves is that you control the site, and anyone who has it can still only submit URLs belonging to your own site. There is no need to rotate it.

### I edited the home page five times. Does that mean five submissions?

Usually not. Creght compares your current sitemap against what it already submitted and sends only the URLs that **actually changed**. Editing the same page repeatedly in one day normally produces a single submission.

### Why does it say "0 URLs" after I edited a page?

Most often because the change **has not been published yet**. Edits in the editor reach the live site, and the submission queue, only when you publish.

Two other cases also show 0:

- **Repeated edits to the same page on the same day.** Changes are judged per day, so after the first publish of the day that page is not submitted again.
- **A publish with nothing actually changed.** Republishing as-is creates no new version, so nothing counts as changed.

### How does the platform know when a page changed?

Two different sources:

- **Content pages** (articles, products and other CMS-driven detail pages) use the content record's own update time, precise to the individual item.
- **Code pages** (the home page, feature pages) use **the time this version of the site was published**.

Code pages are not dated per file because pages reference each other: the home page uses a component, the component changes, the home page looks different, but the home page's own file never moved. Dating by file misses that and still looks correct. The publish time is coarser, since any change marks every code page as changed, but it never under-reports.

### How do I get content updates detected?

Ask the AI:

> Add generateStaticParams to the dynamic route pages, returning the content list with lastModified taken from each record's updated\_at.

This also fixes something more serious: **without that function, the detail pages under a dynamic route never appear in the sitemap at all**, so search engines cannot find them. If the SEO page shows an amber warning saying those routes have no pages in the sitemap, fix that first.

### If I write my own sitemap.ts, does that solve it?

Yes, and **you do not have to supply the times**.

The rule is simple: where you set `lastModified` yours is used, and where you leave it out the platform fills in the publish time of the current version. So set it only where you genuinely know the date, such as a CMS record's `updated_at`, and leave the rest alone.

> **Do not write `new Date()`**
>
> A Creght sitemap is generated on every request, so `new Date()` differs every time and the platform concludes the whole site keeps changing, resubmitting it over and over.
>
> This differs from Next.js, where the sitemap is generated once at build time and `new Date()` conveniently equals the deploy time, which is why the official example uses it. Copying that here breaks quietly, with no error anywhere.

### What happens if I turn it off?

Nothing is submitted any more, and everything already submitted is unaffected. You can switch it back on at any time; the record is kept.

### What about Google?

Google does not support IndexNow. It crawls your sitemap on its own, and you can still use the "Submit" button on the same page to file a manual request in Google Search Console.

## Related

- [More integrations](/en/docs/ai/more-integrations.md)
- [Func backend capabilities](/api/func-backend.md)

[PreviousMeta Pixel Integration Guide](/docs/ai/facebook-meta-pixel.md) [NextConfigure Different Default Languages for Different Domains](/docs/ai/domain-locale-routing.md)

On this page

- [What it does for you](#what-it-does-for-you)
- [Turning it on](#turning-it-on)
- [Reading the panel](#reading-the-panel)
- [When it submits](#when-it-submits)
- [Common questions](#common-questions)
- [Will it submit drafts or unpublished pages?](#will-it-submit-drafts-or-unpublished-pages)
- [Does the string in the verification file need to be kept secret?](#does-the-string-in-the-verification-file-need-to-be-kept-secret)
- [I edited the home page five times. Does that mean five submissions?](#i-edited-the-home-page-five-times-does-that-mean-five-submissions)
- [Why does it say "0 URLs" after I edited a page?](#why-does-it-say-0-urls-after-i-edited-a-page)
- [How does the platform know when a page changed?](#how-does-the-platform-know-when-a-page-changed)
- [How do I get content updates detected?](#how-do-i-get-content-updates-detected)
- [If I write my own sitemap.ts, does that solve it?](#if-i-write-my-own-sitemap-ts-does-that-solve-it)
- [What happens if I turn it off?](#what-happens-if-i-turn-it-off)
- [What about Google?](#what-about-google)
- [Related](#related)

> Full page index: [/llms.txt](/llms.txt)
