AI visibility, how-to
For any business that gets found locally, in English or Spanish
llms.txt for a small business
What it is, what to put in it, and a complete template you can fill in. Plus how to check whether your robots.txt is quietly keeping the AI crawlers out before they ever get to read it.
No developer required for either file. Both are plain text.
- File
- llms.txt, plain text, no code
- Lives at
- Your site root, next to robots.txt
- Also check
- robots.txt, for six AI crawlers
- Cost
- Nothing. It is a text file
- Then
- The free check reads both for you
A plain text file that tells an AI assistant who you are
Not code, not a plugin, not a setting buried in a dashboard. A text file, in your own words.
llms.txt is a plain text file. It sits at the root of your website, the same place as robots.txt, so an AI assistant or crawler can find it at yoursite.com/llms.txt without hunting through the rest of your pages.
It exists because an AI assistant answering a buyer's question does not read your whole site. It reads whatever it can find fast: your home page, maybe a few more, whatever a crawl or a search turns up. llms.txt puts the short version in one place, in plain language: what you do, where you work, and which of your own pages actually answer a buyer's question, so the assistant has something direct to read instead of a guess pieced together from wherever it landed.
It costs nothing to add. It is text, not code. Anyone who can upload a file to a website, or ask whoever hosts the site to do it, can publish one.
What it does not do: no file guarantees that an AI assistant names your business, and nobody can promise that, including us. What llms.txt does is give an assistant a clear, direct answer to read if it does look.
What to put in it
Six things. Write them the way you would tell a person, not the way a form asks for them.
- Your business name, written the same way everywhere else: your site, your listings, your invoices.
- What you do, in the plain words a buyer would use, not internal categories or a slogan.
- The areas you serve. Every city, county or region you actually work in, not just the one on your letterhead.
- The brands you carry or install, if buyers search by brand name.
- Your hours, including "by appointment" or "24/7 emergency service" if that is true.
- The pages that answer a buyer's question. Link the pages themselves, financing, a specific service, a specific brand, your service areas, not just your home page.
A complete llms.txt template for a local business
Fill in the brackets, remove any line that does not apply to you, save it as plain text named llms.txt.
# [Business Name]
> [One or two sentences: what you do and the areas you serve.]
## Business
- Name: [Business Name]
- What we do: [services or products, in plain words]
- Areas served: [city, county, or region, or a list of cities]
- Brands carried: [brand names, if buyers search by brand]
- Hours: [days and hours, or "by appointment"]
- Phone: [phone number]
- Address: [street address, city, state, zip]
## Pages that answer buyer questions
- [Page title](https://yoursite.com/page-url/): [the question this page answers]
- [Page title](https://yoursite.com/page-url/): [the question this page answers]
- [Page title](https://yoursite.com/page-url/): [the question this page answers]
## Contact
- Email: [email address]
- Website: [https://yoursite.com]
Filled in, it reads like this. Fictional example, layout only, not a real business.
# Northwind Garage Doors
> Garage door installation, spring repair and opener service in Naperville, IL and the western suburbs.
## Business
- Name: Northwind Garage Doors
- What we do: Garage door installation, broken spring repair, opener installation and repair, same-day service calls
- Areas served: Naperville, Aurora, Wheaton, Downers Grove, IL
- Brands carried: Clopay, LiftMaster, Amarr
- Hours: Monday to Saturday, 7 AM to 6 PM. Emergency spring repair by phone anytime.
- Phone: (630) 555-0139
- Address: 1200 Ogden Ave, Naperville, IL 60540
## Pages that answer buyer questions
- [Broken spring repair](https://northwindgaragedoors.example/spring-repair/): What it costs and how fast we can get there
- [Garage door installation](https://northwindgaragedoors.example/installation/): New doors, brands carried, financing
- [Service areas](https://northwindgaragedoors.example/areas/): Every city and suburb covered
## Contact
- Email: [email protected]
- Website: https://northwindgaragedoors.example
How to publish it at the site root
The root is the folder your home page lives in. Not a subfolder, not a page builder's media library.
- Save the file as plain text, named exactly llms.txt, lowercase, no extra extension.
- Upload it to the root of your website, the same folder as your home page and your robots.txt file, not inside a folder like /pages/ or /assets/.
- Check it. Open yoursite.com/llms.txt in a browser. You should see the plain text file, not a 404 page and not your home page again.
- No direct file access? Ask your host or whoever manages the site to add it at the root. It is a one-file upload once they have it.
- Update it when something changes: a new area you serve, a new brand, a new page that answers a buyer's question. It is a text file, so there is nothing to break.
Check robots.txt for blocked AI crawlers
llms.txt only helps if the crawler is allowed to reach your site at all. A robots.txt file can block a crawler by name without anyone noticing.
These are the six worth checking by name:
- GPTBot, OpenAI's crawler for ChatGPT.
- OAI-SearchBot, OpenAI's crawler for ChatGPT search.
- PerplexityBot, Perplexity's crawler.
- ClaudeBot, Anthropic's crawler for Claude.
- Google-Extended, controls use of your site in Google's AI features, separate from regular Search indexing.
- Bingbot, Microsoft's crawler. ChatGPT search pulls from Bing's index as well as its own crawler, so this one matters too, not only the AI-only names.
- Open yoursite.com/robots.txt in a browser. It is a plain text page, no login.
- Look for a line "User-agent:" followed by one of the six names above, then a line "Disallow: /". That combination blocks that crawler from your entire site.
- Also check for a blanket "User-agent: *" block with "Disallow: /". That blocks everything, these six included, unless a crawler has its own "Allow: /" written elsewhere in the file.
- Found one blocked? If you have file access, edit that line yourself. If not, it is a one-line fix for whoever manages your hosting.
A robots.txt that allows all six
User-agent: GPTBot
Allow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: Google-Extended
Allow: /
User-agent: Bingbot
Allow: /
User-agent: *
Allow: /
Sitemap: https://yoursite.com/sitemap.xml
Swap in your own domain on the Sitemap line. If your site already has other rules in robots.txt, add these blocks alongside them rather than replacing the file.
Questions
Does adding llms.txt guarantee an AI assistant will name my business?
No. Nothing does, and nobody can promise that. What llms.txt does is give an assistant a plain, direct answer to read if it looks. The rest is the actual content on your site and whether AI crawlers can reach it at all.
Is llms.txt the same as robots.txt?
No. robots.txt tells crawlers what they are and are not allowed to read. llms.txt is a summary of your business for the crawlers that are allowed in. You want both: nothing blocking the crawlers, and a clear summary once they arrive.
Do I need a developer to add either file?
No. Both are plain text files. If you can upload a file to your website's root folder, or ask whoever hosts your site to do it, that is the whole job.
Where does robots.txt go, and does it conflict with llms.txt?
Same place: the site root, yoursite.com/robots.txt. They do different jobs and do not conflict. robots.txt is about permission to read your site at all; llms.txt is what to read once permission is granted.