Your service areas page tells AI exactly which neighborhoods and cities your PT practice serves. This blueprint structures your geographic coverage into machine-readable entries so AI systems can confidently recommend your clinic for location-specific physical therapy queries.
Location is the most common filter in physical therapy searches. When someone asks AI 'find a physical therapist in Uptown' or 'PT clinic near Lake Harriet,' AI needs structured geographic data to match you. A service areas page without structured data forces AI to parse paragraph text for neighborhood names.
areaServed array on your MedicalClinic node should list every city and neighborhood you serve.City type. This directly matches "PT in [area]" queries.AdministrativeArea to catch broader queries.WebPage node should describe this as a service areas page so AI understands the content purpose.Each field in the template below serves a specific role in how AI systems discover, classify, and recommend your business.
Researched and tested by Minnesota AI
nameurltelephonemedicalSpecialtyCopy this prompt and paste it into Claude, ChatGPT, Cursor, or any AI coding tool. It will ask for your business details and generate ready-to-use JSON-LD schema for your page.
You are implementing AIFDS-compliant JSON-LD structured data for a Physiotherapy Service Areas page. AIFDS (AI-Friendly Data Structure) is a schema framework built on research into which structured data fields AI systems actually read, parse, and use when deciding whether to cite a page. Documentation at aifds.org. Before generating any code, ask me for the following information in a single numbered list. Do not generate schema until I have answered every required field. REQUIRED — do not proceed without these: 1. City 2. County 3. Domain 4. Faq answer 5. Faq question 6. Phone number 7. Practice name 8. Service areas page description 9. Service areas page title 10. State OPTIONAL — ask for these but proceed if I skip them: 1. Any additional details not covered above Once I provide the information, output a complete JSON-LD script block ready to paste into the <head> of my HTML page. Output requirements: - Valid JSON-LD wrapped in <script type="application/ld+json"> tags - schema.org vocabulary only - Every AIFDS-required field for this industry and page type included - Include this data attribute on the script tag: data-aifds="aifds.org Physiotherapy Service Areas" - No placeholder text — omit missing optional fields rather than fill with examples - After the code block, list any optional fields skipped that would strengthen AI citation
Generated schema follows the AIFDS framework. Fields were selected based on research into AI crawler behavior. View the research at minnesota.ai
Copy the template below and replace every YOUR_* value with your own data.
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "MedicalClinic",
"@id": "https://YOUR_DOMAIN.com/#clinic",
"name": "YOUR_PRACTICE_NAME",
"url": "https://YOUR_DOMAIN.com",
"telephone": "YOUR_PHONE_NUMBER",
"medicalSpecialty": "PhysicalTherapy",
"areaServed": [
{
"@type": "City",
"name": "YOUR_CITY_1"
},
{
"@type": "City",
"name": "YOUR_CITY_2"
},
{
"@type": "City",
"name": "YOUR_CITY_3"
},
{
"@type": "City",
"name": "YOUR_CITY_4"
},
{
"@type": "City",
"name": "YOUR_CITY_5"
},
{
"@type": "AdministrativeArea",
"name": "YOUR_COUNTY"
},
{
"@type": "State",
"name": "YOUR_STATE"
}
]
},
{
"@type": "WebPage",
"@id": "https://YOUR_DOMAIN.com/service-areas/",
"name": "YOUR_SERVICE_AREAS_PAGE_TITLE",
"description": "YOUR_SERVICE_AREAS_PAGE_DESCRIPTION",
"isPartOf": {
"@id": "https://YOUR_DOMAIN.com/#website"
},
"breadcrumb": {
"@id": "https://YOUR_DOMAIN.com/service-areas/#breadcrumb"
}
},
{
"@type": "BreadcrumbList",
"@id": "https://YOUR_DOMAIN.com/service-areas/#breadcrumb",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://YOUR_DOMAIN.com/"
},
{
"@type": "ListItem",
"position": 2,
"name": "Service Areas",
"item": "https://YOUR_DOMAIN.com/service-areas/"
}
]
},
{
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "YOUR_FAQ_QUESTION_1",
"acceptedAnswer": {
"@type": "Answer",
"text": "YOUR_FAQ_ANSWER_1"
}
},
{
"@type": "Question",
"name": "YOUR_FAQ_QUESTION_2",
"acceptedAnswer": {
"@type": "Answer",
"text": "YOUR_FAQ_ANSWER_2"
}
},
{
"@type": "Question",
"name": "YOUR_FAQ_QUESTION_3",
"acceptedAnswer": {
"@type": "Answer",
"text": "YOUR_FAQ_ANSWER_3"
}
}
]
}
]
}
List every city and major neighborhood you serve. AI matches location queries literally. If someone asks for a PT in Linden Hills and Linden Hills is not in your areaServed, you will not appear. The more complete your list, the more queries you match.
If you offer in-home physical therapy, note the home-visit service area in the description or create a separate service entry. Patients searching for 'home physical therapy' need AI to know which areas you cover for mobile visits versus clinic-only appointments.
Yes. Include your primary service areas on the homepage and the complete list on the service areas page. Use the same @id for the MedicalClinic node across all pages so AI treats them as the same entity.