Online Course Finder & Comparator
Pricing
from $0.85 / 1,000 courses
Online Course Finder & Comparator
Find and compare online courses for a learner goal using public Coursera search pages and Skillshare class sitemap discovery. Produces ranked shortlist rows with buyingDecision, goalFitScore, valueForMoneyScore, confidenceTier, missingData and redFlags.
Pricing
from $0.85 / 1,000 courses
Rating
0.0
(0)
Developer
Trove Vault
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
a month ago
Last modified
Categories
Share
Find and compare online courses for a specific learner goal. This actor searches public course platforms, extracts course metadata where available, and ranks course candidates by match, value, confidence, and practical trade-offs.
It is built for people and teams choosing what to learn, not for creators analyzing what to sell. For creator-side market research, use Course Market Gap Analyzer instead.
What it does
Online Course Finder & Comparator helps answer questions like:
- Which course is the best fit for my learning goal?
- Which option looks like the best value?
- Which courses have enough public proof to trust?
- Which course is better for beginners, intermediate learners, or advanced users?
- What trade-offs should I check before buying or assigning a course?
The actor searches selected platforms from a learner goal and produces structured comparison rows that can be exported, scheduled, or connected to other Apify workflows.
Input
Basic example:
{"topic": "AI agents","platforms": ["coursera", "skillshare"],"maxCoursesPerPlatform": 5,"learnerGoal": "Learn to build practical AI agent workflows for business automation","experienceLevel": "intermediate","budgetPreference": "best-value"}
Team or procurement example:
{"topic": "Python automation","learnerGoal": "Automate repetitive reporting tasks with Python","experienceLevel": "beginner","decisionContext": "team training","mustHaveCriteria": ["beginner-friendly", "hands-on projects", "under 10 hours"],"budgetPreference": "best-value"}
Input reference
| Field | Description |
|---|---|
topic | Course topic or skill area to search. Use a concise phrase such as AI agents, Python automation, or product analytics. |
learnerGoal | Practical learning outcome. This is the most important field for ranking because it explains what the learner needs to do after the course. |
platforms | Course platforms to search. Current reliable public sources are coursera and skillshare. |
maxCoursesPerPlatform | Maximum candidates to collect from each platform. Keep this small for fast shortlists; increase it for research. |
experienceLevel | Optional learner level: beginner, intermediate, or advanced. |
decisionContext | Optional context such as individual learning, team training, or procurement review. |
mustHaveCriteria | Optional list of requirements such as certificate, project-based, short duration, or beginner-friendly. |
budgetPreference | Optional ranking preference such as best-value or lowest-price. |
datasetId | Optional Apify dataset ID to append rows into. |
runId | Optional workflow identifier copied into output rows. |
Output
Each dataset row represents a course candidate or a no-results recommendation when public discovery does not return enough data. Platform fetch issues are reported in the run summary, so blocked sources do not pollute the course shortlist.
Key fields include:
rank- final recommendation orderbuyingDecision- plain-English decision such as shortlist, inspect manually, or lower prioritywhyRankedHere- the reason behind the recommendation rankgoalFitScore- fit against the learner goalvalueForMoneyScore- price-to-quality value signalconfidenceTieranddataConfidenceScore- evidence strength based on available public metadatarecommendation- short label such as Strong fit or Worth shortlistingredFlags- risks or missing proof to review before buyingmissingData- fields the public pages did not exposenextAction- what the learner or L&D team should do nextbestFor- learner profile the course appears best suited formainCaveatandtradeoffs- what to verify before choosingcourseTitle,courseUrl,provider,platformrating,reviewCount,studentCount,price,currency,level,durationHours
The output works well as a course shortlist for individuals, corporate L&D teams, education researchers, and procurement workflows.
Output example
{"rank": 1,"buyingDecision": "shortlist","recommendation": "Strong fit","whyRankedHere": "High topic match, strong public proof, and practical fit for the stated learner goal.","goalFitScore": 86,"valueForMoneyScore": 72,"dataConfidenceScore": 78,"confidenceTier": "medium","courseTitle": "AI Agents for Business Automation","courseUrl": "https://www.coursera.org/learn/example-course","provider": "Example University","platform": "coursera","rating": 4.7,"reviewCount": 1200,"studentCount": null,"price": null,"currency": null,"level": "intermediate","durationHours": 8,"bestFor": "Intermediate operators who want practical agent workflows","mainCaveat": "Verify current price and certificate details on the course page.","redFlags": [],"missingData": ["price"],"nextAction": "Open the course page and confirm syllabus, price, and certificate value.","runId": "team-training-q3"}
API example
curl -X POST "https://api.apify.com/v2/acts/trovevault~online-course-finder-comparator/runs?waitForFinish=120" \-H "Authorization: Bearer $APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"topic": "AI agents","learnerGoal": "Learn to build practical AI agent workflows for business automation","platforms": ["coursera", "skillshare"],"maxCoursesPerPlatform": 5}'
Use cases
Individual learners
Compare courses before buying, especially when many marketplace results look similar.
Corporate L&D teams
Build a shortlist of public courses for a skill area and export the results for review.
Managers and team leads
Find course options for a team member based on role, level, and outcome.
Education researchers
Collect structured comparison data for public course availability across platforms.
How ranking works
The actor uses deterministic scoring:
- Topic and learner-goal overlap increase
goalFitScore. - Ratings, review counts, learner counts, detected level, and duration improve confidence.
- Budget preference changes how price affects
valueForMoneyScore. - Coursera is framed as stronger for certificates and structured programs, and unsupported sources are kept out of the default input until they return reliable data.
Scores are meant for shortlist building, not as a guarantee of course quality. Always inspect the final course page before purchasing or assigning training.
Supported sources
The actor currently exposes public discovery from:
- Coursera search pages
- Skillshare public class sitemap
Udemy is intentionally not exposed in the input form right now because both its public search page GET requests and API endpoint returned Cloudflare challenge pages in HTTP tests. Skillshare search also blocks HTTP requests, so the actor uses the public class sitemap instead.
Some platforms personalize results, hide prices by region, or block automated requests. When a source blocks public HTTP discovery, the actor records the issue in OUTPUT.sourceLog and continues with the remaining sources.
Limitations
The actor does not log in, purchase courses, bypass paywalls, or access private learner data. It only extracts public page metadata. Not every platform exposes all fields, so some rows may have missing price, duration, rating, or provider fields.
When structured course cards are unavailable, the actor falls back to page-level metadata where possible and records lower confidence.
Troubleshooting
Few or no courses are returned
Use a broader topic, include both supported platforms, and keep the learner goal concrete. Very narrow goals may not match public course titles or descriptions.
Prices or duration are missing
Some platforms personalize price, hide subscription details, or omit duration from public cards. Check missingData, confidenceTier, and mainCaveat before making a purchase decision.
A platform appears blocked
Check OUTPUT.sourceLog. The actor keeps blocked or unreliable sources out of the shortlist and continues with the remaining public sources.
Tips for best results
- Use a clear learner goal, not just a topic.
- Select
beginner,intermediate, oradvancedwhen level matters. - Use
best-valuefor balanced ranking orlowest-pricefor budget-sensitive searches. - Use must-have criteria to tell the actor what actually matters, such as certificate, practical projects, or team suitability.
- Schedule recurring runs if you want to monitor changes in available courses or pricing.
Integrations
Use datasetId to append results to an existing dataset and runId to trace rows through a larger workflow. The actor can be connected to dashboards, CSV exports, L&D approval processes, spreadsheets, or follow-up analysis actors.
FAQ
Does this buy or enroll in courses?
No. It only collects public course metadata and ranks candidates for review.
Is this for course creators?
No. This actor is learner-side. It helps choose courses. For creator-side market research, use a market gap or demand analysis actor.
Are rankings guaranteed?
No. Scores are deterministic shortlist signals based on public metadata and your learner goal. Always inspect the final course page before buying or assigning training.
Can I schedule it?
Yes. Use Apify schedules and optionally provide datasetId to append recurring results into the same dataset.
Changelog
0.1: Initial learner-side course finder with public discovery, ranking, trade-off analysis,datasetId, andrunIdsupport.
Feedback and support
Open an Apify issue with the topic, learner goal, selected platforms, run ID, and any course you expected to appear.