Tele-Dentistry Stack
Tele-dentistry service pages with MedicalClinic + Service + WebApplication context, FAQs, and breadcrumb navigation.
When to use this stack
- Tele-dentistry visit pages with virtual consult details
- Dental clinic pages offering remote assessments
- Pages where FAQs clarify eligibility, scheduling, and follow-up care
What is included
Defines the dental clinic offering tele-dentistry with contact details.
Describes the tele-dentistry service and provider.
Represents the virtual visit platform or telehealth app.
Answers questions about visits, imaging, and follow-up care.
Provides navigation context for the tele-dentistry page.
Properties across the bundle
Nested properties keep their parent path, such as offers.priceCurrency. Only publish values that match visible page content.
Required properties
- address.addressCountry
- address.addressLocality
- address.addressRegion
- address.postalCode
- address.streetAddress
- applicationCategory
- areaServed.name
- itemListElement[].name
- mainEntity[].@type=Question
- mainEntity[].acceptedAnswer.text
- name
- offers.url
- provider.@id
- serviceType
- telephone
- url
Recommended properties
- description
- geo.latitude
- geo.longitude
- image
- itemListElement[].item
- mainEntity[].acceptedAnswer.text
- mainEntity[].author.name
- mainEntity[].name
- medicalSpecialty
- offers.availability
- offers.price
- offers.priceCurrency
- operatingSystem
- provider.name
Combined JSON-LD
Paste this as one script tag, then replace every example value with data from the live page.
[
{
"@context": "https://schema.org",
"@type": "MedicalClinic",
"@id": "https://www.example.com/tele-dentistry#clinic",
"name": "Northwind Dental Care",
"url": "https://www.example.com/tele-dentistry",
"telephone": "+1-512-555-0149",
"image": "https://www.example.com/images/tele-dentistry.webp",
"medicalSpecialty": "Dentistry",
"address": {
"@type": "PostalAddress",
"streetAddress": "1200 Elm St",
"addressLocality": "Austin",
"addressRegion": "TX",
"postalCode": "78701",
"addressCountry": "US"
}
},
{
"@context": "https://schema.org",
"@type": "Service",
"@id": "https://www.example.com/tele-dentistry#service",
"name": "Tele-Dentistry Consult",
"serviceType": "TeleDentistry",
"description": "Virtual dental consults for symptoms, treatment planning, and follow-up care.",
"provider": { "@id": "https://www.example.com/tele-dentistry#clinic" },
"areaServed": { "@type": "AdministrativeArea", "name": "Texas" },
"offers": {
"@type": "Offer",
"url": "https://www.example.com/tele-dentistry/schedule",
"availability": "https://schema.org/InStock"
}
},
{
"@context": "https://schema.org",
"@type": "WebApplication",
"@id": "https://www.example.com/tele-dentistry#app",
"name": "Northwind Dental Portal",
"url": "https://www.example.com/tele-dentistry/portal",
"applicationCategory": "HealthApplication",
"operatingSystem": "Web",
"description": "Secure video visits, photo uploads, and care plan summaries.",
"provider": { "@type": "Organization", "name": "Northwind Dental Care" }
},
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Do I need x-rays for a virtual visit?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Not always. The dentist will request imaging if needed after your initial consult."
}
},
{
"@type": "Question",
"name": "Can you prescribe medication?",
"acceptedAnswer": {
"@type": "Answer",
"text": "If appropriate, we can prescribe medication and coordinate in-person follow-up care."
}
},
{
"@type": "Question",
"name": "How long are appointments?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Most tele-dentistry visits are 20–30 minutes."
}
}
]
},
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "Home", "item": "https://www.example.com" },
{ "@type": "ListItem", "position": 2, "name": "Services", "item": "https://www.example.com/services" },
{ "@type": "ListItem", "position": 3, "name": "Tele-Dentistry", "item": "https://www.example.com/tele-dentistry" }
]
}
]Implement and verify
- 01
Start with the live page
Confirm titles, prices, availability, policies, and visible FAQ content before generating markup.
- 02
Add one JSON-LD script
Use the combined example as a template in the document head or before the closing body tag.
- 03
Complete regional details
Fill shipping destinations and timing for every region the page actually serves.
- 04
Link the return policy
Use a stable MerchantReturnPolicy URL and keep its terms synchronized with the page.
- 05
Match visible answers
Add only FAQs that users can read on the same page, with identical answers.
- 06
Validate after changes
Run Rich Results Test after implementation and whenever price, availability, or policy data changes.
Common errors and fixes
- Missing currency or availability
Use ISO currency codes and complete schema.org availability URLs in Offer data.
- Incomplete shipping details
Include shippingDestination.addressCountry and deliveryTime.transitTime with units.
- Return policy is not connected
Reference MerchantReturnPolicy from the Offer and provide a stable public policy URL.
- FAQ answers differ from the page
Keep structured FAQ answers identical to visible answers.
Stack FAQs
Should I include in-person visit options?
If you offer in-person follow-ups, mention them in the page content and FAQs.
Do I need to list pricing?
If pricing is displayed, include Offer price and currency to match the page.