SEO and GEO for a New Project: Google, ChatGPT and Perplexity
What a new website needs on day one to show up in Google and in ChatGPT, Claude and Perplexity answers: indexing, JSON-LD, llms.txt and the real AI crawlers.

In this article
To show up in Google and in answers from ChatGPT, Claude or Perplexity, a new project needs the same foundation: pages crawlers can read in the server HTML, indexed, without accidentally blocking search bots, and content that answers questions directly and verifiably. Google says there are no additional requirements for AI Overviews or AI Mode beyond being indexed and eligible to show with a snippet. What is genuinely AI-specific is choosing which bots to let in (search and training crawlers are different) and writing so you can be cited.
SEO and GEO: what they are and why they are not two separate jobs
SEO (search engine optimisation) is getting your pages crawled, indexed and ranked for the searches that matter. GEO (Generative Engine Optimisation) is getting AI assistants such as ChatGPT, Claude, Perplexity or Google's generated answers to use your site as a source and link to it. The label is new; the mechanics, much less so.
Google is blunt about it in its page on AI features and your website: there are no additional requirements or special optimisations to appear in AI Overviews or AI Mode, and you don't need new machine-readable files, AI text files or special markup. The page just has to be indexed and eligible to be shown in Search with a snippet. OpenAI, Anthropic and Perplexity run their own crawlers, but they reward the same things: readable HTML, permitted access and clear answers.
Be wary of anyone selling GEO as a separate discipline with its own tricks. For a new project, most of the work is solid technical SEO plus content that answers specific questions. The genuinely new part comes down to two decisions: which AI bots you allow, and whether you publish an llms.txt.
The technical foundations you need on day one
Indexing and robots.txt
robots.txt tells crawlers which URLs they can access. Google's introduction to robots.txt says it is mainly used to avoid overloading your site and is not a mechanism for keeping a page out of Google: for that you use noindex or password protection. The classic launch mistake is the opposite one: shipping the staging robots.txt or a site-wide noindex to production. Check it the day you go live.
XML sitemap
A sitemap.xml with absolute URLs and only the pages you want indexed. Google's sitemap guide sets the limit at 50 MB uncompressed or 50,000 URLs per file, says Google ignores priority and changefreq, and only uses lastmod when it is consistently and verifiably accurate. Submit it in Search Console or declare it in robots.txt with a Sitemap: line.
Canonical
Every page should declare its canonical URL with rel="canonical". Google's documentation on duplicate URLs calls it a strong signal, not a command, and combines it with redirects and sitemaps: the signals stack. Decide early whether your domain uses www or not and a trailing slash or not, and 301-redirect everything else.
hreflang, if your site is multilingual
If you publish in several languages, each version must list itself and every other version with hreflang, plus an x-default for everyone else. The localised versions guide warns that if two pages don't point to each other the tags are ignored, and that Google uses neither hreflang nor the lang attribute to detect a page's language: it works it out from the text. Translate the page properly, not just the navigation.
Server-side rendering
Google renders JavaScript with headless Chromium, but in a separate queue after crawling. Its JavaScript SEO basics put it plainly: server-side rendering or pre-rendering is still a great idea, because it makes your site faster and because not all bots can run JavaScript. For GEO this matters even more: if your headline, pricing or FAQs only exist after JavaScript runs, assume some AI crawlers will never see them. Test with curl against your URL; whatever is missing there, don't count as read.
Search Console and Bing Webmaster Tools
Add your domain to Google Search Console on launch day: you verify ownership, submit the sitemap, inspect specific URLs and see which pages are indexed, which are not, and why. Then add Bing Webmaster Tools: Bing lets you import sites already verified in Search Console, sitemaps included, without verifying again. If your platform supports it, switch on IndexNow, a protocol for telling search engines a URL has been added, updated or deleted; it is supported by Bing, Naver, Seznam.cz, Yandex and Yep.
| Item | What it is for | Typical launch mistake |
|---|---|---|
| robots.txt | Controlling which URLs get crawled | Copying the staging file with Disallow: / |
| noindex | Keeping a page out of the index | Leaving it on across the whole site |
| sitemap.xml | Faster URL discovery | Listing redirected, noindexed or relative URLs |
| canonical | Choosing the right version of a page | Pointing every page at the home page |
| hreflang | Serving the right language | Links that aren't reciprocal |
| Server HTML | Letting any bot read the content | Content that only appears after JavaScript runs |
| Search Console and Bing | Seeing what is indexed and why not | Not setting them up until weeks later |
Structured data: what to mark up and what to really expect
Structured data describes your page in a format machines understand without guessing. Google recommends JSON-LD where your setup allows it, because it is the easiest to maintain. Its general guidelines make two things clear: markup enables a feature but doesn't guarantee it appears, and you must not mark up content that visitors can't see. JSON-LD has to be a true representation of what is in the HTML.
| Type | Where it goes | What Google says |
|---|---|---|
| Organization | Home page or about page | No required properties; helps disambiguate the company and can influence the logo and knowledge panel. sameAs links your social and review profiles |
| SoftwareApplication | Product page | The rich result requires name, offers.price and either aggregateRating or review |
| Article | Every blog post | No required properties; recommends author, datePublished, dateModified, headline and image |
| BreadcrumbList | Pages with a hierarchy | Uses breadcrumbs to categorise the page in results |
| FAQPage | Pages with FAQs | The FAQ rich result is no longer shown in Google |
The details matter. For Organization, Google suggests the home page or a single page describing the company, with every property that applies. For SoftwareApplication, the rich result needs a rating or review: if you have no real reviews yet, still mark up name, category and price, but don't invent an aggregateRating, because you would be marking up something that doesn't exist. For Article, give each author their own author field, typed Person, with a url or sameAs to their profile, and only the name in author.name. For BreadcrumbList, the trail should match the one users see.
FAQPage: according to the Search Central changelog, the FAQ rich result stopped being shown in Google in May 2026. The markup isn't banned and other systems may still read it, but don't add it expecting the dropdown in Google. What still pays off is having the questions and answers written in the HTML: it is the format that gets quoted most easily.
llms.txt: what it is and what it isn't
llms.txt is a proposal by Jeremy Howard, published in September 2024: a Markdown file at /llms.txt with an H1 holding the project name, a short blockquote summary, optional detail sections, and H2-headed lists of links to the pages a model should read. The same proposal suggests offering clean Markdown versions of each page, with .md appended to the URL.
It is a proposal, not a standard every system has adopted, and Google explicitly says in its AI features guide that you don't need AI text files to appear in AI Overviews or AI Mode. Our view: publish one because it takes half an hour, helps the agents and tools that do read it, and forces you to summarise your product in a few lines, which is useful in itself. Don't expect traffic or rankings from it, and never use it as a substitute for readable HTML.
AI crawlers: who is who and what to block
Each company now splits its crawlers by purpose. The distinction that matters: some collect content to train models, some index to search and cite, and some act on behalf of a user who asked for something specific. Blocking training doesn't have to remove you from answers; blocking search does.
| Token | Company | What it does | Honours robots.txt? |
|---|---|---|---|
GPTBot | OpenAI | Training foundation models | Yes |
OAI-SearchBot | OpenAI | Surfacing sites in ChatGPT search | Yes |
ChatGPT-User | OpenAI | Actions a user asks for in ChatGPT or a custom GPT | May not, as the user initiates it |
ClaudeBot | Anthropic | Collecting content for training | Yes, plus Crawl-delay |
Claude-SearchBot | Anthropic | Indexing to improve search results | Yes |
Claude-User | Anthropic | Fetching a page when a user asks Claude | Yes |
PerplexityBot | Perplexity | Surfacing and linking sites in results; not used for training | Yes |
Perplexity-User | Perplexity | Visiting a page to answer a user | Generally no |
Google-Extended | Control token: Gemini training and grounding in Gemini and Vertex AI | Yes (not a separate crawler) |
The sources: OpenAI's crawler page says each setting is independent, that sites opted out of OAI-SearchBot aren't shown in ChatGPT search answers, and that changes take about 24 hours to apply. Anthropic's help article explains that blocking ClaudeBot excludes your future content from training, blocking Claude-User stops it being retrieved when a user asks, and blocking Claude-SearchBot stops it being indexed for search. Perplexity's documentation recommends allowing PerplexityBot. And Google's list of common crawlers states that Google-Extended doesn't affect inclusion or ranking in Google Search.
A sensible robots.txt for a new project
If you want to appear in assistants without handing your text over for model training, this is a reasonable baseline. Each line goes into the file as is; leave a blank line between groups:
User-agent: GPTBotfollowed byDisallow: /(out of OpenAI training)User-agent: ClaudeBotfollowed byDisallow: /(out of Anthropic training)User-agent: Google-Extendedfollowed byDisallow: /(out of Gemini training and grounding; Search is unaffected)User-agent: *followed byAllow: /(everyone else, includingGooglebot,Bingbot,OAI-SearchBot,Claude-SearchBot,Claude-UserandPerplexityBot)Sitemap: https://yourdomain.com/sitemap.xml
For a project that is just starting, our advice is to allow training too unless you have a clear reason not to (paywalled content, valuable proprietary data): models knowing your brand is part of being recommended. What almost never makes sense is blocking the search bots and then wondering why ChatGPT doesn't cite you. And remember robots.txt is a request, not access control.
What Google says about AI Overviews and AI Mode
A faithful summary of Google's documentation on AI features, current as of October 2026:
- There are no additional requirements or special optimisations: ordinary SEO best practice applies.
- You don't need new files, AI text files, special markup or any particular structured data type.
- The only technical requirement is that the page is indexed and eligible to be shown in Search with a snippet.
- Both features may use a "query fan-out" technique: issuing several related searches across subtopics and sources to build the answer, which allows a wider and more diverse set of links than classic results.
- The controls are the usual ones:
nosnippet,data-nosnippet,max-snippetandnoindex.
For a small project, fan-out is good news: answers are assembled from narrower sub-questions, so a page that answers one specific question really well has a chance even if you don't win the main query. And be careful with nosnippet on pages you want cited.
How to write content that gets cited
An AI assistant quotes passages that stand on their own. Write every page assuming someone will lift a single paragraph, and that it must still be true and understandable out of context.
- Direct answer first. The opening paragraph answers the question in the title in two to four sentences, no preamble.
- Explicit definitions. "X is..." in one sentence. It is the format most often reused in answers.
- Data with sources. Every figure linked to its primary source. If you can't link it, phrase it as a rule of thumb, not a number.
- Tables for comparisons. Prices, plans, requirements, differences between options: in a real HTML table, not an image.
- Visible authorship. Google's helpful content guide asks whether it is self-evident who wrote the content and whether pages carry a byline where one is expected; it calls fabricated author profiles a form of deception.
- Honest dates. Published and updated dates, and real updates: the same guide flags changing dates to look fresh without substantial changes.
- The essentials in the HTML. Pricing, FAQs, who you are and what the product does, as server-rendered text, not in a PDF, an image or a component that loads later.
Picture a booking app for physiotherapists. A "Features" page full of marketing lines rarely gets quoted. A page titled "How to reduce no-shows at a physiotherapy clinic", with a three-sentence answer, a table comparing SMS and email reminders and visible pricing, stands a much better chance when someone asks an assistant. For the wider launch picture, see our guide to launching a web project.
Technical SEO and GEO checklist
SEO and GEO: checks before and right after launch
0 of 15 done
This is the technical slice. The full launch list, including measurement, legal and distribution, is in our product launch checklist.
What order to do it in: the first week
- Before going live: robots.txt, noindex, canonical and sitemap checked on production, not locally.
- Launch day: Search Console verified, sitemap submitted, home page and two or three key pages inspected; site imported into Bing Webmaster Tools.
- Days 2 and 3: Organization, product and article JSON-LD, validated with Google's tools;
llms.txtpublished. - Days 3 to 5: about page, pricing in HTML, real FAQs and the first posts answering specific questions your audience asks.
- End of the week: check in Search Console what got indexed, what didn't and why; fix and request indexing for what matters.
- In parallel: directory and social profiles linked to each other and from your
sameAs, because they are mentions search engines and assistants can find. We cover this in Product Hunt and launch directories.
These checks get forgotten because there are many and nobody orders them, as the article on not knowing what to do each day of a launch explains. LaunchSuite gathers them in its launch readiness check, with the SEO and GEO ones measured from outside your site.
Frequently asked questions
Do I need an llms.txt to appear in ChatGPT or AI Overviews?
No. llms.txt is a proposal published at llmstxt.org, not a universally adopted standard, and Google says you don't need AI text files to appear in AI Overviews or AI Mode. It is cheap to publish and helps tools that read it, but what decides things is having your content in the HTML and not blocking search bots.
If I block GPTBot, will I disappear from ChatGPT?
Not necessarily. According to OpenAI, GPTBot is the training crawler and OAI-SearchBot the search crawler, and each setting is independent. If you block GPTBot but allow OAI-SearchBot you can still appear in ChatGPT search answers; if you block OAI-SearchBot, you won't.
Is FAQPage markup still worth adding?
The FAQ rich result stopped being shown in Google in May 2026, according to the Search Central changelog. The markup isn't banned and other systems may read it, but the real value is having the questions and answers written in the page's HTML.
Do I need server-side rendering for SEO?
Google can render JavaScript, but it recommends server-side rendering or pre-rendering because it speeds up the site and because not all bots run JavaScript. To appear in AI assistants, make sure your main content is in the HTML the server returns.
Does structured data improve Google rankings?
Google doesn't present it as a ranking factor: it says structured data helps it understand the page and enables rich results without guaranteeing them. Use it to describe your company, product and articles accurately, and never to mark up content that isn't visible.
Sources
Sources consulted and checked for this article:
- Google Search Central: AI features and your website
- Google Search Central: introduction to robots.txt
- Google Search Central: build and submit a sitemap
- Google Search Central: consolidate duplicate URLs
- Google Search Central: localized versions of your pages
- Google Search Central: JavaScript SEO basics
- Google Search Central: get started with Search Console
- Bing Webmaster Blog: import sites from Search Console
- IndexNow
- Google Search Central: introduction to structured data
- Google Search Central: general structured data guidelines
- Google Search Central: Organization structured data
- Google Search Central: software app structured data
- Google Search Central: Article structured data
- Google Search Central: BreadcrumbList structured data
- Google Search Central: latest documentation updates
- llmstxt.org: the llms.txt proposal
- OpenAI: crawlers and user agents
- Anthropic: how it crawls the web and how to block its bots
- Perplexity: crawlers
- Google Search Central: Google's common crawlers
- Google Search Central: creating helpful, reliable content
Your whole launch, in one tool
One project per product, each with its own plan, accounts, calendar and directories. See the plans and start the trial.


