Colleges, universities and course providers publish one feed of their programs on their own domain: tuition, start dates, deadlines, time to complete and schedules. Affiliates, comparison sites and AI assistants subscribe to it and are told the same day anything changes.
1
Example University is a fictional school. Prices are per credit hour.
Schools publish what they offer. Sites and apps subscribe. Pick your side to see the four steps.
Start from the schema.org markup on your program pages. Add the OLF properties for what schema.org can't say: schedules, time to complete, status.
Put olf.json at the root of your site. It's the only feed file you publish, and your domain is what makes it official.
Run the validator or the JSON Schema check in your build. It catches missing fields, outside sources and stale dates.
A planned dashboard will show every site reading your feed and flag any that still show old numbers.
Search the directory, or fetch any school's /olf.json. Every feed lives at the same address and uses the same format.
Load programs, dates, prices and schedules through one API, or read the school's feed directly.
Planned: subscribe and get a signed notice within the hour when a school changes a value you show.
Update dates, durations and prices, drop programs that stopped enrolling, and show the verified badge.
A feed is ordinary schema.org with a few additions. Hover a note to see the line it describes.
{ "@type": "EducationalOccupationalProgram",1 "name": "Master of Business Administration",2 "educationalProgramMode": "online", "timeToComplete": "P18M",3 "olf:completionTime": [{ "olf:enrollmentIntensity": "olf:PartTime", "olf:typicalDuration": "P36M" }], "olf:classSchedule": [{4 "olf:scheduleType": "olf:SynchronousOnline", "byDay": ["Tuesday", "Thursday"] }], "offers": { "priceSpecification": [{5 "@type": "olf:TuitionPriceSpecification", "price": 480, "priceCurrency": "USD", "olf:provenance": {6 "olf:sourceUrl": "https://www.example.edu/tuition/", "olf:verifiedDate": "2026-10-01" } }] }}
A standard schema.org program. Tools that only know schema.org still understand it.
Exactly as it appears on the school's own page.
schema.org holds the headline figure; OLF adds part-time, accelerated and transfer timelines.
Evenings, weekends, live online or self-paced, with days, times and time zone.
A schema.org offer, extended with who each price is for and what unit it's quoted in.
Each price points to the school's page and the date it was confirmed. No source, no listing.
Schools write and host their own feed. Open Learning Feed never edits it, and if the two ever disagree, the school's feed wins.
Each price points to the page on the school's site where it appears, with the date the school last confirmed it. Every program carries the date the school last changed it.
The format extends schema.org, so search engines and AI tools that already read schema.org understand the core of every feed.
Drop in your system's program export and get a draft olf.json that you review before anything goes live.
Names are trademarks of their owners. No affiliation or endorsement is implied.