Course Instance & Cohort Schedule Schema Markup (JSON-LD)
Granular structured data for specific upcoming course cohorts, live instructor-led bootcamps, course workload hours, start/end dates, and enrollment pricing.
Displayed below main page header or above the tool container. • Zero CLS Container
Production JSON-LD Code Block
Embed this structured data block directly into your HTML <head> or framework layout template.
{
"@context": "https://schema.org",
"@type": "CourseInstance",
"name": "Advanced Search Systems Architecture - Fall 2026 Cohort",
"courseMode": "https://schema.org/Online",
"startDate": "2026-10-15",
"endDate": "2026-12-15",
"courseWorkload": "PT40H",
"instructor": {
"@type": "Person",
"name": "Dr. Maya Lin",
"jobTitle": "Lead Search Systems Scientist"
},
"location": {
"@type": "VirtualLocation",
"url": "https://omniseotools.com/academy/live-classroom"
},
"offers": {
"@type": "Offer",
"name": "Early Bird Cohort Registration",
"price": "799.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://omniseotools.com/academy/fall-2026/enroll"
}
}Typed Properties Specification (8 Fields)
Key Schema.org properties and sub-objects required to qualify for rich snippet treatment in Google Search.
| Property | Expected Type | Status | Description & Example |
|---|---|---|---|
| name | string | Required | Title of the specific course cohort or instance. e.g. Advanced Search Systems Architecture - Fall 2026 Cohort |
| courseMode | string (URL | string) | Required | Delivery modality: 'Online', 'Onsite', or 'Blended'. e.g. https://schema.org/Online |
| startDate | string (ISO 8601) | Required | Cohort start date. e.g. 2026-10-15 |
| endDate | string (ISO 8601) | Required | Cohort graduation or end date. e.g. 2026-12-15 |
| courseWorkload | string (ISO 8601 Duration) | Recommended | Total estimated study hours in ISO format (e.g. PT40H for 40 hours). e.g. PT40H |
| instructor | Person | Recommended | Primary faculty member or bootcamp instructor. e.g. { '@type': 'Person', 'name': 'Dr. Maya Lin' } |
| location | VirtualLocation | Place | Required | Virtual classroom URL or physical campus room location. e.g. { '@type': 'VirtualLocation', 'url': 'https://omniseotools.com/classroom' } |
| offers | Offer | Required | Tuition pricing, seat availability, and enrollment URL. e.g. { '@type': 'Offer', 'price': '799.00', 'priceCurrency': 'USD' } |
Google Search Console Pitfalls & Critical Warnings
Avoid these 3 common validation traps, parser errors, and algorithmic policy penalties when deploying CourseInstance schema.
Non-ISO 8601 Duration in courseWorkload
Writing courseWorkload as '40 hours' instead of 'PT40H'.
Format courseWorkload using ISO 8601 duration syntax (e.g. PT40H, PT20H).
Missing startDate on Live Scheduled Cohorts
Omitting startDate for synchronous cohort-based courses.
Always populate startDate for scheduled cohort instances.
Unlinked Instructor Profile
Using plain text strings for instructors without professional titles or entity links.
Format instructor as a nested Person object with jobTitle.
Recommended Implementation Scenarios
Related Schema Blueprints
Explore complementary structured data blueprints across the Events & Education cluster.
Online Certification & Professional Course Schema Markup (JSON-LD)
Academic Syllabus & Course Curriculum Schema Markup (JSON-LD)
Workshop & Hands-On Masterclass Schema Markup (JSON-LD Blueprint)
College Degree & Academic Program Schema Markup (JSON-LD)
Displayed below main page header or above the tool container. • Zero CLS Container