On a self-managed headless project, Wix doesn't add SEO tags to the HTML your server sends, and doesn't serve robots.txt or sitemap.xml for you. You can load site scripts so the browser adds the dashboard's SEO tags after the page loads. Crawlers that don't run JavaScript don't see those tags. For tags search engines can read, render them yourself.
Note: This article also applies to a Wix-managed headless project built with a framework other than Astro. A static site you upload to Wix already loads site scripts, so you don't add the tag. SEO tags added that way are still injected in the browser. Rendering tags into the HTML response is specific to Wix's Astro integration.
For Wix-managed headless projects built with the Astro integration, see About SEO Support.
Build and serve the following in your own frontend and server code:
robots.txt: The rules that control which crawlers can access which parts of a site.sitemap.xml: The list of URLs you want search engines to index. You already know your own static and main-page URLs, since you built the frontend. For dynamic, repeater-generated URLs, such as Stores products or Blog posts, fetch them with List Sitemap Pages instead of deriving them yourself.List Sitemap Pages returns the dynamic item URLs Wix knows about for a specified itemType, such as STORES_PRODUCT, BLOG_POST, or BOOKINGS_SERVICE. It doesn't return static or main-page URLs. Filter on each entry's shouldBeIncludedInSitemap field before you write it into your sitemap, and paginate through results with the method's cursor paging. The method returns NOT_FOUND if the site isn't indexable or isn't published.
If a Wix user has already configured titles, descriptions, and other tags in the dashboard, under SEO & GEO > SEO Settings, you can use those values instead of hard-coding your own.
<head>. The dashboard configuration still applies. This is the option crawlers that don't run JavaScript can see.Last updated: 26 October 2026