Does ChatGPT mention you?
And does it cite you?
An AI visibility API for developers and AI agents. Ask ChatGPT the question your buyers ask, and get back as JSON whether the answer named your brand, whether it cited your pages — two different things — and where you sat among the options it recommended. Run the same prompt several times and read the rate rather than the anecdote: mention rate, average and best rank, citation rate, and the same figures for every competitor. Prompt discovery finds the questions worth tracking, and a visibility report compares a whole market at once.
Trusted by developers shipping real products.
2,560,110 served today
Request
$ curl -X POST \ https://api.fetchlayer.dev/chatgpt/ai-rank \ -H "Authorization: Bearer ss-your-key" \ -H "Content-Type: application/json" \ -d '{"prompt":"best reddit api alternatives", "target":{"name":"FetchLayer","domains":["fetchlayer.dev"]}, "competitors":["Apify"],"runs":3}'
Response
{
"runs": [{
"rank": null,
"mentioned": false,
"citedAsSource": false,
"method": "bulleted_list",
"recommendations": [
{ "rank": 1, "name": "Arctic Shift" },
{ "rank": 2, "name": "PullPush" }, …
]
}, …2 more runs],
"aggregate": { "mentionRate": 0, "citationRate": 0 },
"competitorAggregates": [{ "name": "Apify",
"mentionRate": 100, "averageRank": 3 }],
"pagesScraped": 3
} Built for feedback workflows
Fetch the public signal. Use it wherever your team works.
Mentioned and cited, kept apart
A brand can be named in the prose with none of its pages among the sources, or cited without being recommended. mentioned and citedAsSource are reported separately, with the exact source positions — and retrieved tells you when ChatGPT read your page and cited someone else.
A number you can put in a report
Ask the same question several times in one request and get the aggregate back: mentionRate, averageRank, bestRank, worstRank, citationRate and averageCitationRank. The rate is the measurement that holds week to week — and the spread between best and worst tells you how settled your position really is.
Two rankings, because there are two
rank is your position among the options the answer recommends. citationRank is your position among the pages it cites. They move independently, and method tells you how that answer laid its options out — a numbered list, a table, headings, bullets, or no list at all.
The competitor set you did not have to guess
Every check returns the brands the answer itself put forward, with the rank it gave them. You find out who ChatGPT considers your competition for a question, rather than telling it who you think they are.
The prompts, and the searches behind them
Prompt discovery returns the prompts asked, the web searches ChatGPT actually ran while answering, and prompts it suggests people use — kept in separate, labelled lists, because an observation and a suggestion are not the same evidence.
Share of voice across a market
Run several prompts against several brands in one request for share of voice plus a per-prompt breakdown. Extra brands are free: every brand is read out of the same answers, so it is the prompts and runs that cost credits.
The answer, and every page behind it
Read a whole answer as Markdown or plain text with the pages it cites, the sentence that cites each one, the searches it ran, and every page it read while searching — cited or not. When a ranking moves, this is where you find out which source moved it.
Find out where you stand in ChatGPT’s answers—then export it to CSV.
Prefer not to write code? Paste the questions your buyers ask into FetchLayer Research Chat, ask whether ChatGPT names you, whether it cites you and who it recommends instead, and get a clean table for the next content review.
- ✓Ask questions in plain English
- ✓Analyze themes, sentiment, and pain points
- ✓Download the structured results as CSV or JSON
No code or setup required · Uses your FetchLayer credits
For these 8 buyer questions, check over 3 runs each whether ChatGPT mentions us and whether it cites our domain, list who it recommends instead with their ranks, and export it as CSV.
I ran each question three times, one credit per answer. The table gives the mention rate and citation rate per question, your average rank where you appeared, and the competitors ChatGPT recommended with theirs. It is ready to download.
chatgpt-ai-visibility.csv
8 questions · 6 columns · ready to download
Solutions
Build the workflow around the feedback.
Where you rank in search
Google, Bing and DuckDuckGo results and rank checks on the same key — the classic side of the same question, and it moves independently.
Explore →Where the opinions come from
Assistants lean on community discussion. Read what Reddit actually says about you and your competitors.
Explore →From raw feedback to action
One request is the start of the workflow.
Store the structured response, run it on a schedule, pass it to an LLM, or feed it into the system your team already uses. FetchLayer handles retrieval so you can focus on the outcome.
- 01
Find the questions
Run /prompt-discovery on your topic or brand: the prompts people ask, and the searches ChatGPT runs to answer them — the queries your pages have to rank for to be readable by it.
- 02
Measure where you stand
Run /ai-rank on the questions that matter, over several runs, and store the aggregate: mention rate, average rank, citation rate. One run is an anecdote; a rate is a baseline.
- 03
Watch it move
Re-run on a schedule with the prompt, country and web-search mode fixed, and read /ask when a number moves to see which sources the answer leaned on that time.
One command.
Your agent does the rest.
Use the ChatGPT endpoint directly from your MCP-compatible agent. Ask it to retrieve public feedback, identify patterns, and turn the result into a useful brief without writing integration glue.
1 Run one command, then sign in
$ npx fetchlayer
◇ Agents
│ Claude Code and Codex
◇ Signed in as you@company.com
◇ Connected
│ ✓ Claude Code ✓ Codex
It opens a sign-in page in your browser. New here? Signing in creates your free account.
2 Ask
›Does ChatGPT recommend us for best reddit api alternatives, and who does it recommend instead?
fetchlayer.chatgpt_ai_rank
Ran the prompt three times, three credits. FetchLayer was not mentioned in any run and was never cited — mentionRate 0, citationRate 0. Apify was mentioned every time at an average rank of 3. The answers led with Arctic Shift and PullPush, and laid their options out as a bulleted list.
No key to copy and nothing to install. New accounts are free, with no credit card.
Use cases
What teams build with AI visibility data.
Same API, endless applications. Here is what teams ship with ChatGPT mentions, citations and ranks.
AI visibility tracking
Check where your brand ranks among the options ChatGPT recommends for your buyers’ questions, over several runs, and store the mention and citation rates as a baseline.
Citation gap analysis
Find the questions where ChatGPT names you but cites someone else’s pages — and the ones where it reads your page and still cites a competitor.
AI brand monitoring
Watch the answer to a question your category owns, and hear when a new brand breaks into the list ChatGPT recommends or a new site starts getting cited.
Answer engine optimization
Read the web searches ChatGPT actually runs to answer a prompt, and write the pages that rank for those queries rather than guessing at them.
Competitive share of voice
Compare a set of brands across the prompts that matter to your market, and report share of voice, mention rate and citation rate per prompt.
Client reporting for agencies
Run the same prompts every week with country and web-search mode fixed, and show a client how their visibility in AI answers moved, with the runs behind every number.
Compare approaches
Spend time on the insight, not the collection layer.
| What you need | FetchLayer | Official API | Build it yourself |
|---|---|---|---|
| Mentions and citations reported separately | ✓ | No such API | You write the matcher |
| Rank across repeated runs, with the aggregate | ✓ | n/a | You run and average it |
| The competitors the answer named | ✓ | n/a | You parse the answer |
| The searches ChatGPT actually ran | ✓ | Not exposed | You scrape the session |
| Ready for AI and MCP workflows | ✓ | Your integration | Your integration |
FetchLayer provides access to publicly available data. It is not affiliated with, endorsed by, or sponsored by the platform.
Start free. Scale when ready.
Try it free, buy credits as you go, or take a monthly plan when your volume is steady.
Free
$0
30 requests
Enough to call the platforms you care about and read real responses before you pay anything.
- Every platform and endpoint
- REST and MCP
- No credit card
Pay as you go
$1.99
per 1,000
Buy credits when you need them. They stay on your account until you use them.
- Credits never expire
- No monthly commitment
- Same access as subscribers
- ∞ req/min, ∞ API keys
Monthly plan
Starter$25
per month
15,000 requests a month, about 500 a day.
$1.67 per 1,000, $5 less than credits each month
- ∞ req/min, ∞ API keys
1 page fetched is 1 credit
A normal call reads one page. Ask for more pages and each one is one more credit.
The same on every platform
No multiplier for harder targets, and no charge per result returned.
Nothing back, nothing billed
If a request does not return usable data, it costs 0 credits.
Not sure which volume fits?
15 minutes with the founder. Tell us the workload, we tell you what it needs.
Guaranteed throughput on the platform you run on
A dedicated platform from $400/mo, plus $500 for each ~21 req/s. Every other platform on the same key. 99.95% uptime, 24-hour support on Slack or Telegram.
API reference
Every parameter, documented.
All requests are POST with a JSON body and Bearer auth header.
POST /chatgpt/ai-rank Where a brand ranks among the options an answer recommends, over several answers to the same prompt. Per run: rank, citationRank and the method the answer used. Across runs: mentionRate, averageRank, bestRank, worstRank, citationRate and averageCitationRank, plus the same per competitor.
prompt* string The question, as a buyer would type it into ChatGPT target* string | object Your brand: a name, or { name, aliases, domains } competitors array Brands to rank alongside it, up to 10. Same shape as target. runs number Answers to generate for the prompt, 1-5. Defaults to 1. Billed per run. POST /chatgpt/mentions Whether named brands appear in one answer and, separately, whether the answer cites their pages: mentionCount, the sentence around each mention, citedAsSource with the source positions, and retrieved. Also the brands the answer itself recommended, with their ranks.
prompt* string The question to ask targets* array The brands to look for, 1-10. A name, or { name, aliases, domains }. includeAnswer boolean Include the full answer. Defaults to true. country string Two-letter country the answer should come from. Defaults to us. POST /chatgpt/prompt-discovery From a seed topic or brand: the prompts asked, the web searches ChatGPT actually ran while answering them, and prompts it suggests people use. The two lists are labelled observed_search_query and generated_prompt so observation is never mistaken for suggestion.
seed* string A topic ("reddit api alternatives") or a brand ("FetchLayer") seedType string 'topic' (default) | 'brand' maxPrompts number Prompts built from the seed to ask, 1-5. Defaults to 3. includeSuggestedPrompts boolean Also ask which prompts people use. Costs one more answer. Defaults to true. POST /chatgpt/visibility-report Share of voice for a set of brands across a set of prompts, with a per-prompt breakdown of mention rate, average rank and citation rate. Extra brands are free — they are read out of the same answers.
prompts* array The prompts to ask, 1-10 targets* array The brands to compare, 1-5 runs number Answers per prompt, 1-3. prompts × runs must be at most 10. POST /chatgpt/ask The answer to a prompt with everything behind it: Markdown and plain text, the cited pages with the sentence that cites each one, every inline citation, the searches it ran, and every page it read while searching — each flagged cited.
prompt* string The prompt, exactly as a person would type it webSearch string 'auto' (default) | 'on'. There is no off. country / language string Two-letter country (us) and interface language (en). Answers differ by country. Fields marked * are required. Full API reference →
Guides
ChatGPT guides from our blog.
FAQ
Common questions.
How much does FetchLayer's AI visibility API cost?
FetchLayer's AI Visibility API returns ChatGPT answers, the brands they mention, the pages they cite and your rank among the recommendations as JSON over REST or MCP. A request is one ChatGPT answer, and each request costs one credit: $1.99 per 1,000 requests pay-as-you-go, or $25 a month for 15,000, with 30 free requests and no card to start. A request that fails is not billed. The same key covers 36 other platforms, and every route is also a tool on FetchLayer's MCP server at https://mcp.fetchlayer.dev, for Claude, ChatGPT, Cursor and other MCP clients.
What is an AI visibility API?
It answers the question SEO tools answer for Google, but for AI assistants: when someone asks ChatGPT the question your buyers ask, does the answer name you, does it cite your pages, and where do you sit among the options it recommends? Send a prompt and your brand, and you get that back as structured JSON — mention counts, the sentence around each mention, the citations, your rank among the recommendations, and the competitors the answer put forward instead. This is the measurement side of what SEO now calls answer engine optimization or GEO.
What is the difference between being mentioned and being cited?
They are two different outcomes with two different fixes, and most AI brand monitoring collapses them into one number. An answer can name your brand in its prose while none of your pages are among the sources it links — you are part of the consensus but not the evidence. Or it can cite one of your pages without recommending you at all — your content is being read, but someone else gets the recommendation. Every route reports both separately: mentioned beside citedAsSource, and in a rank check, rank among the recommendations beside citationRank among the cited sources. There is a third state worth watching, retrieved: ChatGPT read one of your pages while searching and then cited someone else.
Do I need an OpenAI account or an OpenAI API key?
No. You send your FetchLayer key and a prompt, and you get back what ChatGPT answers a visitor with no account — the real consumer-facing answer, not an API completion. There is no model, temperature or system prompt to choose, because a visitor has none of those either. FetchLayer is not affiliated with, endorsed by, or sponsored by OpenAI.
Answers change every time. How can you track anything?
By measuring the variation instead of pretending it is not there. Ask the same prompt once and you have an anecdote; ask it several times and you have a rate. /ai-rank takes a runs count and reports mentionRate, averageRank, bestRank, worstRank, citationRate and averageCitationRank across those runs, with the same figures for each competitor. A brand mentioned in 5 runs out of 5 is in a different position from one mentioned in 1 — and a single answer cannot tell those apart. Keep the prompt, country and web-search mode fixed when comparing week to week, and read the aggregate rather than any one run.
How do I know which prompts to track?
Start with /prompt-discovery. Give it a topic or your brand name, and it returns the prompts it asked, the web searches ChatGPT actually ran while answering them, and prompts it suggests people use. The two lists are labelled and kept apart, because they are different kinds of evidence: observed_search_query means ChatGPT really ran that search, so those are the queries your pages have to rank for to be readable by it; generated_prompt means ChatGPT wrote that prompt when asked, which is a suggestion, not an observation. Feed the ones that matter into /ai-rank.
Can I compare several brands across several questions at once?
Yes — /visibility-report takes a list of prompts and a list of brands and returns share of voice per brand, plus a per-prompt breakdown of mention rate, average rank and citation rate. Extra brands are free, because every brand is read out of the same answers; it is the prompts and runs that cost credits. The request is bounded by answers: prompts × runs must be at most 10, so ten prompts at one run each is fine. For wider tracking, run several smaller reports on a schedule and store the results.
What comes back from one answer?
The answer as Markdown and as plain text, the pages it cites — each with position, URL, title, domain, the label shown on the citation, and the sentence that cites it — every inline citation, the web searches it ran, and every page it looked at while searching, each flagged with whether it was cited. That last list is useful on its own: a page can be read and never cited. Null means the answer did not show a field, not zero.
How does billing work?
One credit per answer ChatGPT generates, which is exactly what pagesScraped reports. /ask and /mentions cost 1; /ai-rank costs its runs; /prompt-discovery costs one per prompt asked, plus one more while it also asks for suggested prompts; /visibility-report costs prompts × runs. Matching, ranking and aggregation cost nothing extra, and an answer that could not be produced is never billed.
How long does a request take?
Every answer is a real ChatGPT session, so a single answer takes a few seconds rather than milliseconds. A request’s answers are generated alongside each other rather than one after the other, so asking for more runs costs more credits but little extra time — a five-run rank check and a full ten-answer visibility report both finish well inside a minute. Give your HTTP client a generous timeout anyway.
What is not available?
You cannot turn web search off: a visitor without an account has no such setting, so webSearch is auto or on, and usedWebSearch reports what it did. Some answers state which model produced them and some do not, so model is null rather than guessed. Some answers do not show the searches behind them, and then searchQueries and retrievedPages are null rather than empty, with notes saying so. And nothing here measures traffic, spend or clicks — it measures what ChatGPT answers, not how many people saw it.
Can my AI agent use it?
Yes. All five routes are MCP tools on the same FetchLayer MCP server, named chatgpt_ask, chatgpt_mentions, chatgpt_ai_rank, chatgpt_prompt_discovery and chatgpt_visibility_report. Tool calls use the same key and are billed exactly like REST, so an agent running a five-run rank check still pays five credits.
Which assistants are covered?
ChatGPT today. Every route takes a provider field, which is chatgpt by default and currently its only value, so the same requests will serve further assistants as they are added rather than needing a different shape.
Start pulling ChatGPT visibility data today.
Get a free API key, make your first request, and put public feedback to work in your own product or research workflow.
Used by developers at
Individual developers or teams — not official partnerships