Structured data states facts; it does not rank anything on its own. It tells a crawler 'this page is a medical business at this address, open these hours, offering these services, with these questions answered.' What any engine does with that statement is the engine's business, and it changes without notice. This page describes what the markup says, not what it earns. One test: a machine that reads only the markup should be able to describe your practice correctly. If the markup says more than the page shows, it fails that test.
The pieces a practice site should carry
- A medical business type on every page, with the practice name, street address, phone, opening hours, the URL and the geo coordinates, identical everywhere. Which business type fits your practice is a question of what you are licensed as; confirm with counsel before you choose it.
- The service list: each treatment you offer, named the way a patient types it, with a link to its page.
- A page per treatment, with the treatment named in the heading, the questions patients ask answered in plain text, and FAQ markup carrying the same questions and answers.
- Review markup only where the platform's rules allow it, and only for reviews that appear on the page itself; check the platform's current policy before adding any.
- A breadcrumb trail on every page, so the machine knows how the site is organized.
- llms.txt at the site root.
What llms.txt is and what to put in it
llms.txt is a plain-text file at the root of the site, like robots.txt, written for AI assistants rather than crawlers. In a few hundred words it says who the practice is, where it is and who the providers are. It says what the practice offers, what it does not, how to book and where the detailed pages live. Write it the way the desk would answer a new caller: the name, the city, the treatments, the hours, the phone, and a line per treatment page. Keep it short and current, and never write anything into it that is not also on the site; an assistant that quotes the file should be quoting the practice. Which assistants read it changes without notice; it costs an hour and says nothing the site does not.
One name, one address, one phone, everywhere
The name, address and phone must match, character for character, on every page of the site, in the markup, in llms.txt, on the Google profile, and on every directory that lists you. 'Suite 200' on one and 'Ste. 200' on another is a mismatch a machine may read as two businesses, and nobody can tell you which machine will. Pick one spelling of the name, one format for the address, one phone with the same punctuation, and write it down. Every new listing copies that line.
Where each piece goes and what it tells the machines
| Piece | What it tells the machines | Where it goes |
|---|---|---|
| Medical business type | What kind of business this is, its name, address, phone, hours and location | Every page, in the head, identical |
| Service list | The treatments offered, by name, each with its own page | The home page and the services page |
| Treatment page with FAQ markup | What this one treatment is, and the questions patients ask about it, answered | One page per treatment, markup matching the visible text |
| Review markup | A review that appears on this page, who wrote it and the rating | Only where the platform's current policy allows it |
| Breadcrumbs | Where this page sits in the site | Every page below the home page |
| llms.txt | A plain-language summary of the practice for an assistant to read in one pass | The site root, beside robots.txt |
How to check it this week
- Open the home page and one treatment page in Google's rich results test and read what it found. Every field it shows should match what a patient sees on the page.
- Open the raw markup and compare the hours, the phone and the address to the Google profile, line by line.
- Load llms.txt in a browser at your own domain. If it is not there, write it; if it is, read it as a new caller would.
- Pick three directories that list the practice and compare the name, address and phone to your written line.
- Put the check on the calendar for the first Monday of each month. Hours change; the markup forgets.
The mistakes that undo it
- Marking up what is not on the page: a review the page does not show, a service you stopped offering, a question the page never answers.
- Stale hours. The holiday hours went into the profile and never into the markup, so two sources now disagree.
- A different business type on different pages, or the home page claiming one address and the contact page another.
- Treatment pages that name a prescription treatment with claims the state does not allow in advertising; what a page may say about a prescription treatment is for counsel to confirm.
- Copying another practice's markup and leaving their phone in it.
What to do next
NorthCore's Get found first solution builds the structured data, the treatment pages and the llms.txt summary on your site, and tracks where you show up on the same dashboard as everything else. Scoped in writing and covered by the promise on this site: results in 90 days, or we keep working until you have them.
