Outschool Listings Scraper
Pricing
from $2.00 / 1,000 class listings
Outschool Listings Scraper
The Outschool Listings Scraper extracts live online class listings and details from Outschool.com, capturing class titles, prices, age and grade ranges, schedules, class sizes, ratings, reviews, teacher profiles β ideal for online-learning market research and competitor and price monitoring.
Pricing
from $2.00 / 1,000 class listings
Rating
0.0
(0)
Developer
FalconScrape
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
20 days ago
Last modified
Categories
Share
π Outschool Listings Scraper
Easily extract online class listings from Outschool β the marketplace of 140,000+ live, teacher-led classes for kids and teens (ages 3β18). The Outschool Listings Scraper gathers structured data on classes, prices, schedules, ratings, and teachers, so you can analyze the online-learning market, track competitors, monitor pricing, or build your own course catalog.
Run it from the Apify Console with no code, or automate it with the Apify API, scheduling, and integrations (Google Sheets, Make, Zapier, Slack, and more).
β¨ Features
- π Keyword search β Find classes by topic (e.g.
coding,spanish,chess) or leave it empty to scrape the most popular classes across every subject. - π·οΈ Rich listing data β Title, summary, subject, age range, price, class size, weekly meetings, duration, star rating, review count, and the teacher behind each class.
- π Live schedule info β Number of open and upcoming sections plus the next session's start and end time.
- π Optional full details β Toggle Scrape full class details to add the complete curriculum, learning goals, homework, grading policy, materials, prerequisites, and teacher credentials.
- β‘ Fast & reliable β Pulls clean, structured data directly and handles pagination automatically.
- πΈ Pay only for what you scrape β Transparent pay-per-result pricing with a lower rate for listings and a higher rate for full details.
π οΈ How to use the Outschool Listings Scraper
- Enter a search query β Type a keyword such as
coding, or leave it blank to scrape top classes across all subjects. - Set the limit β Choose how many classes to scrape with Max items.
- (Optional) Enable full details β Turn on Scrape full class details to capture the entire curriculum and teacher credentials for each class.
- Run the Actor β Start it and download your results as JSON, CSV, Excel, or HTML.
π§ Input
| Field | Type | Description |
|---|---|---|
searchQuery | string | Keyword to search classes for. Leave empty to scrape the most popular classes across all subjects. |
maxItems | integer | Maximum number of classes to scrape (default 50). |
scrapeDetails | boolean | Fetch the full detail page for each class (curriculum, policies, teacher credentials). Slower and costs more. Default false. |
proxyConfiguration | object | Proxy settings used while scraping. |
Example input:
{"searchQuery": "coding","maxItems": 50,"scrapeDetails": false}
π Sample output data
Each class is saved as a structured record. You can download the dataset in various formats such as JSON, CSV, Excel, or HTML.
Listing record (default mode):
{"uid": "9e5e8ede-58e8-43c2-a951-9f08940d478e","slugId": "YG4kOrJe","title": "Python Programming for Beginners Level 1 | Live Coding Class","summary": "Beginner-Friendly Python Coding! Unlock your child's potential with Python.","url": "https://outschool.com/classes/python-programming-for-beginners-level-1-YG4kOrJe","subject": "Coding & Tech","ageMin": 10,"ageMax": 14,"priceUsd": 240,"weeklyMeetings": 1,"durationMinutes": 50,"classSizeMin": 1,"classSizeMax": 6,"averageStarRating": 4.91,"reviewCount": 373,"teacherName": "Einstein's Square","teacherUrl": "https://outschool.com/teachers/EinsteinsSquare","sectionCount": 8,"openSectionCount": 5,"nextSectionStart": "2026-08-14T16:00:00.000Z"}
When Scrape full class details is enabled, each record additionally includes classExperience, learningGoals, homework, gradingPolicy, materials, prerequisites, parentalGuidance, assessment, gradeLevelMin/gradeLevelMax, completedEnrollmentCount, and the teacher's teacherCredentials, teacherAverageStarRating, and teacherReviewCount.
ποΈ Data fields
| Field | Description |
|---|---|
title | Class title |
url | Link to the class page |
subject | Subject / category |
summary | Short class description |
priceUsd / priceCents | Class price |
ageMin / ageMax | Recommended age range |
gradeLevelMin / gradeLevelMax | Grade level range (details mode) |
weeklyMeetings / durationMinutes / durationWeeks | Schedule structure |
classSizeMin / classSizeMax | Class size |
averageStarRating / reviewCount | Class rating and number of reviews |
sectionCount / openSectionCount / upcomingSectionCount | Available class sections |
nextSectionStart / nextSectionEnd | Next scheduled session |
teacherName / teacherUrl | Teacher name and profile link |
teacherCredentials | Teacher degrees and subjects (details mode) |
classExperience / learningGoals / homework / materials | Full curriculum content (details mode) |
π° How much does it cost to scrape Outschool?
This Actor uses a pay-per-event pricing model:
| Event | Price | When it's charged |
|---|---|---|
| Class listing | $0.002 | Per class scraped in default mode |
| Class detail | $0.006 | Per class scraped with full details enabled |
There is no per-run start fee β you pay only for the classes you actually scrape. For example, scraping 1,000 class listings costs about $2, or about $6 with full curriculum details. New Apify accounts include free monthly usage credits, so you can start testing right away.
π‘ Tips
- Start with a small Max items value to preview the data before running a large scrape.
- Keep Scrape full class details off when you only need catalog-level data (title, price, rating, schedule) β it's faster and cheaper.
- Use a specific search query to target a niche (e.g.
ap calculus,creative writing) instead of scraping the whole catalog.
β FAQ
Is scraping Outschool legal? This Actor collects only publicly available data (class listings, prices, ratings, and public teacher profiles). No login or personal learner data is accessed. As with any scraping, you are responsible for how you use the data and for complying with Outschool's Terms of Service and applicable laws. Consider seeking legal advice for your specific use case.
Can I schedule regular runs? Yes. Use Apify's scheduling to run the Actor daily, weekly, or at any interval, and connect the output to Google Sheets, Make, Zapier, and more.
What if I need a custom field or feature? Open an issue on the Actor's Issues tab β feedback and custom requests are welcome.
