Oris

Original research · August 2026

We measured 237 clinic websites. Fifteen were ready to be recommended.

Every clinic marketing page says patients are searching differently now. Almost none say what that requires of a website. So we went and looked: 272 US med spa and dental practice sites, found the way a patient finds them, measured on what a search engine or an assistant can actually read.

Sample
272 sites, 237 readable
Split
118 med spa · 119 dental
Markets
19 US metros
Fieldwork
August 2026

6.3% of US clinic websites publish all four things an AI assistant needs before it can recommend a clinic by name — local business structured data, opening hours as data, a price list, and no block on AI crawlers. Fifteen sites out of 237. 86.9% publish no price list at all, rising to 95% among dental practices. And while 92.4% show a booking button, only 36.7% connect it to a system that can actually take a booking.

Finding one

The booking button that does not book.

92.4%

show a “Book” or “Request an appointment” call to action

36.7%

connect it to a system that can take the booking

This is the widest gap in the study. Nearly every clinic has understood that patients want to book online. 55.7% have built a button that looks like it does, and then routed it to a contact form or a phone number.

For a patient at 9pm — the hour when people actually deal with this — the difference is total. One path ends in a confirmed appointment. The other ends in a message that will be read tomorrow, by which time a competitor with a real scheduler has the slot.

Dental is worse than med spa here, and it is not close: 68.9% of dental practices show a booking call to action that cannot book, against 42.4% of med spas. Med spas sell discretionary treatments and have been forced to compete on convenience. Dentistry has been able to rely on the phone for longer, and the sites show it.

Finding two

Almost nobody publishes a price.

86.9%

publish no price list

78.8%

of med spas

95%

of dental practices

We set the bar deliberately low. A site counts as publishing prices if any page one click from the homepage carries three or more distinct dollar amounts that are not discounts — not a full menu, not every treatment, just three real numbers in one place. 13.1% clear it.

The threshold matters, because a first pass counting any dollar sign returned 30.4% — and reading the matches showed roughly half were “$50 off your first visit” rather than what anything costs. A discount is not a price. Once promotional amounts are excluded, dental price transparency is 5%: one practice in twenty.

This is the single largest reason a clinic cannot be recommended by an assistant. Asked for “a dentist near me who does implants under $4,000”, a system has nothing to match on. It is also, quietly, the reason so much traffic bounces: the first question every patient has is the one question the site refuses to answer.

Finding three

The page called “Pricing” usually has no prices on it.

86 of the clinics we measured link a page called Pricing, Rates, Fees or Investment from their homepage. 36% of those pages actually carry a list of prices. The other 64% carry an explanation of why every case is different and an invitation to call.

This one is worth sitting with, because it is not an oversight. Someone decided the page was needed, built it, put it in the navigation — and then could not bring themselves to put a number on it. The patient who clicked “Pricing” learns nothing and leaves, and the practice records a visit to its pricing page as evidence of interest.

Finding four

The basic facts are on the page, but not in the data.

84.8%have some structured data on the homepage
36.7%have no local-business structured data — no LocalBusiness, Dentist or MedicalClinic type at all
49.8%do not publish opening hours as data, only as text a human can read
8.4%use FAQ structured data — the format assistants lift from most readily
4.2%ship at least one block of structured data that fails to parse, so it counts for nothing

The pattern here is a website built entirely for the human eye. The hours are on the page, in a nicely set column, and a machine reading it has no reliable way to know they are hours. Where a plugin has added structured data, it usually stops at the level of “this is a web page” rather than “this is a dental practice in Nashville that opens at eight”.

8.4% using FAQ markup is the number that will change fastest, and the cheapest one to act on. The questions are already written on most of these sites. They are simply not marked up as questions.

Finding five

Blocking AI crawlers is not the problem anyone thinks it is.

5.1%

disallow any AI crawler in robots.txt. None blocked all bots.

A good deal of the advice being sold to clinics right now is about crawler access — check your robots.txt, make sure GPTBot is allowed, do not accidentally opt out. On this sample that advice addresses a problem 5.1% of clinics have. Twelve sites out of 237.

The doors are open. Assistants can already read these sites and largely do not cite them, for the reason every finding above describes: there is nothing specific enough on them to quote. No prices, no hours as data, nothing but a paragraph about a commitment to comfort. Access was never the constraint. Substance is.

Worth stating plainly, since we sell related services: this finding argues against a thing agencies sell, including the crawler-audit line item. It is what the data says.

Finding six

A third of dental practices never mention insurance.

32.8% of the dental practices measured do not mention insurance anywhere on their homepage. For a large share of US patients, insurance is the filter applied before the practice name is even read — it decides the shortlist, and it is the first thing an assistant is asked to check.

22% of med spas have no click-to-call link on the homepage, against 8.4% of dental practices. On a phone, in a business where the phone is the transaction, that is a tap that has to become a copy-paste.

The composite

How many of the four does a clinic manage?

Local-business structured data · opening hours as data · a published price list · AI crawlers not blocked. Share of the 237 readable sites.

49.4% of clinic websites manage two or fewer. The modal clinic gets three — it has structured data and hours and has not blocked anyone, and then does not publish a price. That is the single missing piece for most of this market, and it is the cheapest of the four to fix.

By metro

Per-metro samples are small (n = 8 to 16). Published for completeness; the differences between metros are not large enough to read as a ranking.

MetronAll fourPrice list
San Diego, CA 11 18.2% 18.2%
Seattle, WA 13 15.4% 30.8%
Columbus, OH 8 12.5% 12.5%
Dallas, TX 10 10% 20%
Phoenix, AZ 11 9.1% 9.1%
Atlanta, GA 11 9.1% 18.2%
Richmond, VA 11 9.1% 27.3%
Miami, FL 12 8.3% 16.7%
Tampa, FL 14 7.1% 7.1%
Indianapolis, IN 14 7.1% 14.3%
Portland, OR 15 6.7% 13.3%
Nashville, TN 16 6.3% 12.5%
Austin, TX 16 6.3% 12.5%
Charlotte, NC 15 0% 0%
Kansas City, MO 14 0% 7.1%
Denver, CO 13 0% 15.4%
Salt Lake City, UT 11 0% 9.1%
Raleigh, NC 11 0% 9.1%
Las Vegas, NV 11 0% 0%

What they are built on

Detected from the homepage markup. “Other/custom” covers everything without a recognisable fingerprint, including agency-built and DSO-template sites.

PlatformShare
WordPress57.8%
Other/custom27%
Webflow5.9%
Wix3.4%
Squarespace3%
Duda2.1%
Shopify0.8%

Median homepage weight is 239KB of HTML (320KB for med spas, 181KB for dental), with a median of 14 scripts and 2 third-party script hosts. 35% load twenty or more scripts on the homepage.

Method

How this was measured, and what it cannot tell you.

The sample

272 websites, drawn in August 2026 from local search results for “med spa” and “dentist” across 19 US metropolitan areas: Phoenix, Dallas, Miami, Atlanta, Denver, Nashville, Charlotte, Columbus, Seattle, San Diego, Austin, Tampa, Kansas City, Salt Lake City, Raleigh, Portland, Las Vegas, Indianapolis and Richmond. Directories, aggregators and social profiles were excluded; individual practice and group websites were kept, including multi-location groups, because a patient searching finds both.

This is a sample of clinics that rank, not a random sample of all US clinics. That biases it upward: these are practices already visible enough to appear in local search. A random draw would almost certainly look worse.

What was fetched

For each site: the homepage, robots.txt, and up to three pages linked from the homepage whose link text or URL suggested pricing. Two to five requests per site, from an identified crawler. Nothing behind a login, no personal data, no forms submitted. 35 of 272 sites returned an error or refused an automated client entirely and are excluded from every percentage on this page; the denominator throughout is 237.

Definitions

  • Publishes a price list — three or more distinct dollar amounts of two digits or more, in rendered text, with promotional phrasing excluded (“$50 off”, “save $25”, “$150 value”, referral credits, financing terms). Three was chosen so a single discount banner cannot qualify a site.
  • Local-business structured data — valid JSON-LD carrying any of LocalBusiness, MedicalBusiness, MedicalClinic, Dentist, DentalClinic, HealthAndBeautyBusiness, DaySpa, Physician.
  • Hours as dataopeningHours or openingHoursSpecification present in that JSON-LD.
  • Real scheduler — the homepage references one of 40 known booking platforms (Zenoti, Boulevard, NexHealth, Janeapp, Acuity, Mindbody, Vagaro, Weave, Symplast and others). A “Book now” link to a contact page does not count.
  • Blocks an AI crawlerrobots.txt contains a group naming GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot, Google-Extended, CCBot or similar, with Disallow: /.

Limitations, stated plainly

  • Server-rendered HTML only. A price that appears only after JavaScript runs was not counted. That understates price transparency — and it is also the point, since content that requires a browser to execute is read unreliably by exactly the crawlers this study is about.
  • 35 sites could not be read at all, by either an identified crawler or a standard browser user agent. We do not infer from this that they block Google or GPTBot, which are often allow-listed separately. They are simply excluded.
  • Per-metro counts are small. Between 8 and 16 sites each. Treat the metro table as texture, not as a league.
  • One point in time. August 2026. Nothing here is a trend; there is no previous edition to compare against.
  • The four-check composite is our construct, not an industry standard. It is defensible — each item is something an assistant demonstrably needs — but somebody else would reasonably pick a different four.

On naming clinics

We are not going to. Every figure here is an aggregate, and the per-site data stays private. Publishing a list of named local businesses ranked by what their websites fail to do would be a cheap way to get attention at the expense of people running real practices, and the aggregate makes the same point.

Use this

Published under CC BY 4.0. Quote any figure, in any medium, with a link back to this page. No permission needed and no need to ask — if you are writing about clinic marketing and want a number that somebody actually measured, take it.

Oris. The Clinic Website Benchmark, August 2026. 237 US med spa and dental practice websites across 19 metros. https://oris.agency/research/clinic-website-benchmark/

Free clinic audit

Want your own row in this table?

The free audit is this study run against one clinic — the same checks, on your site, with what to fix first and what it is worth. In writing, two business days, no call required.

  • Findings in two business days
  • No call required to receive them
  • Yours to keep either way

No spam, no list. One reply, from a human, within two business days.

Free clinic audit