In this guide
The quickest way to train a chatbot on your website is to give it your sitemap.xml: one address that lists every public page, which your platform already generates and keeps up to date. The bot reads each page on the list, you remove the few it shouldn't quote, and an online store adds its product feed for prices and stock. Then you test it with the questions customers really ask.
This post covers where your sitemap lives on each major platform, what to leave out, how product feeds fit in, and how to check what the bot actually learned.
Why a sitemap beats uploading files to train a chatbot on your website
Most chatbot tools let you upload PDFs or paste text. That works for five pages. It falls apart for a real site, for three reasons.
Your website is already the source of truth. The returns policy customers read is the one on your site, not the Word document you wrote it in two years ago. If the bot reads the live page, it says what the page says.
Files go stale silently. Change your shipping rates on the site and an uploaded PDF still has the old ones. Nobody notices until a customer quotes the bot back at you.
You'll miss pages. People upload the obvious ones (shipping, returns, FAQ) and forget the page that actually answers "do you deliver on Saturdays", which is usually buried in an About page.
A sitemap solves all three. It's a plain list of your public page addresses that search engines use, so all the major site builders make one for you. On our side you paste the address on the Whole site tab of the dashboard and it reads every page in it, including the smaller sitemaps a sitemap index points to. Sitemap import is on every paid plan and the trial; the sitemap and feed training page has the details.
Files and pasted text still have a place: for things that aren't on your site at all. More on that below.
Where your sitemap lives
Open your site in a browser, add the path below to the end of your domain, and you should see a page of XML. If you do, that's the address to paste.
| Platform | Sitemap address | Worth knowing | Source |
|---|---|---|---|
| Shopify | yourstore.com/sitemap.xml |
Links to separate sitemaps for products, collections, blogs and pages. Can't be read while the store is in private (password) mode. | Shopify Help Center |
| WordPress (no SEO plugin) | yoursite.com/wp-sitemap.xml |
Built in since WordPress 5.5. Turned off if Site Visibility is set to discourage search engines. | WordPress core announcement |
| WordPress + Yoast SEO | yoursite.com/sitemap_index.xml |
Switch on under Yoast SEO, Settings, Site features, XML sitemaps. Pages set to noindex are left out. | Yoast help, Yoast spec |
| WordPress + Rank Math | yoursite.com/sitemap_index.xml |
Settings are under Rank Math, Sitemap Settings. | Rank Math knowledge base |
| Squarespace | yourdomain.com/sitemap.xml |
Updated automatically, usually within about an hour, up to 24 hours. Hidden and password-protected pages are left out. | Squarespace help |
| Wix | yourdomain.com/sitemap.xml |
A sitemap index, updated automatically when you change the site. | Wix help |
| Webflow | yourdomain.com/sitemap.xml |
Turn on Auto-generate sitemap under Site settings, SEO. Refreshes each time you publish. | Webflow help |
Menu names in these tools change from time to time. If a path above doesn't match your screen, the linked page is the one to follow.
On WordPress, if you're not sure which sitemap you have, try /sitemap_index.xml first, then /wp-sitemap.xml. Yoast's own functional specification says requests to /sitemap.xml should redirect to its index. Our WordPress plugin finds the sitemap for you when you press Connect, including Yoast and Rank Math ones.
On Shopify, the store's sitemap includes every product page, which means the bot can learn product descriptions even before you add a feed. There's more on that on the Shopify page.
If none of these load, look in your site's robots.txt (at yourdomain.com/robots.txt) for a line starting Sitemap:. Webflow, for one, adds that line automatically.
Pages to leave out
A sitemap lists pages for search engines, and a few of them are no help to a customer asking a question. After the import, go down the list in the dashboard and press Remove on:
- Cart, checkout, account and login pages. Nothing to answer from, and you don't want them quoted.
- Thank-you and order confirmation pages. They often say things like "your order is on its way", which is true for someone who just ordered and misleading for everyone else.
- Expired promotions. An old "free shipping this weekend" page will be read as current. Delete the page from your site if you can; otherwise remove it here.
- Tag, author and date archives on WordPress blogs. They repeat content that's already on the posts.
- Legal boilerplate you don't want paraphrased. Your terms and privacy policy are fine to include if you'd like the bot to point to them, but some owners prefer it says "see our terms" and links. That's your call.
- Pages for a different business or location if you run more than one from the same site.
One catch: re-running the import later skips pages the bot already has and adds the rest, which includes pages you removed. If a page should never be quoted, the lasting fix is to delete it from your site or hide it from search, which takes it out of the sitemap on Squarespace, Webflow and WordPress with Yoast, among others. Otherwise, glance down the list after each re-import.
What a sitemap won't contain is anything that isn't a public page: hidden pages, password-protected pages, and whatever's in your head. For those, add the page by address on the A page tab, or type it on the Paste text tab. "We close for two weeks in August" is a perfectly good source.
Product feeds for online stores
A product page tells the bot what a product is. A product feed tells it the price and whether it's in stock right now, in a format built for exactly that. If you sell online, add both.
The feed we read is the one you'd give Google Merchant Center: an XML file with one entry per product, including title, price, availability and link. We also read plain RSS and Atom feeds. Paste the feed's address on the Products tab. Once it's loaded, the bot can answer "is the large one in stock?" and "how much is the blue one?" from your own data; the product questions page shows what that looks like.
A few things to know:
- You need a feed address you can open in a browser. If your Merchant Center setup sends products to Google without giving you a feed address, the product pages in your sitemap still teach the bot what you sell. Prices and stock will only be as current as those pages were when it read them.
- Re-importing replaces, not adds. Load the feed again and the new copy replaces the old one, so you never have two prices for the same product.
- It only knows what's in the feed. If the feed doesn't include a size chart, the bot doesn't either. It'll say it doesn't know instead of guessing.
There's more on what a chatbot can do for a store on our ecommerce chatbot page.
Keeping it up to date
The bot doesn't re-read your site on a schedule. It answers from your pages as they were when it last read them. That's deliberate: you decide when a change goes live in its answers, not a crawler at 3 a.m.
In practice:
- When you change a page (new shipping rates, new opening hours), press Re-read next to that page in the dashboard.
- When you add pages, run the sitemap import again. It adds the new pages and skips the ones it already has.
- When prices or stock change, re-import the product feed. How often depends on your shop; weekly is plenty for some, daily for others.
- When you delete a page from your site, press Remove on it in the dashboard too.
Give your platform a moment after publishing. Squarespace, for example, says sitemap changes can take up to 24 hours to appear, so a page you published five minutes ago may not be in the sitemap yet.
Checking what it learned
Don't trust a chatbot because the import said "done". Test it.
- Write down the 20 questions customers actually ask. Go through your inbox, your contact form and your DMs. Use their words, not yours: "do u ship to PEI", not "What is your Canadian shipping policy?"
- Ask each one in the dashboard's test chat. Questions you ask there don't count against your replies.
- Check every answer against your site. The bot answers only from what it was given, so a wrong or vague answer almost always traces back to a page that's wrong or vague. Fix the page, press Re-read, ask again.
- Ask three things you know your site doesn't cover. The bot should say it doesn't know and offer a short form so the visitor can leave their details, which emails you. If it ever guesses instead, we'd like to hear about it; our post on stopping a chatbot making up policies explains how it's meant to behave.
- Read the unanswered list every week. The dashboard keeps every question the bot couldn't answer. Each one is a page you haven't written or a sentence missing from one. Add it, re-read, and that question is answered for good.
That last step is where most of the improvement comes from. The sitemap covers what you've already written; the unanswered list tells you what you haven't.
What doesn't work
- Order status. It can't see orders, so "where's my parcel?" is out of reach no matter what you train it on. Put a link to your order lookup on a page it reads.
- Bookings. It doesn't book appointments. It can link to the page that does.
- Pages behind a login. It reads public pages only.
- Images of text. A shipping table saved as a picture can't be read. Put the information in text on the page.
- A thin site. If the answer isn't written anywhere, no training method finds it. That's what the unanswered list is for.
Frequently asked questions
How do I train a chatbot on my website?
Find your sitemap.xml (usually at yourdomain.com/sitemap.xml) and give it to the chatbot so it reads every page listed. Remove pages like cart and checkout, add any hidden pages or notes by hand, and add a product feed if you sell online. Then test it with real customer questions and fill the gaps it reports.
Where is my sitemap.xml?
On Shopify, Squarespace, Wix and Webflow it's at yourdomain.com/sitemap.xml (Webflow needs auto-generate turned on). WordPress puts it at /wp-sitemap.xml, and with Yoast or Rank Math it's at /sitemap_index.xml. If none of those load, check yourdomain.com/robots.txt for a line starting "Sitemap:".
How often does the chatbot update?
Ours updates when you tell it to, not on a timer. Press Re-read on a page after you change it, re-run the sitemap import to pick up new pages, and re-import your product feed when prices or stock change. Each re-import replaces the old copy instead of stacking a second one.
Can it read my product catalogue?
Yes, from a product feed in the Google Merchant Center format, or a plain RSS or Atom feed, pasted on the Products tab. It then answers on price, availability and the details the feed contains. Without a feed, it can still learn products from the product pages listed in your sitemap.