Why the origin matters more than the metric
The situation is hypothetical. A company sells payroll software for small businesses. Monitoring shows the brand appears in 60% of answers to the category questions, and that in some of them the answer states the product "cannot file payroll tax forms," a feature launched a year ago. The 60% figure does not say what to do. Two meetings later, the team is still trading hypotheses: is the site out of date? Is a third-party comparison wrong? Did the model learn this in training, so that no page will change it?
The question that ends the meeting is different: is there an observable page connected to what the platform said? If the answer carries a cited source attached to the passage, open it and check whether it supports the claim. If the collection path reports retrieved results, you can see whether an old page from your own site is among them. If there is neither, the origin is not reported: there may have been an undisclosed search, an answer without search or influence from training. The proportional action is to correct the public sources that describe the product and watch whether the description changes, without choosing a cause the data cannot distinguish.
The same reasoning applies to what is going well. A favorable recommendation displayed alongside a citation to a third-party review can vanish without anything changing on your site. Knowing which page was presented as a reference lets you inspect its content and monitor changes; it does not prove that the page caused the recommendation.
Nobody controls the answer. You control what you publish on your own site and can request corrections to third-party pages, but you do not control whether or when a platform will use them. Google sets no additional requirements to appear in AI Overviews or AI Mode and requires no special files or markup. Source analysis shows which pages are observable today and where a correction is possible; it does not guarantee visibility.
Cited source and retrieved source: the difference that changes the decision
The four kinds of evidence an answer leaves, and what each one lets you conclude, are defined in the glossary entry on AI mentions, recommendations and citations. Two of them, cited and retrieved sources, lead to wrong decisions when they are confused. In OpenAI's Responses API with web search, the sources field returns retrieved URLs while inline citations show the most relevant references, and the number of sources is often greater than the number of citations. That contract belongs to this API path, not to the ChatGPT interface or other platforms.
| Evidence | What it lets you decide | Wrong decision when confused with the other |
|---|---|---|
| Cited source | Which pages the platform displays as references for the category; whether yours is among them; which pages are worth opening to check a wrong statement | Concluding that your page "was not found" just because it was not cited, even when it was reported among the retrieved results |
| Retrieved source | Whether the platform reports retrieving your page for that question | Celebrating that "the AI read our site" when the page merely appeared in the list, with no evidence of full reading, influence or a reason it was not cited |
The first confusion treats citations as a complete inventory of the search path. When a contract also exposes retrieved results, a page missing from citations may be absent from search or may have been retrieved without being cited, and the two situations call for different work: in the first, findability may be the problem; in the second, compare the page's content with that of the references displayed. The second confusion treats retrieval as proof of use, even though it does not demonstrate full reading or weight in the answer. A citation alone also does not prove that the page supports the passage: open it and check.
“Without that observable link, the cause remains unknown: the metric is the symptom; the source is an investigation hypothesis.”
— LastfindWhen the platform does not report what it retrieved
Not every platform returns a list of retrieved pages, and the absence of that data does not mean the search found zero results. There may have been a search without an exposed list, a search with an empty list or an answer without search, and what can be observed varies by platform and collection path.
In OpenAI's Responses API with web search, "retrieved but not cited" is observable because the API exposes both lists. In Anthropic's API, a successful search with no matches returns an empty list, and the model decides whether to search or answer directly: an empty list and no search are different states. The Gemini API exposes the queries the model executed but documents no list of fetched pages beyond the cited ones; an executed query says what was searched, not which pages were found. Google AI Overviews and AI Mode may use query fan-out, several searches across subtopics, and Google documents no complete list of the pages; the missing data belongs to the observed path, not to your page.
Perplexity's public contract is in transition. In May 2025, Perplexity fully removed the citations field in favor of search_results. In the Sonar API, both fields still appear in the example response without a description of either, and Sonar Chat Completions support ended on September 27, 2026, with requests being reformulated as Agent API requests. In the Agent API, the [n] markers sit in the answer text and the sources come back separately in a search_results output item. None of these contracts reliably separates cited, used and merely retrieved results.
From this follows a record-keeping rule. An answer without a retrieved-source list does not say, by itself, whether the platform searched, and a record that writes "empty" whenever the list is absent manufactures the conclusion "we were not retrieved" where the data is unavailable. Fill the list only from results the collection path explicitly returns; when nothing is returned, the record says "not reported," and only an explicit empty result supports saying that the search found nothing. Related searches such as fan-out queries are evidence of what was searched, not of pages found; storing them as retrieved URLs invents pages nobody saw.
What source analysis lets you decide
A well-done source analysis leads to four decisions. The examples remain hypothetical and follow the payroll software company.
Finding which third-party domains appear as category references
Suppose 200 valid answers over 30 days for the category questions, on a platform that reports citations, adding up to 480 citations, counting each URL once per answer. Aggregated by domain:
| Domain | Citations | Share (÷ 480) |
|---|---|---|
| Software review site | 132 | 27.5% |
| Trade publication for small-business management | 96 | 20.0% |
| Accountants' forum | 72 | 15.0% |
| Site of a tracked competitor | 48 | 10.0% |
| Your domain | 24 | 5.0% |
| 31 other domains | 108 | 22.5% |
Three domains the company does not own account for 300 of the 480 citations, 62.5%. Your site shows up at 5%. That number alone still does not say what to do; it says where to read.
Open the most-cited pages on those three domains and check what they state about your brand: is the listing on the review site complete and current? Does the publication's comparison include you? Is the forum thread complaining about something already fixed? Each page has already appeared as an observable reference, and the priority is to verify it and, where there is a legitimate path, correct it. The data cannot promise that a new page will be cited or when a correction will take effect.
Noticing that the platform cites an old page of yours
Of the 24 citations to your domain, 19 point to a pricing page published two years ago, describing the old plan, and 5 to the current page. What is observable is that the old page appears as a reference much more often; the collection does not prove that it caused the outdated statement. Because the page is yours, it is worth redirecting or updating it and checking that the current page answers the question explicitly. What you do not control is timing or effect; the decision ends with new collections over the following weeks to observe whether the citation changes.
Investigating the wrong statement and the page displayed as a reference
The passage "cannot file payroll tax forms" comes, in 11 of the 14 answers where it appears, with a citation to a third-party comparison from 2024, published before the feature existed. In the other 3, no citation is attached to the passage. The decision splits: ask the comparison's editor for an update, with the information and the page that proves it; make the feature explicit on the relevant page of your own site; and collect again. The 3 answers without a citation are the part the analysis cannot settle on its own: they may come from training, an undisclosed search or another path, and the available action is to correct public sources and watch.
Separating what gets fixed on your site from what requires third parties
The three previous decisions fit into a triage table, which is the practical output of the analysis.
| Observed origin | Who controls it | What to do | How to verify |
|---|---|---|---|
| Outdated page of your own, cited | You | Update or redirect; make the information explicit on the current page | Next collection: does the citation migrate to the current page? |
| Page of your own, retrieved but not cited | You | Compare it with the cited pages: questions answered, attributes, format | Next collection: does the page start being cited? |
| Third-party page with wrong information | The third party | Request a correction with evidence; publish the correct version on your own site | Did the third-party page change? Did the citation move to yours? |
| Accurate third-party page cited in the category without mentioning you | The third party | Check for a legitimate path to inclusion; publish on your own site the information that only exists there | Does the domain start citing your brand? Does your page enter the cited list? |
| No citation and no retrieval reported | Nobody observable | Correct every public source that describes the product; do not conclude the model "read nothing" | Following collections: does the description change? |
The last row is the easiest to get wrong. With no origin data, the temptation is to blame training and give up, or to blame your own site and rewrite it. The honest record says "not reported," and the proportional action is to fix what is public and watch.
What a serious source analysis has to deliver
Any monitoring needs the original answer, separate evidence lists and complete export, requirements set out on the GEO monitoring page. Source analysis adds three more, each checkable in a trial account.
First, "not reported" must be distinct from "empty list" per answer and in the export; to check it, find an answer from a platform or path that does not report retrieved sources and see how it appears. Second, the tool needs aggregation by domain and URL with a path back to the answers, because the decision concerns pages and sites rather than isolated answers; ask for the most-cited domains in a period and follow one back to the answers in which it was cited.
Third, the historical series needs a record of when a platform contract changed. A renamed or removed field, as Perplexity did in May 2025, can change a series without the AI behavior changing. To check it, compare two periods and ask whether the fields still mean the same thing in both.
Two items fall outside the minimum standard. A sentiment score per source and an automatic "what to publish" recommendation may help elsewhere, but neither replaces reading the cited page nor proves, on its own, how the platform used that source.
How Lastfind does it
With sources, Lastfind separates the two lists, aggregates by domain and keeps the original answer so fields can be checked later. The collection schedule and each platform's collection mode are on the GEO monitoring page.
The two lists have different origins, and field names require care. Lastfind collects through a data provider, DataForSEO, and in that provider's ChatGPT endpoint sources contains citations while search_results contains retrieved search results, including unused ones. That is the opposite naming from OpenAI's API described above, where sources is the retrieved list. Lastfind stores the first as cited sources and the second as retrieved sources; on other platforms, cited sources come from AI Overview references or answer annotations.
The retrieved list is filled only when the collection provider returns an explicit list, with a marker that separates "empty list" from "provider did not report"; the gap belongs to the collection path, not to your page. Related searches exposed by a platform remain related searches, never retrieved URLs. The answer and its evidence can be opened from the record, so a cited page can be read alongside the actual passage. Lastfind shows what each provider reports: a list of cited sources is not everything the model read, and a citation does not prove the page weighed on the answer.
The report summarizes the cited domains in the period, counting unique domains among cited sources, and shows evidence coverage: the percentage of complete answers with at least one cited source and the percentage with retrieved-source data available, which differs from an empty list. The source report's per-source detail leads back to the answers in which a domain was cited. CSV export covers the complete filtered period and includes date, prompt, platform, status, mentioned brands, cited domains and URLs, retrieved URLs, a dedicated column showing whether retrieved-source data was available for that answer, and collection cost. That column carries the distinction between an empty list and "not reported" outside the dashboard. Because each row includes date and domains, you can build a per-domain series in a spreadsheet.
Lastfind meets only half of the third requirement. It archives each provider response in its original form, with date and platform, separately from normalized evidence, so you can check what a field contained on any day of the series. It does not automatically annotate when a platform contract changed; that annotation is yours, and the archived original answer is what lets you make it with evidence.
What Lastfind does not do today
Lastfind does not score sentiment per source or generate automatic content recommendations: deciding whether a citation was favorable means reading the page, and what to fix comes from the triage table above. It also does not monitor crawlers on your site and has no public API, questions your own logs answer better, and coverage follows the general limits on the GEO monitoring page, with no Copilot or Grok and Gemini only in English-language projects.
Where to start
Pick the statement that bothers you most: the wrong description, the recommendation that goes to a competitor, the comparison that leaves you out. Write the ten category questions in which it appears, without the brand name in all of them, and put them into Lastfind's free plan, with one topic and ten weekly prompts, which collects each prompt in ChatGPT once a week, on Mondays at 4 a.m. Brasília time, with the original answer, cited and retrieved sources kept separate, and export. Sign-up works without a card. Anyone who needs other platforms or daily collection can install the independent edition, open source under the AGPL-3.0-only license, on their own infrastructure, with their own provider credentials; provider and infrastructure costs are separate.
After a month of collections, open the most-cited domains and fill in the triage table. That table becomes the work plan. The percentage will keep moving; the observed pages show where there is a verifiable action.
Platform documentation checked in October 2026.





