Eight GEO mistakes, and how to check whether you are making them
· updated October 18, 2026· screens checked September 23, 2026
Common GEO problems include blocking the crawlers that send visitors, publishing an llms.txt whose pages do not support it, and publishing facts in a form people can read but machines cannot. Each of the eight mistakes below includes a check that takes a few minutes.
GEO here means Generative Engine Optimization: preparing a site for AI search systems such as ChatGPT, Perplexity, Claude and Google’s AI results. It does not refer to geography or location pages. For the full overview, see GEO for WordPress.
Each item follows the same format: the mistake, how to check for it, and what to change. None of the changes requires a subscription or a new platform.
1. Blocking every AI crawler at once
The mistake: blocking every crawler with an AI-related name to keep content away from AI systems. These crawlers behave differently. Some send visitors back: OAI-SearchBot, PerplexityBot and Claude-SearchBot fetch pages so that answers can cite and link them. Others collect content and send nothing back. Blocking the first group removes referral traffic without any benefit. Google-Extended is a robots.txt token rather than a crawler; it controls whether content Google has already crawled may be used for Gemini training and grounding.
- Check: before deciding, review which crawlers visited the site over the last month, by name. A crawler log is the simplest way to do this.
- Fix: decide by crawler behaviour, not by the word “AI”, and treat it as a business decision. If customers must visit the site to buy (to view a demo, download a file or place an order), being mentioned is worth more than the lost click, and allowing training crawlers is a reasonable choice. AumCreate’s own robots.txt allows all of these crawlers for this reason. If the content itself is the product and a summary replaces the visit, the opposite choice applies. In either case, the decision should not be based on the crawler’s name.
2. Treating robots.txt as a barrier
The mistake: adding a robots.txt rule and treating access as blocked. A robots.txt rule is a request. Operators that state they honour it will follow it; others can ignore it, and the file does not prevent access.
- Check: after adding the rule, confirm whether that crawler still appears in the logs.
- Fix: to stop a crawler, refuse the request at the server, and keep the robots.txt rule as the published policy. Be clear about which of the two the site relies on.
3. An llms.txt without supporting content
The mistake: an /llms.txt file that lists thin or outdated pages, or pages whose content differs from the file’s descriptions. The file is an index and does not replace content. A related mistake: two plugins both serve /llms.txt, and the configured version is not the one being served.
- Check: open /llms.txt in a browser and follow three entries. Each page should match the description in the file.
- Fix: generate the index from published content rather than writing it by hand, and confirm which plugin is serving it, as described in the llms.txt guide.
4. The answer placed too far down the page
The mistake: the page opens with background and positioning, and the answer appears several screens later. Visitors skip past it, and a model summarising the page has no reason to prefer that sentence over an earlier one from another source.
- Check: read the first two sentences of the page on their own, without the heading. They should answer the question in the page title.
- Fix: place a self-contained answer near the top: two or three sentences that are clear when quoted alone, without references such as “as mentioned above”.
5. Facts available to people but not to machines
The mistake: the page appears complete, but its structured data lacks a field that the search engine treats as required. Nothing looks wrong on screen, so the problem goes unnoticed. AumCreate’s own product pages displayed an image, but the Product structured data had no image property, which is required for merchant listings. The rich result was withheld for three weeks while every page displayed correctly.
- Check: run product and article pages through a structured data test, and review the warnings as well as the errors.
- Note on FAQ results: Google stopped showing the FAQ rich result in May 2026 and removed its documentation in June. A test of an FAQ page now reports no rich result; this is expected and does not indicate broken markup. Keep the markup, because it remains a machine-readable pairing of questions and answers.
- Fix: maintain the machine-readable version of each fact as part of the page. Facts that appear on screen but not in the markup will drift apart over time.
6. Key facts only in images or rendered by JavaScript
The mistake: the price, the specification table or the answer appears only in a screenshot, or is fetched and rendered in the browser. Some crawlers execute JavaScript, many do not, and almost none read text from images. The fact is visible to a person but not available to a machine.
- Check: view the page source (not the inspector) and search it for the relevant number. If it is not in the delivered HTML, treat it as missing.
- Fix: put the fact in the HTML, and use the image as an illustration rather than the only source.
7. Unverifiable numbers
The mistake: claims such as “trusted by 10,000+ teams”, “reduces workload by 70%” or a review score with no traceable source. Models cross-check claims against other sources; a number that appears nowhere else lowers confidence in the whole page.
- Check: for each number on the page, identify where a third party could verify it. A number that cannot be verified elsewhere weakens the page.
- Fix: use verifiable facts (what is included, how many, the price, the next step) and remove numbers that cannot be verified.
8. An inaccurate “last updated” date
The mistake: the date on the page, or dateModified in the markup, changes on every deploy or never changes. In both cases it carries no information. Freshness signals are useful only when accurate; a page marked as current that describes something changed a year ago is worse than a page with an accurate older date.
- Check: select three pages and confirm what changed on the date each page shows as its update date.
- Fix: change the date when the content changes, not when the site is rebuilt.
Priorities
The two highest-priority checks are: review which crawlers have actually visited, and read the first two sentences of each key page on their own. These address the most common reasons a page is not cited.
AumCreate also provides this work as a fixed-price setup service: $199, three working days, with the same checklist for verification.
Common questions
- Is GEO different from SEO?
- The two overlap: clean structure, original content and correct markup serve both. The difference is the target. A search engine ranks pages; a generative engine composes an answer and selects which sentences to use. GEO therefore places more weight on quotable content: self-contained answers, verifiable facts and machine-readable versions of on-page information.
- Is an llms.txt file required?
- No. It is a proposed format, support varies between AI providers, and it costs little to add. It is an index of the content and does not replace it; if the pages it lists are thin, the file adds little. Improve the pages first.
- Does blocking GPTBot affect Google rankings?
- No. GPTBot is not Googlebot, and blocking it does not affect Google Search. Google-Extended relates to Google’s AI features rather than ranking, and the search-facing AI crawlers link back when they cite a page; these require more consideration.
- How can the results be measured?
- Two indicators: whether the AI crawlers that refer traffic continue to visit, and whether the revised pages appear in answers to the questions they cover. Neither changes within a week, and neither is visible in a rank tracker alone.
Plugin used in this guide
AumVisoManage metadata, structured data, XML sitemaps, llms.txt, and related site information used by search engines and AI crawlers.Plugin page →