What are llms.txt and schema markup, and does my business need them?
These are the two things that turn your website from prose an assistant has to interpret into a record it can read directly. Neither requires a new website, and both are additions rather than rebuilds.
An AI assistant reading your website faces the same problem a stranger does: working out what this business is, where it is, and whether it does the thing that was asked about. A human skims and infers. A machine does far better when you simply tell it.
Schema markup and llms.txt are the two standard ways of telling it. They do different jobs and it is worth having both.
Schema markup: the structured record
Schema.org markup is a block of JSON embedded in your page that states facts about your business in a format every major search engine and assistant understands. It is invisible to visitors and unambiguous to machines.
Instead of hoping something infers from your footer that you are a dental practice in a particular suburb open until six, you state it: this is a Dentist, here is the street address, here is the phone number, here are the hours, here are the services, here is the price range.
For a local business the pieces worth having are:
- LocalBusiness, or a more specific subtype such as Dentist, MedicalClinic, Physician or LegalService. The more specific type is better, because it tells the assistant what kind of business you are, not merely that you are one.
- Your full name, address, phone and opening hours, exactly as they appear everywhere else.
- Your services, and your prices if you publish them.
- FAQPage markup covering the questions you genuinely get asked. This is the single most useful addition, because it is the format assistants pull answers from most directly.
- sameAs links to your profiles elsewhere: your Google listing, LinkedIn, professional associations, your social accounts. These tie your website to the other places you exist and help an assistant confirm it has the right business.
The mistake that wastes the whole exercise: schema injected through Google Tag Manager or any other script. AI crawlers do not execute JavaScript, so tag-managed schema is invisible to precisely the audience it was added for. It has to be in the HTML the server sends. View source and search for ld+json; if it is not there, the crawlers are not seeing it.
llms.txt: the plain-text summary
llms.txt is a newer and much simpler idea. It is a single Markdown file at the root of your domain, at yourdomain.com/llms.txt, that describes your business in plain language written for a machine to read.
Where schema is structured and rigid, llms.txt is prose. It is the place to say what you do, who you serve, where you are, what you charge, and what the answers to your common questions are, without the constraints of a markup vocabulary.
It is not yet a formal standard the way schema is, and support varies between assistants. It is also cheap: one file, no risk, no effect on how your site looks. For a local business the calculation is straightforward.
What to put in an llms.txt
Keep it factual and current. A useful one covers:
- One paragraph explaining what the business is and who it serves
- Location, service area, contact details and booking link
- Services, described as a customer would describe them
- Prices or price ranges, if you publish them
- The questions you are asked most, with real answers
- Links to your key pages
Do you need both?
Yes, and they take different amounts of effort.
Schema is the one with broad, established support and it does the heavier lifting. If you only do one thing, do schema, and make sure FAQPage is part of it.
llms.txt is quick, costs nothing, and gives assistants a clean summary without having to interpret a page built for humans.
Neither requires rebuilding your site. Schema is a block added to the head of your pages. llms.txt is a text file uploaded to your web root. Someone with access to your site can apply both in well under an hour.
A caution worth stating
Adding these files makes your business legible. It does not, by itself, make you the recommendation.
Schema tells an assistant what you are. Whether it names you over a competitor also depends on corroboration from sources you do not own: reviews, directory listings, professional bodies, mentions elsewhere.
So treat schema and llms.txt as the foundation rather than the whole building. They are the part you fully control and can complete this week, which is exactly why they are the right starting point.
Questions people ask about this
A plain-text Markdown file at the root of your domain that describes your business for AI assistants to read: what you do, where you are, what you charge, and answers to common questions. Support varies between assistants and it is not yet a formal standard, but it costs almost nothing to publish.
Yes, and it matters more for AI assistants than for traditional search. Schema is the machine-readable record of what your business is and where it is. Without it, an assistant has to infer those facts from prose, and it will be less confident recommending you.
The most common cause is that it is injected by JavaScript, usually through a tag manager. AI crawlers do not run scripts, so they never see it. View your page source and search for ld+json. If it only appears in the browser inspector and not in the raw source, it needs moving into the server-rendered HTML.
Use the most specific type that fits: Dentist, Physician, MedicalClinic or MedicalBusiness rather than the generic LocalBusiness. Add FAQPage markup for the questions patients actually ask. Specificity helps an assistant match you to the right question.
No. Both are additions to the site you already have. Schema is a block of code in the page head, and llms.txt is a single file in your web root. Neither changes how your site looks to visitors.
Find out what AI sees when it looks for you
Free, no card. You will know within a day whether ChatGPT, Claude, Perplexity and Google's AI can actually read your site.
Get my free AI visibility scan