Schema Markup for Physical Therapy Clinics (2026 Guide)
Quick answer: mark a physical therapy clinic up as MedicalClinic (or MedicalBusiness) with medicalSpecialty set to Physiotherapy, one block per location. Describe each treatment on its own service page, add BreadcrumbList, and answer common questions in visible text. Do not use PhysicalTherapy as the business type: in schema.org it describes a therapy, not a clinic.
That last point is an easy mistake to make. The type name looks like it was made for a PT clinic. It was not. The approach below mirrors our schema guide for dentists, adjusted for how schema.org models physical therapy.
Which schema type should a physical therapy clinic use?
Start with what schema.org actually says.
PhysicalTherapysits underMedicalEntity > MedicalProcedure > TherapeuticProcedure > MedicalTherapy. Schema.org defines it as "a process of progressive physical care and rehabilitation". It is a treatment.Physiotherapyis listed both as aMedicalBusinesssubtype and as a value ofMedicalSpecialty.MedicalClinicis aLocalBusiness > MedicalBusinesssubtype as well as aMedicalOrganization.
Google's local business structured data guide asks you to use the most specific LocalBusiness subtype possible, and to list multiple types as an array, noting that additionalType is not supported.
So the safe combination for most outpatient clinics is ["MedicalClinic", "Physiotherapy"] as the type, with medicalSpecialty: "Physiotherapy". Both are real business types, and together they say exactly what you are.
What does the clinic block look like?
One block per location, on that location's page, with a stable @id:
{
"@context": "https://schema.org",
"@type": ["MedicalClinic", "Physiotherapy"],
"@id": "https://example.com/locations/riverside/#clinic",
"name": "Example Physical Therapy, Riverside",
"url": "https://example.com/locations/riverside/",
"telephone": "+15555550123",
"medicalSpecialty": "Physiotherapy",
"address": {
"@type": "PostalAddress",
"streetAddress": "100 Example Ave",
"addressLocality": "Riverside",
"addressRegion": "CA",
"postalCode": "92501",
"addressCountry": "US"
},
"openingHoursSpecification": [{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
"opens": "07:00",
"closes": "18:00"
}],
"parentOrganization": { "@id": "https://example.com/#organization" }
}
For a clinic group, put a single Organization block on the homepage with @id ending in #organization, and point every location at it with parentOrganization. That describes one brand with several distinct places, the same way each location gets its own Business Profile.
How do you mark up individual treatments?
This is where PhysicalTherapy belongs. On a dedicated service page (say, post-surgical knee rehab), describe the treatment and connect it to the clinic:
{
"@context": "https://schema.org",
"@type": "PhysicalTherapy",
"name": "Post-surgical knee rehabilitation",
"url": "https://example.com/services/knee-rehab/",
"relevantSpecialty": "Physiotherapy"
}
Then reference the service from the clinic block with availableService, which MedicalClinic supports. The direction matters less than the consistency: one @id per thing, referenced rather than re-described.
A clinic with a single "Services" page listing twelve treatments gives search engines and AI assistants one vague page. A page per treatment, written by the therapists who deliver it, gives them twelve specific answers.
Should a PT clinic add FAQ schema?
It is optional now, so do not add it for Google's sake. Google retired the FAQ rich result: it stopped appearing in Google Search on May 7, 2026. FAQPage is still valid schema.org markup, and our own blog still emits it, but it no longer earns an expanded result in Google.
The FAQ content itself still earns its place. Questions like "Do I need a referral for physical therapy in California?" are exactly what people ask assistants, and a clear, visible answer is quotable whether or not a rich result appears. Google's structured data guidelines treat markup describing content hidden from users as a violation, so never mark up answers a visitor cannot see.
What should a PT clinic not mark up?
Its own star rating. Adding aggregateRating to your own clinic is a self-serving review under Google's review snippet guidelines, even when the reviews are genuine. Keep testimonials as visible content. Your Business Profile rating is shown by Google on its own terms.
Outcomes you cannot support. Schema is a statement of fact. Do not put "pain-free" or recovery-time promises into descriptions.
Does schema help with AI search?
It can help, but Google says it is not required. Google's guidance on generative AI search says structured data is not required for its AI features and that no special markup is needed, while recommending you keep using it for rich result eligibility.
Our view: schema removes ambiguity. An assistant deciding whether you are a PT clinic in Riverside that treats sports injuries can read that from typed fields instead of inferring it from prose. That is useful. It does not replace the service pages and reviews that give it something to say.
How do you check your markup?
- Rich Results Test to see what Google can parse.
- Schema Markup Validator for general schema.org errors, including types Google's tool does not check.
- View source and search for
application/ld+json. Website platforms and booking plugins can inject their own blocks, so check for conflicting duplicates.
FAQ
What is the best schema type for a physical therapy clinic?
Use MedicalClinic together with Physiotherapy as the type, and set medicalSpecialty to Physiotherapy. Both are LocalBusiness subtypes in schema.org. Reserve PhysicalTherapy for describing individual treatments on service pages, because schema.org defines it as a therapy, not a business.
Do I need separate schema for each clinic location?
Yes. Each location should have its own page and its own block with its own address, phone, hours and @id. Link them to one parent Organization so search engines understand they belong to the same group.
Can I add my Google star rating to my clinic schema?
No. Google treats ratings a business publishes about itself as self-serving reviews. Under Google's structured data policies, a violation can lead to a manual action that removes rich result eligibility. Show reviews as visible content instead.
Will FAQ schema get my clinic a rich result?
No. Google stopped showing FAQ rich results in Search on May 7, 2026. Visible FAQ content is still worth writing, because people ask those exact questions in search and in AI assistants.
Does schema markup improve rankings for physical therapists?
Not directly, as far as Google has said. Google's structured data policies note that a structured data manual action removes rich result eligibility without affecting how the page ranks. Treat schema as accuracy work that helps engines understand your clinic, not a ranking trick.
Want your markup checked? The free PracticeRank audit reviews your schema alongside how AI assistants currently describe your clinic. See also our buyer's guide to AI search optimization for physical therapy clinics and how we work with physical therapy practices.