Wix AI crawlers: what AI search sees on a Wix site
What AI crawlers see on a Wix site: server-rendered pages, the robots.txt editor, structured data settings, and the content that still goes missing.
By Crawlito · 10 min read
In short
- Wix renders pages on the server, so text placed in the editor is in the HTML that AI crawlers fetch, even though most of them run no JavaScript.
- Velo code is server-rendered only when it runs inside $w.onReady(), and async data must be returned as a promise from onReady() to make it into that HTML.
- Wix's robots.txt is edited under SEO & GEO > Tools and settings > Robots.txt Editor, and Wix's guide to blocking AI crawlers describes no one-click toggle.
- Wix's example AI block list includes ChatGPT-User and BingAI, but OpenAI says robots.txt rules may not apply to ChatGPT-User, and BingAI is not a crawler name Microsoft documents.
- Wix returns a 403 to Google for password-protected and members-only pages, and AI crawlers do not log in, so content behind them cannot be read by AI search.
On this page
- Does Wix render pages on the server?
- Where custom code breaks server rendering
- Lightboxes, collapsed sections and content behind a click
- How to check what an AI crawler gets from your Wix page
- Editing robots.txt on Wix
- Noindex, nosnippet and hidden pages
- Structured data on Wix
- How to see whether AI crawlers visit your Wix site
- Frequently asked questions
- Check your Wix site
AI crawlers can read most of a Wix site, because Wix renders pages on the server and sends finished HTML. The old idea that Wix sites are JavaScript-only shells is out of date. What goes wrong on Wix is narrower: robots.txt edits copied from a block list, content that only loads from custom code or after a click, pages behind a password or a member login, and noindex settings nobody remembers turning on.
This guide covers what AI crawlers receive from a Wix page, where the relevant Wix settings live at the time of writing, and how to check each one yourself.
Does Wix render pages on the server?
Yes. Wix's help article on viewing your page source the way search engines do says Wix sites use server-side rendering (SSR). The same article notes that most AI crawlers do not run JavaScript and read only the HTML the server sends, so content added by scripts is invisible to them.
That matches independent measurement. In December 2024, Vercel and MERJ reported that none of the major AI crawlers they observed, including OpenAI's crawlers, ClaudeBot and PerplexityBot, rendered JavaScript at the time. Googlebot does render JavaScript, but Google still says server-side rendering or pre-rendering is a great idea.
So on a typical Wix site built in the Wix Editor or Wix Studio, text boxes, headings, menus and dataset-connected CMS content arrive in the first HTML response. The gaps come from what the server render does not include.
| Content on a Wix page | In the server HTML? | Source |
|---|---|---|
| Text, headings, buttons added in the editor | Yes | Wix SSR |
| CMS content connected through a dataset | Yes | Wix SEO best practices |
Velo code that runs inside $w.onReady() | Yes | Same |
Async Velo data whose promise is not returned from onReady() | Possibly not | Same |
| Content loaded after a click, a timer or a scroll | Not documented: test it | |
| Text inside an embedded HTML iframe or a script-loaded widget | Not in the page's own HTML: an iframe is a separate document |
Where custom code breaks server rendering
Wix's developer docs are specific about this. Anything that runs inside $w.onReady() is rendered on the server. If that code starts an asynchronous query and does not return its promise, onReady() can resolve before the data arrives, and the server HTML goes out without it.
This version may ship an empty repeater to crawlers:
import { items } from '@wix/data';
$w.onReady(function () {
$w("#servicesRepeater").onItemReady(($item, itemData) => {
$item("#serviceName").text = itemData.title;
});
items.query("Services").find().then((results) => {
$w("#servicesRepeater").data = results.items;
});
});Returning the promise tells the server to wait:
import { items } from '@wix/data';
$w.onReady(function () {
$w("#servicesRepeater").onItemReady(($item, itemData) => {
$item("#serviceName").text = itemData.title;
});
return items.query("Services").find().then((results) => {
$w("#servicesRepeater").data = results.items;
});
});Wix notes the trade-off: returning a promise can slow the page, because all of that data loads before the page renders. Its advice is to wait for the main content that matters for indexing and let auxiliary content, such as the time or weather, load later. If you can bind the repeater to a dataset instead of code, Wix says dataset content is included in the server render.
The same rule applies to SEO data set with code. Wix says titles, link tags such as canonicals, meta tags and structured data set through its SEO API should be set inside onReady() so search engines read them.
Lightboxes, collapsed sections and content behind a click
Wix does not document whether text inside a lightbox, a collapsed element or a multi-state box ends up in the page's server-rendered HTML. Do not assume either way. A crawler reads only the response it receives; it does not click buttons or wait for a pop-up timer. The robots.txt files Wix generated on the sites we checked also disallow *?lightbox= URLs for all crawlers, so a lightbox's own URL is no way in. The general pattern is covered in lazy loading, tabs and accordions.
The practical rule: if a piece of text matters for how AI tools describe your business, such as your services, prices, opening hours or returns policy, put it in the normal page body, not only in a lightbox or a section that expands on click. Then confirm it with the check below.
How to check what an AI crawler gets from your Wix page
Wix suggests setting your browser's user agent to Googlebot in Chrome DevTools (More tools > Network conditions) and reloading the page. curl is quicker, shows only the raw server response, and can send an AI crawler's user agent. Pick a sentence that should be on the page and search the raw HTML for it. The first command fetches the page as OAI-SearchBot and counts the lines that contain the phrase; the second prints the status code returned to PerplexityBot's user agent:
curl -s -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36; compatible; OAI-SearchBot/1.4; +https://openai.com/searchbot" \
https://www.example.com/services | grep -c "same-day repairs"
curl -s -o /dev/null -w "%{http_code}\n" \
-A "Mozilla/5.0 (compatible; PerplexityBot/1.0; +https://perplexity.ai/perplexitybot)" \
https://www.example.com/servicesA count of 0 for text you can see in the browser usually means it is added after the first response, by a script, a click or an embed. Before concluding that, try a shorter phrase, since an apostrophe written as an HTML entity or a line break inside the markup can hide a match. A status other than 200 points to an access problem rather than a rendering one. For more ways to run this test, see how to see your page as an AI crawler, with curl.
Editing robots.txt on Wix
Wix generates robots.txt for you. Wix says the default file lets search engine bots access all of your pages, includes your sitemap URL, and is updated automatically after you publish a page. To edit it, follow Wix's robots.txt instructions:
- In your site's dashboard, open SEO & GEO.
- Scroll to Tools and settings and click Robots.txt Editor.
- Click View File and write your directives under "This is your current file".
- Click Save Changes, then Save.
Wix calls this an advanced feature, says Customer Care cannot help with changes, warns that edits can cause problems in search results, and offers Reset to Default if an edit goes wrong. Guides that point to "Marketing & SEO" or "SEO Tools" use older menu names.
Wix does not publish its default file, so look at yours at /robots.txt. The generated files we fetched while writing this began with a general group like this, followed by a few bot-specific groups:
User-agent: *
Allow: /
Disallow: *?lightbox=What Wix's own AI block example actually does
Wix's article on blocking AI crawlers offers two methods, robots.txt rules and the page-level nosnippet robots meta tag, and describes no one-click toggle. Its robots.txt example disallows CCBot, GPTBot, ChatGPT-User and BingAI. Before pasting it, know what each group does:
| Line | Effect |
|---|---|
User-agent: CCBot | Opts out of Common Crawl, an open web dataset that is widely used to train models. |
User-agent: GPTBot | Signals that OpenAI should not use your content to train its foundation models. It does not remove you from ChatGPT search, which uses OAI-SearchBot. |
User-agent: ChatGPT-User | OpenAI says ChatGPT-User acts on a user's request and that robots.txt rules may not apply. It also does not decide ChatGPT search eligibility. |
User-agent: BingAI | Not a crawler name Microsoft documents, so the group probably matches nothing. Bing's crawler is bingbot, and Microsoft says Copilot grounds answers in web results via the Bing search service, so blocking bingbot would also stop Bing crawling your site. |
Wix also notes that blocking AI crawlers in robots.txt may limit NLWeb functionality, and that it is "not an airtight solution", because some crawlers may ignore robots.txt.
A safer file for "search yes, training no"
If you want to stay reachable by AI search crawlers while opting out of training, add groups for the training tokens by name and leave the search crawlers alone. Add these alongside the groups Wix already writes:
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: CCBot
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: Applebot-Extended
Disallow: /Google-Extended and Applebot-Extended are control tokens, not crawlers: they govern how Google and Apple may use crawled content for AI training, and neither affects inclusion in Google or Apple search. AI Overviews are controlled by Googlebot rules, not Google-Extended. OAI-SearchBot, Claude-SearchBot, PerplexityBot, Googlebot and Bingbot keep following the * group. One caution: under RFC 9309 a crawler that finds a group naming it ignores the * group entirely, so if you ever add a group for a search crawler, repeat the rules Wix placed under *, such as Disallow: *?lightbox=. The reasoning for each token is in how to allow AI search but block AI training, and the matching rules are in how robots.txt groups work.
Noindex, nosnippet and hidden pages
Robots.txt is not the only thing that can keep a Wix page out of AI answers. Three page settings matter:
- Indexing toggle. In the editor, open Pages & Menu, click the More Actions icon next to a page, choose SEO basics and check the "Let search engines index this page" toggle (Wix instructions). Turning it off asks search engines not to index the page. Hiding a page from the menu is a separate setting: Wix says hidden pages still appear in search engines.
- Robots meta tag. In the same panel, the Advanced SEO tab has a Robots meta tag section. Wix suggests
nosnippetto keep a page's content from being used as a direct input for AI Overviews. Google'snosnippetdoes that, but it also removes your normal text snippet from Google Search results, and it does not stop any crawler from fetching the page. - Page-type defaults. Some Wix page types are noindexed out of the box: blog tag and archive pages, and member profile pages, according to Wix's default SEO settings.
Password-protected and members-only pages are a harder stop. Wix says password protection prevents crawling and indexing, and that Google receives a 403 response for password-protected and members-only pages. AI crawlers do not log in either. If your pricing, menu or documentation sits behind a member area, AI search cannot read it. The difference between these signals is explained in noindex, nosnippet and X-Robots-Tag.
To check a page's robots meta tag quickly:
curl -s https://www.example.com/pricing | grep -io '<meta name="robots"[^>]*>'Structured data on Wix
Wix adds some structured data automatically and lets you add your own JSON-LD:
- Preset markup. Wix adds Product markup to Stores product pages, BlogPosting markup to blog posts by default, Event markup to event pages, Service markup to Bookings service pages, and LocalBusiness markup to the homepage once you add a business name and location to your account (Wix default SEO settings).
- Static pages. In the page's SEO settings, open the Advanced SEO tab, find Structured Data Markup and click +Add New Markup. Wix accepts JSON-LD only, up to five markups per page and under 7,000 characters each (Wix structured data guide).
- Dynamic pages. Wix says custom markup from the page panel works only on static pages. For CMS dynamic item pages, go to the SEO dashboard, select Go to SEO Settings under Tools and settings, click the dynamic item page under Edit by page type, then Edit next to Structured data markup (Wix dynamic page SEO).
Keep markup consistent with what the page shows: a price or address in JSON-LD that differs from the visible text sends machines conflicting facts. Google says no special schema is needed to appear in AI Overviews or AI Mode, so treat structured data as a clear description of the page, not a shortcut into AI answers.
Wix also generates and maintains an llms.txt file for upgraded sites with a connected custom domain and search engine indexing turned on. No major AI search operator documents reading llms.txt on third-party sites, and Google says Google Search ignores it, so treat it as optional.
How to see whether AI crawlers visit your Wix site
Wix Analytics has log-based SEO reports, Bot Traffic over Time, Bot Traffic by Page and Response Status over Time, though Wix describes them in terms of search engine bots, not AI crawlers. Sites on a Premium plan also get an AI Visibility Overview, which reports bot and visitor traffic from ChatGPT, Gemini and Perplexity. Its score is the share of Wix-generated test questions, built from your site description, URL and business name, whose answers mention your site, so read it as a sample, not a full picture. To compare those reports with your own logs and analytics, see measuring AI crawler visits and AI referral traffic.
Frequently asked questions
Can ChatGPT read my Wix website?
In most cases, yes. Wix sends server-rendered HTML, so OAI-SearchBot can read editor content as long as robots.txt allows it and the page is not password-protected or members-only. Content loaded only by custom code after the page renders may be missing.
Does Wix block AI crawlers by default?
Wix says its default robots.txt lets search engine bots access all your pages, and its guide to blocking AI crawlers describes manual robots.txt rules and the nosnippet tag, not a default block. Check your own file at /robots.txt to confirm what is live.
Should I use Wix's example list to block AI bots?
Only if you understand each line. Blocking GPTBot and CCBot opts out of training, but a ChatGPT-User rule may not be applied and does not control ChatGPT search, and BingAI is not a documented Microsoft crawler. Use named training tokens if your goal is to opt out of training while staying reachable by AI search crawlers.
Is text in a Wix lightbox visible to AI crawlers?
Wix does not document it. Fetch the page with curl as an AI crawler and search the HTML for the lightbox text; if it is missing, move anything important into the main page body.
Check your Wix site
The quickest next step is to run one important page through the free check, a single-page check that needs no account, and compare it with the curl tests above. For the whole site, including CMS dynamic pages, an audit covers up to 500 pages and returns evidence with prioritized fixes.
Filed under Platform guides. Topics: wix, ai-crawlers, robots-txt, ssr, structured-data