Schema markup for GLP-1 clinics: complete @graph template
A copy-paste Schema.org @graph template for GLP-1 weight loss clinics. Includes MedicalClinic, Drug entities per medication (semaglutide, tirzepatide, Wegovy, Ozempic, Mounjaro, Zepbound), Physician, Offer, FAQPage, and BreadcrumbList.
This guide ships a copy-paste Schema.org @graph template for GLP-1 clinics. Place the JSON-LD in a script tag in the page head. Customize placeholders. Validate at validator.schema.org.
The complete @graph template
Wrap all entities in a single @graph array with @id references linking them. The root MedicalClinic anchors the graph. Drug, Physician, Offer, and MedicalProcedure entities reference back through @id.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "MedicalClinic",
"@id": "https://[clinic-domain]/#organization",
"name": "[Clinic Name]",
"url": "https://[clinic-domain]",
"telephone": "[phone]",
"email": "[email]",
"address": { /* PostalAddress */ },
"geo": { /* GeoCoordinates */ },
"openingHoursSpecification": [ /* per day */ ],
"medicalSpecialty": "Endocrinology",
"areaServed": { /* GeoCircle or counties */ }
},
{
"@type": "Drug",
"@id": "https://[domain]/#drug-semaglutide",
"nonProprietaryName": "semaglutide",
"proprietaryName": ["Wegovy", "Ozempic"],
"manufacturer": { "@type": "Organization", "name": "Novo Nordisk" },
"prescriptionStatus": "PrescriptionOnly",
"availableAtOrFrom": { "@id": "https://[domain]/#organization" }
},
{
"@type": "Drug",
"@id": "https://[domain]/#drug-tirzepatide",
"nonProprietaryName": "tirzepatide",
"proprietaryName": ["Mounjaro", "Zepbound"],
"manufacturer": { "@type": "Organization", "name": "Eli Lilly" },
"prescriptionStatus": "PrescriptionOnly",
"availableAtOrFrom": { "@id": "https://[domain]/#organization" }
},
{
"@type": "Physician",
"@id": "https://[domain]/providers/[name]#physician",
"name": "Dr. [Name]",
"medicalSpecialty": "FamilyMedicine",
"hasCredential": [
{ "@type": "EducationalOccupationalCredential", "credentialCategory": "board certification", "name": "ABFM Family Medicine", "recognizedBy": { "@type": "Organization", "name": "American Board of Family Medicine" } },
{ "@type": "EducationalOccupationalCredential", "credentialCategory": "specialty certification", "name": "ABOM Obesity Medicine", "recognizedBy": { "@type": "Organization", "name": "American Board of Obesity Medicine" } }
],
"worksFor": { "@id": "https://[domain]/#organization" }
},
{
"@type": "MedicalProcedure",
"@id": "https://[domain]/services/semaglutide#procedure",
"name": "Physician-Supervised Semaglutide Weight Loss Program",
"procedureType": "weight loss program",
"expectedPrognosis": "Average 15-20% body weight reduction at 12 months",
"drug": { "@id": "https://[domain]/#drug-semaglutide" },
"performer": { "@id": "https://[domain]/providers/[name]#physician" }
},
{
"@type": "Offer",
"@id": "https://[domain]/services/semaglutide#offer",
"name": "Semaglutide Program",
"priceSpecification": {
"@type": "UnitPriceSpecification",
"price": "299",
"priceCurrency": "USD",
"referenceQuantity": { "@type": "QuantitativeValue", "value": 1, "unitCode": "MON" }
},
"itemOffered": { "@id": "https://[domain]/services/semaglutide#procedure" }
}
]
}
</script>The validation step
Paste the customized JSON-LD into validator.schema.org. Confirm no syntax errors and no @id reference breaks. Then test the Rich Results test at search.google.com/test/rich-results to confirm Google recognizes the entities.