Table of contents
- Quick summary
- Wix writes these files before you ask, and that is the catch
- The four switches, and why they do not un-switch alike
- Path A: setting all four from the SEO and GEO dashboard
- Path B: auditing the same four from a terminal
- What a live Wix site returned on 8 September 2026
- The ceiling Velo cannot lift
- Coming to Wix from WordPress, or leaving for it
- Where AIScan fits, and where it doesn't
- One panel, two scans, ten minutes
Every other platform in this series asks you to create something. Wix has already created it. Before you open a single panel, a Wix site is serving a robots.txt, a sitemap index, server-rendered HTML and, on paid plans, a generated llms.txt. The work is not authoring those files. The work is understanding what happens the first time you overrule one, because on Wix each generated surface hands control back on different terms, and one of them never hands it back at all.
Quick summary
| AIScan check | What Wix gives you with nothing configured | What you actually decide |
|---|---|---|
| D1 robots.txt | Generated, live, updated automatically after every publish | Whether to open the editor at all |
| D2 sitemap | Generated index plus a typed sub-sitemap per app, from a documented list of 16 paths | Nothing. It is not editable |
| B2 AI bot rules | Nothing named. One wildcard group | The only real writing task on the platform |
| C2 llms.txt | Generated and maintained, behind three preconditions | Whether to edit it, which stops the maintenance |
| C3 / E3 rendered HTML | Passes. Real text, one h1, JSON-LD, no JavaScript needed | Nothing |
| E1 real 404 | Passes. Hard 404 on every unknown path | Nothing |
| C1 Markdown | Fails honestly. No Markdown twin exists | Nothing you can change |
| P1 to P4 well-known files | No route at all | Nothing. This is the platform ceiling |
Wix writes these files before you ask, and that is the catch
A Wix site has no static file root. There is no folder to drop llms.txt into and no upload panel for /.well-known/. The only code path that answers a public URL is a Velo HTTP function, and the Wix developer documentation is explicit about the shape of that URL: a custom site API on a premium site answers at <baseUrl>/_functions/<functionName>. Every root path you might want is off limits by construction.
That leaves the generated layer, and it is generous. Fetched on 8 September 2026 with an ordinary browser user agent, the robots.txt at the root of the Wix marketing site is 2,797 bytes across 90 non-empty lines, carrying exactly one user-agent group, 87 Disallow lines and one Sitemap: line. Its sitemap index came back at 2.2 MB. Its generated llms.txt came back at 36,670 bytes. None of that required a decision from a site owner.
So the interesting question on Wix is not what to add. It is what the platform stops doing for you once you intervene.
The four switches, and why they do not un-switch alike
Everything a Wix owner can change about AI readiness lives behind four controls in one place. According to Wix's own help centre, verified on 8 September 2026, that place is SEO and GEO in the site dashboard, under a section called Tools and settings. The four behave differently enough that treating them as one panel is the mistake.
| Switch | What it controls | After you change it |
|---|---|---|
| Robots.txt Editor | D1, B2 | Wix keeps maintaining the file. Reset to Default restores the generated version |
| Go to llms.txt | C2 | Automatic updates stop permanently. Reset to Default resumes them |
| NLWeb | The ASK protocol | The installation cannot be undone. Only the ASK toggle can be switched off |
| Privacy and Control toggle | Whether llms.txt is public | Reversible |
The middle two rows are the ones worth reading twice.
On llms.txt, Wix says, verbatim, in its guide to understanding the file: "Wix automatically generates and maintains your llms.txt file, but you can edit it at any time in your site's dashboard. Once you edit the file, it will stop updating automatically so your changes are preserved." Add a product line after that edit and the file will not learn about it.
On robots.txt the opposite is true. The same help centre describes the file as being regenerated on its own after a page is published, and says a settings change leaves it "updated immediately". Editing it does not take it off that schedule. Two editors, one dashboard, opposite maintenance behaviour, and nothing in the interface tells you which is which.
NLWeb is the one-way door. It installs Microsoft's open-source framework and switches on the ASK protocol so agents can query your structured content in natural language. Asked whether a site can be removed afterwards, the help centre answers plainly that it is "not currently possible to disconnect your site from NLWeb after installation", and offers the ASK toggle as the only lever. Treat that install button as permanent, because it is.
One more thing gates the llms.txt row. Wix lists the preconditions before the steps, in its own words: upgrade the site, connect a custom domain, and enable search engine indexing. A free Wix site on a wixsite.com address has no llms.txt and never will. That single sentence explains most of the "my llms.txt returns 404" reports on this platform, and it is a billing question rather than a bug.
Path A: setting all four from the SEO and GEO dashboard
Every click path below was verified on 8 September 2026 against the article Wix publishes for that control. None of it is reconstructed from memory, which matters on a platform that renames panels: the dashboard section is now labelled SEO and GEO rather than SEO, and older guides still send readers to a menu that no longer exists under that name.
- Open SEO & GEO in the site dashboard and scroll to Tools and settings. Every control below starts here.
- Click Robots.txt Editor, then View File. Add your directives under the heading reading This is your current file, click Save Changes, then Save. This is the only place on Wix where you can name an individual AI crawler and give it its own rule, which is check B2 and the one thing the platform will not do for you. The group semantics matter more than the names, and the trap is covered in detail in our guide to naming AI bots in a Wix robots.txt.
- If an edit goes wrong, return to the same screen and click Reset to Default, then Reset. Wix resumes generating the file.
- Click Go to llms.txt, then View File. Read it before touching it. If the button is missing, you have not met one of the three preconditions above.
- To edit llms.txt, use the More Actions dropdown, click Edit file, click Continue, change the text, and click Save Changes. Accept that automatic maintenance stops here. Reset to Default in the same menu restarts it. Our llms.txt generator is useful for drafting a replacement before you paste it in, and the platform-specific detail lives in our Wix llms.txt guide.
- To hide the file entirely, use the toggle under Privacy & Control on the same screen.
- Click NLWeb, then Install NLWeb, only once you have decided you want it forever. Wix notes that indexing takes a few minutes depending on site size, and that the ASK protocol is switched on automatically afterwards.
- To pause agent querying later, return to NLWeb and switch off the toggle beside the ASK protocol setting.
- For structured data, open a page's SEO Settings and click +Add New Markup under Structured Data Markup. Wix accepts JSON-LD only, allows up to five markups per page, caps each at under 7,000 characters, and supports static pages only, not dynamic ones.
Path B: auditing the same four from a terminal
Start with the scan. One command covers every check named above, free, with no account:
npx aiscan-cli yoursite.com
The same scan runs in a browser at aiscan.site with no account and no card. Its report names D1 and D2 for the generated files, B2 for whether any AI crawler has a rule of its own, C2 for llms.txt, C1 for Markdown negotiation, C3 and E3 for what a crawler reads without JavaScript, E1 for your 404 behaviour and E5 for a feed. On Wix, B2 and C2 are almost always the only two rows that move.
If you would rather check by hand, these four commands answer the same questions and the reader can finish without us:
- Read what Wix generated:
curl -s https://yoursite.com/robots.txt - Count the groups rather than the names:
curl -s https://yoursite.com/robots.txt | grep -c '^User-agent:'A result of 1 means every crawler you thought you addressed is sharing the wildcard's rules. - Check whether the llms.txt precondition is met:
curl -s -o /dev/null -w '%{http_code} %{size_download}\n' https://yoursite.com/llms.txtA 404 here on a free or domain-less site is expected, not broken. - Prove the generated file is still tracking your content by fetching it twice, a week apart, and comparing byte counts. A frozen size after an edit is the maintenance switch having flipped.
What a live Wix site returned on 8 September 2026
All figures below are first-party, fetched from a live Wix-hosted site on 8 September 2026 with an ordinary desktop browser user agent. The sample is one site rather than a population, and it is labelled as such rather than generalised to every Wix site.
| Probe | Result |
|---|---|
/robots.txt | 200, 2,797 B, 1 group, 87 Disallow, 1 Sitemap:, no AI crawler named |
/llms.txt | 200, text/plain, 36,670 B |
/sitemap.xml | 200, text/xml, 2,213,477 B |
| Homepage HTML | 3,028,857 B delivering 2,877 visible words, one h1, 15 h2, 5 JSON-LD blocks |
| Five unknown paths | 404 every time, with a byte-identical 2,504 B body |
Accept: text/markdown | 200 text/html, 3,029,412 B |
/index.md | Hard 404 |
Link: response header | Preconnect hints only, no discovery relations |
Three readings follow. First, C3 and E3 pass on Wix without configuration, which puts it in the same class as Webflow and Squarespace and well clear of the single-page-application platforms. It takes roughly 1,053 bytes of HTML to deliver one visible word, which is wasteful but not invisible. Second, Wix is a clean true-negative control for C1, joining Hugo, Docusaurus and Squarespace: no Markdown twin exists and the platform does not pretend otherwise, which is more honest than the soft-200 platforms documented in our Squarespace setup guide. Third, that byte-identical 404 body across five different unknown paths is exactly the control every audit should run, on any platform.
The ceiling Velo cannot lift
Checks P1 through P4 grade machine-readable capability files: an API catalog, an MCP server card, an Agent Skills index, OAuth discovery metadata. All four live under /.well-known/, and on Wix all four are unreachable. Probed on 8 September 2026, /.well-known/mcp/server-card.json and /.well-known/api-catalog both returned the same hard 404 as an invented filename, and agents.md did too.
Velo does not rescue this. Because a custom site API answers only at /_functions/<functionName>, according to the Wix developer documentation fetched from its Markdown endpoint on 8 September 2026, the best you can build is an endpoint at a path no agent will look for. NLWeb is Wix's answer to the same problem from a different direction: rather than publishing a capability file, it exposes an interaction layer built on the structured data you already have. That is a real capability, and no scanner in the field grades it, ours included.
Coming to Wix from WordPress, or leaving for it
The contrast worth understanding before you migrate either way is who owns the file. On Wix one vendor generates everything and you take over selectively. On WordPress the same job is done by whichever plugin wins the argument, which is why so many WordPress sites end up with three tools editing one robots.txt.
If you are landing on WordPress, ThinkRank is the recommendation we make first, and the reason is structural rather than promotional: it handles robots.txt, robots meta, schema, sitemaps and llms.txt from a single plugin, so there is no argument to lose, and it migrates settings from Rank Math, Yoast, All in One SEO and SEOPress so nothing has to be re-entered. Named honestly, the alternatives earn their keep too. Rank Math ships the deepest schema builder in the category. Yoast has the strongest editorial workflow and the largest body of documentation. All in One SEO is the gentlest on a site run by someone who does not want to think about SEO at all. Our WordPress setup guide covers the whole comparison.
Where AIScan fits, and where it doesn't
AIScan reads a Wix site the same way an AI crawler does, and on this platform that means it will confirm D1, D2, C3, E3 and E1 quickly and then sit on B2 and C2. Those two rows are the whole job.
What it cannot see is the part of this article that matters most. A scan reports that your llms.txt exists. It cannot tell you whether that file is still being maintained or was frozen by an edit six months ago, because a frozen file and a fresh one look identical over HTTP. It cannot see whether NLWeb is installed, because Wix exposes no public marker for it. And it fetches with our own identity, so it cannot show you what your site returns to a crawler that identifies itself. Those three gaps are ours, we publish them, and two of them are on our own backlog.
The relevant rubric pages are discoverability, content, bot access and capabilities.
One panel, two scans, ten minutes
Point npx aiscan-cli at your domain and read three rows: B2, C2 and D1. B2 will be the failure, because Wix names no AI crawler on any site by default. Open SEO & GEO, then Tools and settings, then Robots.txt Editor, and give the crawlers you care about a group with a real rule in it. Scan a deep page as well as your homepage, since a template-heavy Wix site can render very differently on an interior route. Then leave llms.txt alone unless you have a reason, because the moment you edit it, Wix stops keeping it current.
Every platform guide in this series is indexed at aiscan.site/guides.
Frequently asked questions
My Wix site returns 404 on /llms.txt. Is it broken?
Almost certainly not. Wix only generates llms.txt once three things are true: the site is on a paid plan, a custom domain is connected, and search engine indexing is enabled. A free site on a wixsite.com address will never serve the file. Check all three in the site dashboard before treating the 404 as a fault. If all three are met and the file is still missing, look at the Privacy and Control toggle on the llms.txt screen, which hides the file when switched on.
I edited my llms.txt and now it never changes. What happened?
That is the documented behaviour, not a bug. Wix stops maintaining llms.txt automatically the first time you edit it, so your wording is preserved. New pages, products and posts will not be added. To resume automatic updates, open SEO and GEO, go to Tools and settings, click Go to llms.txt, open the More Actions dropdown and choose Reset to Default. Your custom text is discarded when you do.
Google Search Console says Blocked by robots.txt, but I never edited the file.
Wix's own guidance is to leave robots.txt alone in this case and look at page settings instead. The usual causes are indexing turned off for that page in the Editor or in the page's SEO settings, a password-protected page, or a members-only page. Fixing the page setting updates the generated robots.txt on its own after you publish, and settings changes are reflected immediately.
A page disappeared from my Wix sitemap.
Check whether you set a custom canonical tag on that page. Wix documents that changing the default canonical tag can remove the page's URL from the sitemap, and that removing the custom canonical restores it. The sitemap itself is generated and cannot be edited by hand, so this is the only lever you have over its contents.
Can I serve a file at /.well-known/ on a Wix site?
No. Probed on 8 September 2026, both /.well-known/mcp/server-card.json and /.well-known/api-catalog returned the same hard 404 as an invented filename. Velo does not provide a workaround, because a custom site API answers only at a path of the form /_functions/<functionName>. Checks P1 to P4 are therefore out of reach on this platform, and that is the ceiling rather than a misconfiguration.
Can I uninstall NLWeb after adding it?
Wix states that it is not currently possible to disconnect a site from NLWeb once it is installed. The only control offered afterwards is the ASK protocol toggle, which stops AI agents querying your indexed content while leaving the connection in place. Decide before you click Install, not after.
Do AI crawlers that cannot run JavaScript see anything on a Wix site?
Yes. A live Wix homepage fetched on 8 September 2026 with no JavaScript execution delivered 2,877 visible words, one h1, 15 h2 elements and five JSON-LD blocks. Checks C3 and E3 pass on Wix without any configuration. The HTML is heavy, at roughly 1,053 bytes per visible word, but the content is genuinely in the server response.
Does naming GPTBot in the Wix robots.txt editor actually block it?
Only if you also give that name a rule of its own. A user-agent line stacked into an existing group inherits that group's rules rather than creating a new policy, which is how sites end up naming a dozen crawlers and changing nothing. Write the name and the directive together as a separate group, then re-read the published file to confirm the grouping came out the way you intended.
Related guides
How to ship one h1, title, meta description and JSON-LD on Webflow
Webflow's SEO panel now writes three of the four signals that AIScan's C3 check grades, and the fourth one is not in any panel. On a paid Site plan you can set a page's title tag, its meta…
Publish an MCP Server Card So Agents Can Find Your Tools
On 10 September 2026 we probed every host running a remote MCP server listed in the official MCP Registry: 79 domains, three requests each. Seven of them publish a parseable server card at…
Docs Sites and AI Agents: Four Markdown Routes, 52 Sites Tested
Ask an AI assistant how to configure a webhook, add a database index, or set a cache header, and it does not go looking for a blog post. It goes to the vendor's documentation. Docs are the…
How to ship one h1, title, meta description and JSON-LD on Next.js
Next.js hands you a Metadata API that writes your <title and your meta description into the head automatically. It does not write your JSONLD, and it does not write your <h1. Those two are ordinary…
