Guide
How to get cited by Grok
What xAI documents for Grok web citations: the Web Search tool, sources encountered versus inline links, and the robots.txt token xAI does not publish.
15 October 2026 · CiteScore Team · 11 min read
xAI documents how Grok cites the web on two API pages: Web Search and Citations. Those pages describe a tool that searches and browses, then a list of URLs the agent encountered. They do not publish a citation rate, a required schema type, a word count, or a robots.txt token. CiteScore does not log into Grok, grok.com, or the xAI API. The claims below stay inside those pages, the X Search tool, and the consumer notes at Welcome to Grok and the Grok FAQ.
The docs live at docs.x.ai. The site header there also reads SpaceXSI. This page uses xAI for the company and Grok for the assistant those docs describe. The same kind of split — a published control, and the files the operator does not require — is written up for ChatGPT, Perplexity, Claude, Gemini, and Microsoft Copilot. The short map is how to get cited by AI answer engines.
Two citation layers, and only one is a link in the answer
When Web Search runs, xAI’s Citations page describes two different records. A site can land in the first and never appear in the second.
| Record | What xAI says it contains |
|---|---|
| All citations | The citations field on the response: URLs for sources the agent encountered. xAI says this list is returned by default. A URL can be on it because the agent opened the page and then decided the page was not relevant enough to use. Being on the list is not the same as a footnote in the answer. |
| Inline citations | Markdown links in the answer text, in the form [[N]](url). xAI says enabling them does not guarantee a citation on every answer. The model decides when and where to include one. If the same URL is cited again, the original number is reused. |
Whether those inline links are even requested is a switch on the API call, not a switch on your site. xAI says the Responses API includes them unless the caller passes no_inline_citations, and the Python SDK includes them only when the caller asks. A publisher cannot flip that switch. A page that was fetched can still come back with no inline link.
Web Search browses pages. It is not a published crawl token
The Web Search page says the tool lets Grok search the web in real time, browse pages, and extract information for the answer. It does not name the user-agent string on that fetch, and it does not say the fetch honors robots.txt. Treat that silence as a missing control, not as permission to invent one.
The filters on the tool are set by whoever calls the API:
allowed_domainslimits search and browsing to the domains in the request, with a maximum of five. It cannot be set in the same request asexcluded_domains.excluded_domainskeeps those domains out of the tool’s searches, also with a maximum of five.enable_image_understandingis optional. Turning it on lets the agent inspect images it meets while browsing. The basic example on the page does not turn it on.enable_image_searchis a separate option that searches for images and can embed them. xAI says that is not the same as reading images on an ordinary page.
A site cannot add itself to someone else’s allowed list. If a caller passes five other domains, your host is outside that request no matter how the page is written. Exclusion works the same way, in the other direction: a caller can leave your domain out, and robots.txt is not the mechanism xAI documents for that.
What the docs index does not contain
OpenAI, Anthropic, Perplexity, and Google each publish a token and say what disallowing it does. xAI’s documentation index lists Web Search, Citations, X Search, the Grok overview, and the consumer FAQ. It does not list a crawler policy, a user-agent, or IP ranges. Public crawler directories sometimes name strings such as GrokBot. Those strings are not in xAI’s index. This page does not treat a directory entry as a robots.txt token.
A User-agent group only matters for a client that reads robots.txt and identifies itself with that token. xAI has not said its Web Search fetch does either. Pasting an unpublished name into robots.txt does not recreate the control OAI-SearchBot or PerplexityBot actually is. The tokens operators have published, and the jobs those tokens do, are on the robots.txt guide.
The consumer overview describes Grok on grok.com and in the iOS and Android apps: chat, files, voice, image and video, and connectors. It does not describe how a public website becomes a source in those products. The FAQ does not add a crawler token either. Until xAI publishes a separate rule for the apps, the API pages are the mechanism on record, and the consumer product is undescribed on this point.
A post on X is a different source
X Search is a second tool. It runs keyword search, semantic search, user search, and thread fetch on X, then answers with citations. Those citations can be posts, not pages on your domain. The handle and date limits on that tool are also caller parameters. A robots.txt file on your website does not govern which posts the tool fetches.
A link to your domain and a link to a post are different events. xAI does not say that being talked about on X causes your page to be browsed, or the reverse.
Grok Bot is not this citation
The Grok FAQ says Grok Bot is not the same product as Grok on grok.com or in the Grok mobile apps. Grok Bot’s overview describes teammates on a cloud computer with a browser. On the question of whether a Bot can use any website, xAI says a site can still block automation, expire a session, or require a human step, and that the Bot hands those steps back rather than working around them. That is a user-triggered browser session. It is not the citations list from Web Search, and xAI does not document a robots.txt token for it.
What you can actually change on the page
The documented fetch reads pages. Put the name of the business, what it does, and who it is for in HTML, not only in an image. Image understanding on Web Search is a caller option, and the basic example leaves it off, so a fact that exists only inside a picture is easy for that request to miss. xAI does not say the consumer apps use the same default. Text still travels in both cases.
Nothing on the Web Search or Citations pages asks for a schema type, an llms.txt file, or a word count. Schema that matches the visible page is for parsers that read JSON-LD. It is not a Grok switch xAI has published. An inline citation is the model’s decision after a fetch, and xAI does not publish how often that decision goes your way. If xAI later names a robots.txt token and says what disallowing it does, that page becomes the control. Until then, a robots.txt edit is not the Grok task.
Check the public files
The free check reports GPTBot, PerplexityBot, and Google-Extended. It does not look for a Grok token, because xAI has not published one for it to read. A clear row on that check is not a Grok citation. The $39 GEO audit scores one public URL from the HTML we fetch and returns about ten fixes. It does not call the xAI API or open grok.com.
Run the free check on the host. It reads the homepage, robots.txt for GPTBot, PerplexityBot, and Google-Extended, /llms.txt, a sitemap, and JSON-LD on the homepage. It does not log into an answer engine. One URL continues at checkout.
Sources
- Web Search, xAI docs. Real-time search and page browsing, domain filters with a cap of five, and the optional image controls.
- Citations, xAI docs. The full URL list versus inline
[[N]](url)links, and the statement that the model decides when to cite. - X Search, xAI docs. Keyword, semantic, user, and thread fetch on X, separate from Web Search.
- Welcome to Grok and the Grok FAQ. What the consumer product page covers, and the note that Grok Bot is a different product.
- Grok Bot overview. A cloud browser that can be blocked, logged out, or stopped at a human step. Not a citations API.
- docs.x.ai/llms.txt. The documentation index used to check that no crawler-policy page is listed.