Menu

AISEO

Schema Markups for Medical and Healthcare Websites | Schemas for AI Searches

Add schema to your medical site to boost SEO, rich results, and AI visibility.

By: Irina ShvayaAugust 14, 2025

shutterstock 1573046605 scaled

Key Takeaways

  • Schema markup turns healthcare content into structured, machine-readable data that search engines and AI assistants can trust and surface.
  • Schema can make pages eligible for some rich results and helps search engines read your practice details, while hours and ratings in local results come mainly from your Google Business Profile.
  • Clean NAP, hours, and geo data strengthen local rankings and map placement while reducing mismatches that frustrate patients.
  • Some AI tools use structured facts to understand your practice, though Google says structured data isn't required for its AI features; clear, accurate page content matters most.
  • Use JSON-LD with the most specific MedicalOrganization subtype, and keep every marked-up detail visible and consistent across your site and profiles.

Patients want answers fast: who you are, what you treat, when you’re open, and how to book. Search engines and AI systems want the same information in a structured, machine-readable format. Schema markup delivers it. By adding schema to your healthcare or medical office website, you can boost local and health-related SEO, earn rich results (hours, ratings, provider info), and feed AI-driven tools with accurate data that shows up in voice assistants and chat results.

This guide explains which schema types matter most for healthcare sites, how they improve visibility, and how to implement them with confidence.

What you’ll learn:

  • Why schema markup improves healthcare SEO and AI visibility
  • The essential schema types for clinics, providers, services, and pages
  • How to structure schema for rich results like hours and reviews
  • Best practices, examples, and tools to validate your markup

Why Schema Markup Matters for Healthcare

Healthcare search is high stakes. People look up symptoms, specialties, providers, and locations with urgency. Schema markup removes ambiguity by turning your content into structured data that search engines and AI can trust.

Three practical benefits:

  1. Rich results that win clicks: Markup can make pages eligible for some rich results, such as breadcrumbs, while hours and practice details in Google's local results come mainly from your Google Business Profile. In multiple industry studies, listings with rich enhancements outperform plain links because they answer key questions at a glance.
  2. Stronger local presence: Clean Name, Address, Phone (NAP), hours, and geo data help your clinic rank accurately in local results and on maps, reducing mismatches that frustrate patients.
  3. AI-readiness: Some AI tools can use structured facts. When your providers, specialties, and services are clearly stated on the page (and marked up), these systems can more easily highlight your practice in answers like “pediatric dentist near me open Saturday” or “cardiologist accepting new patients.”

Tip: Schema only works if it mirrors what users see. Keep details current, especially hours, provider availability, and insurance information.

Essential Schema Types for Healthcare and Medical Offices

Use JSON-LD format. Place your markup in the head (or top of body) of each page. Keep all marked-up details visible on the page and consistent with your Google Business Profile and major directories.

MedicalOrganization (and subtypes)

Purpose: Represent your clinic, hospital, or practice as a healthcare entity.

Use the most specific subtype you can (for a psychiatric practice, use MedicalClinic with medicalSpecialty set to Psychiatric):

  • MedicalClinic (general clinics, specialty clinics, dental clinics)
  • Physician (for a solo physician practice)
  • Dentist
  • Hospital
  • Optician
  • Psychiatric

Include:

  • @type: MedicalClinic (or the appropriate subtype)
  • name
  • url
  • image or logo
  • telephone
  • address (PostalAddress with streetAddress, addressLocality, addressRegion, postalCode, addressCountry)
  • openingHours (e.g., Mo-Fr 08:00-17:00)
  • sameAs (links to social and authoritative profiles)
  • priceRange (optional; some practices use it to signal price level)
  • geo (GeoCoordinates for precise map placement)

Where to add:

  • Homepage and contact/location pages. If you have multiple locations, create location pages with unique schema for each address.

Physician or Person (Provider Profiles)

Purpose: Define individual healthcare providers with specialties and affiliations.

Include:

  • @type: Person (with jobTitle, worksFor and knowsAbout) for the individual provider; Physician and IndividualPhysician are organization/place types, so Person-only properties such as alumniOf, affiliation and worksFor do not apply to them
  • name
  • medicalSpecialty (e.g., Dermatology, Cardiology, Pediatrics)
  • affiliation or worksFor (your MedicalClinic or Hospital)
  • address and telephone (if listed on the profile)
  • url (profile page)
  • image (headshot)
  • alumniOf (medical school or training)
  • languages spoken (knowsLanguage, on Person)
  • sameAs (professional profiles, if applicable). For anesthesiology providers, include specialized career platforms like AnesthesiaJobs.com to strengthen the provider's entity graph across the web.

Where to add:

  • Individual provider profile pages. Link providers to your clinic entity for a unified knowledge graph.

MedicalSpecialty

Purpose: Clarify the disciplines you cover and help search engines map patients’ needs to your services.

Examples:

  • Cardiology
  • Dermatology
  • Pediatrics
  • Orthopedics
  • PrimaryCare
  • UrgentCare

How to use:

  • Reference MedicalSpecialty as a value in Physician.medicalSpecialty and within your MedicalClinic where relevant, using schema.org's enumeration values such as Cardiovascular, Dermatology, Pediatric, Musculoskeletal, PrimaryCare or Emergency (Cardiology, Pediatrics, Orthopedics and UrgentCare are not valid values).
  • Pair with Service schema on service pages to connect conditions and treatments to specialties.

Service (for treatments, procedures, and programs)

Purpose: Describe specific services you offer and where you offer them.

Include:

  • @type: Service
  • name or serviceType (e.g., “Teeth Whitening,” “COVID-19 PCR Testing,” “MRI Scan”)
  • provider (your MedicalClinic or Dentist)
  • areaServed (Place or AdministrativeArea if relevant)
  • offers (Offer if you publish prices or fee ranges)
  • additionalType or category (optional tags for internal organization)

Where to add:

  • Individual service pages. One primary Service entity per core service page keeps things clean and precise.

LocalBusiness (when local context is primary)

Purpose: Reinforce local signals (NAP, hours, geo) for map and pack results. Many healthcare sites combine healthcare-specific types with local context.

How to use:

  • You can nest LocalBusiness within your MedicalOrganization subtype (or vice versa) to cover both healthcare and local discovery angles.
  • Keep NAP and openingHours aligned across entities.

Review and AggregateRating

Purpose: Provide social proof and enable star ratings in search results when guidelines are met.

Include:

  • AggregateRating: ratingValue, reviewCount
  • Review (optional on testimonials pages or provider profiles): author, reviewRating (ratingValue, bestRating), datePublished, reviewBody

Compliance:

  • Only mark up reviews you host on your site.
  • Don’t mark up external reviews from third-party platforms.
  • Ratings must match what users can read on the page.

Where to add:

  • Only pages reviewing eligible items. Don't mark up testimonials about your own practice or providers, since Google treats self-serving reviews as ineligible for review stars.

FAQPage (optional)

Purpose: Mark up common patient questions to provide AI with concise, accurate answers (Google no longer shows FAQ rich results).

Include:

  • @type: FAQPage
  • mainEntity: array of Question objects, each with acceptedAnswer (Answer)

Great topics:

  • Insurance accepted and payment options
  • Appointment scheduling and cancellation policy
  • New patient process and forms
  • Parking, accessibility, or telehealth details
  • Referral requirements

Tip: Keep answers short (2–4 sentences) and visible on the page.

BreadcrumbList

Purpose: Show clear navigation paths in search results and improve internal structure understanding.

Include:

  • itemListElement: ordered ListItem with position, name, and item (URL)

Where to add:

  • Sitewide, especially on service and provider pages (Home > Services > Dermatology > Mole Removal).

WebSite and WebPage

Purpose: Define your site entity and clarify the purpose of each page.

WebSite:

  • name
  • url
  • inLanguage
  • publisher (MedicalClinic, Hospital, or Organization)
  • potentialAction (SearchAction is optional; Google retired the sitelinks search box in November 2024 and no longer uses it)

WebPage (per page):

  • name
  • url
  • description
  • isPartOf (WebSite)
  • primaryImageOfPage (ImageObject)
  • about or mentions (link to your clinic, provider, or service entities to connect the graph)

ImageObject

Purpose: Provide context for team photos, clinic images, and procedure visuals.

Include:

  • url
  • caption or description (e.g., “Reception area at Healthy Smiles Dental”)
  • author (your clinic)
  • uploadDate
  • width and height (when available)

Where to add:

  • Provider headshots, clinic galleries, and featured images on service pages.

How Schema Supports AI and Language Model Searches

Some AI assistants and language models use structured facts when answering health-related queries, so schema can help them identify your practice correctly. Google says structured data isn't required for its AI features, so your pages must state the same facts clearly in text.

Ways schema helps AI:

  • Clear entities, fewer mix-ups: MedicalClinic, Physician, and MedicalSpecialty define who you are and what you do, reducing confusion with similarly named practices.
  • Direct answers to common questions: FAQPage gives AI concise responses to insurance, appointment, or telehealth queries—often the exact questions patients ask.
  • Trust signals: genuine patient reviews on third-party platforms such as your Google Business Profile provide evidence of patient satisfaction; self-serving rating markup on your own site is not eligible for review stars.
  • Local accuracy: LocalBusiness details and GeoCoordinates confirm your exact location and hours, improving “near me” answers and map placements.
  • Service matching: Service schema exposes treatments and programs in a structured way, making it easier for AI to match patient intent (“urgent care open now,” “pediatric dentist accepting new patients”).

As voice search and chat-based discovery grow, schema acts like a reliable data feed for these experiences. Keeping your markup and page content complete and current helps systems that read it describe your practice accurately.

Best Practices for Healthcare Schema Implementation

  • Use JSON-LD everywhere: It’s Google’s preferred format and easier to maintain than microdata.
  • Mirror on-page content: If patients can’t see it, don’t mark it up. Keep hours, provider status (accepting new patients), and availability in sync.
  • Be specific with types: Choose the most precise subtype (MedicalClinic vs. Hospital vs. Dentist; Physician vs. Person).
  • One page, one primary entity: A service page should have one main Service entity; a provider page should center on that Physician.
  • Connect your entities with @id: Assign stable IDs to link your MedicalClinic, Physician, Service, WebSite, and WebPage entities into a coherent graph.
  • Standardize addresses: Use PostalAddress consistently and match it to your Google Business Profile and map pins.
  • Keep data fresh: Update holiday hours, insurance panels, provider roster changes, and telehealth offerings promptly.
  • Validate after template changes: A small CMS update can break markup. Test again anytime you change layouts, fields, or components.

Example Rollout Plan (Four Weeks)

Week 1:

  • Add MedicalClinic (or your subtype) and LocalBusiness to the homepage.
  • Implement WebSite and, if available, SearchAction for your internal provider/service search.

Week 2:

  • Add BreadcrumbList sitewide via templates.
  • Mark up your top 5 service pages with Service plus relevant MedicalSpecialty references.

Week 3:

  • Create provider profile pages with Physician, linking to your clinic entity.
  • Add ImageObject to provider headshots and clinic images.

Week 4:

  • Add FAQPage markup to your FAQs (insurance, appointments, telehealth).
  • Don't mark up on-site testimonials as ratings of your own practice; Google treats self-serving reviews of a business as ineligible for review stars. Point patients to your Google Business Profile reviews instead.
  • Validate markup and monitor Search Console for enhancements and warnings.

Common Pitfalls to Avoid

  • Marking up third-party reviews you don’t host
  • Inconsistent NAP or hours between schema, site, and Google Business Profile
  • Using generic MedicalOrganization when a specific subtype is available
  • Missing or stale details (e.g., provider left, but schema still lists them)
  • Invisible or tab-hidden FAQ content that search engines can’t access
  • Breadcrumbs that don’t align with your URL structure

Tools to Generate and Validate Schema

  • Google Rich Results Test: Check eligibility for rich results and preview how your enhancements render.
  • Schema.org Validator: Validate syntax and structure against Schema.org to catch errors early.
  • Merkle Schema Markup Generator: Generate JSON-LD for MedicalOrganization, Person/Physician, Breadcrumbs, FAQ, and more.

Pro tip: After deployment, use Google Search Console to monitor Enhancements reports (such as Breadcrumbs). Fix issues at the template level to scale improvements across the site.

Conclusion: Make Your Practice Easy to Understand

Schema markup turns your clinic, providers, and services into structured facts search engines and AI can trust. Start with your MedicalClinic (or relevant subtype) and LocalBusiness data on the homepage. Add Physician markup to provider profiles, Service markup to treatment pages, and FAQPage to common patient questions. Tie it together with BreadcrumbList, WebSite/WebPage, and ImageObject for a complete, connected data layer.

Action steps:

  • Publish MedicalClinic and LocalBusiness schema for your main location today.
  • Mark up provider profiles (Physician) and your top services with Service and MedicalSpecialty.
  • Add FAQPage for insurance, booking, and telehealth questions.
  • Validate with the Rich Results Test and Schema.org Validator. Use Merkle’s generator to accelerate implementation.
  • Keep details current—patients and AI both reward accuracy.

Frequently Asked Questions

What is schema markup and why do healthcare websites need it?
Schema markup is structured data added to your pages so search engines and AI systems can read your content in a machine-readable format. Healthcare sites need it because it removes ambiguity about who you are, what you treat, your hours, and how to book, helping you earn rich results and improve local and AI visibility.
Which schema types are most important for medical and healthcare websites?
Start with MedicalOrganization and its most specific subtype, such as MedicalClinic, Physician, Dentist, Hospital, Optician, or Psychiatric. Add Physician or Person schema for individual provider profiles with their specialties. These types represent your practice, providers, and services so search engines and AI tools can accurately match you to relevant patient searches.
What format should I use to add schema to my healthcare site?
Use JSON-LD format and place your markup in the head, or the top of the body, of each page. Keep all marked-up details visible on the page and consistent with your Google Business Profile and major directories. This ensures the structured data mirrors what users actually see and stays trustworthy to search engines.
What details should MedicalOrganization schema include?
Include the @type subtype, name, url, image or logo, telephone, and a full PostalAddress with street, locality, region, postal code, and country. Add openingHours, sameAs links to authoritative profiles, and geo coordinates for precise map placement. priceRange is optional. Add this schema to your homepage and each contact or location page.
How can schema markup help my practice appear in AI and voice search?
Some AI tools can use structured facts, but most read your page text directly, and Google says structured data isn't required for its AI features. When your providers, specialties, services, and availability are marked up, these systems can confidently highlight your practice in conversational answers such as "pediatric dentist near me open Saturday" or "cardiologist accepting new patients."

Get a FREE Website Audit

Enter your website and get a 20–30 page SEO, GEO, AEO & CRO audit within 24 hours. Completely free.

Don't have a site yet? Get in touch →

Ready to speak with a marketing expert?
Give us a call! (916) 866-7893

Websites Launched
1407
Websites Launched
Marketing Experts
29
Marketing Experts
Hours of Dedicated Work
204533
Hours of Dedicated Work
Irina S.Benjamin G.Jeanette M.David G.