Scrape YouTube channels by handle, channel ID or URL. Get the real channel ID, subscribers, total views, video count, country, join date and links, plus each channel's latest videos with views, duration and publish time. One row per channel with 27 fields. Export to CSV, JSON or Excel.
- Total runs
- 143
- Bookmarked
- 0
- Last modified
- 2 days ago
This scraper was last updated on .
What does the YouTube Education Channels Scraper return?
YouTube Education Channels Scraper
Scrape YouTube channels by handle, channel ID or URL. Each channel comes back as one row with its real channel ID, subscribers, total views, video count, country, join date, links, and its latest uploads with views, duration and publish time. No API key or login. Export to CSV, JSON, Excel, or XML.
YouTube's official API needs a Google Cloud project, an API key and a daily quota. This Actor reads the public channel page and its About panel instead, so you paste a list of channels and get the numbers back. It was built for education channels like @veritasium or @khanacademy, and it works for any public channel.
| Who uses it | What they scrape YouTube Education Channels for |
|---|---|
| EdTech product managers | Which education channels are growing fastest this quarter |
| Content strategists | What topics top education creators published recently |
| Market researchers | Audience size and output of education channels in a niche |
| Data analysts | A dataset of education channel performance for trend analysis |
What it does
- ๐ฏ Flexible input: a handle (
@veritasiumorveritasium), a channel ID (UC...), or a channel URL (youtube.com/@name,youtube.com/channel/UC...,youtube.com/c/name). - ๐ Channel stats: channel ID, subscribers (text and number), total views, video count, country, join date, verified badge.
- ๐ Profile data: description, keywords, avatar, banner and the external links on the About panel.
- ๐ฌ Recent videos: up to 100 of the channel's latest uploads from its Videos tab, each with video ID, URL, title, views, publish time, duration and thumbnail.
- ๐งพ One row per channel: 27 fields per channel, plus 10 fields for each video inside
recentVideos.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
Output
A real row, shortened (the run returned 10 videos for this channel):
{
"type": "channel",
"channelId": "UCHnyfMqiRRG1u-2MsSQLbXA",
"name": "Veritasium",
"handle": "@veritasium",
"channelUrl": "https://www.youtube.com/@veritasium",
"subscribers": "21.3M subscribers",
"subscriberCount": 21300000,
"totalViews": 4593745500,
"videoCount": 536,
"country": "United States",
"createdDate": "2010-07-21",
"isVerified": true,
"links": [{ "title": "Patreon", "url": "patreon.com/veritasium" }],
"recentVideos": [
{
"videoId": "JsBZOcqZerk",
"videoUrl": "https://www.youtube.com/watch?v=JsBZOcqZerk",
"title": "The Insane Real Engineering of the Nazi Enigma Machine",
"viewCount": 5400000,
"viewCountText": "5.4M views",
"publishedTimeText": "3 days ago",
"durationText": "47:42",
"durationSeconds": 2862,
"isLive": false
}
],
"recentVideosCount": 10,
"error": null
}
All 27 channel fields: type, input, channelId, name, channelName, handle, channelHandle, url, channelUrl, subscribers, subscriberCountText, subscriberCount, totalViews, videoCount, description, country, createdDate, isVerified, imageUrl, avatarUrl, bannerUrl, keywords, links, recentVideos, recentVideosCount, scrapedAt, error.
Good to know:
subscriberCountis derived from YouTube's rounded display ("21.3M"), so it is accurate to three significant figures.totalViewsandvideoCountare exact.videoCountcounts every upload, including Shorts and past livestreams.recentVideoscomes from the Videos tab, which lists long-form uploads only, so a channel can show fewer recent videos than itsvideoCount.countryis empty when the channel has not set one.
What you can do with YouTube Education Channels data
๐ Track education channel growth. Run the Actor weekly on a list of handles and compare subscribers and total views between runs.
๐ Curate learning resources. Pull the latest uploads from channels like CrashCourse and Khan Academy to build a reading list for a course module.
๐ Research competitor content. Compare recent video titles, lengths and views across rival education channels to find gaps in your own plan.
๐ Build a channel database. Collect channel IDs, countries, join dates and links for thousands of channels in one CSV.
Configure the run
| Input | What it does |
|---|---|
handles |
The channels to scrape. Handles, UC... IDs and channel URLs can be mixed. Duplicates are removed. |
maxItems |
How many channels to collect in the run. |
maxVideosPerChannel |
How many recent videos to include per channel, 0 to 100. Default 10. Set 0 for channel stats only. |
A first run with the defaults:
{
"handles": ["@veritasium", "@3blue1brown", "@CrashCourse", "@khanacademy", "@TEDEd"],
"maxItems": 10,
"maxVideosPerChannel": 10
}
Mixed input with more videos per channel:
{
"handles": ["UCsXVk37bltHxD1rDPwtNM8Q", "https://www.youtube.com/@minutephysics", "numberphile"],
"maxItems": 3,
"maxVideosPerChannel": 50
}
Free users
Free-plan runs return up to 10 channels as a preview. Upgrade your Apify plan to collect up to 1,000,000 channels per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the YouTube Education Channels Scraper.
- Paste your channels, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab. The Recent videos view shows one line per video.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to YouTube channel data through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/youtube-edu-channels-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
A channel came back with "Channel not found (404)".
The handle does not exist on YouTube. Open the channel in a browser and copy the handle or the UC... ID from the address bar. Error rows are free.
A channel has fewer recent videos than I asked for.
The Videos tab only lists long-form uploads. Channels that mostly post Shorts or livestreams have fewer entries there.
How fast is it?
In our test runs, 20 channels with 10 videos each finished in about 7 to 8 seconds.
FAQ
| Question | Answer |
|---|---|
| Do I need a YouTube API key? | No. The Actor reads public channel pages, so no key or OAuth is needed. |
| What can I put in the input? | A handle with or without @, a UC... channel ID, or a channel URL. |
| Is each video billed? | No. You pay per channel row. The recent videos are included in that row. |
| Does this work for non-education channels? | Yes. Any public YouTube channel works. |
| How many channels can I scrape in one run? | Up to 1,000,000 with maxItems. |
| Is this legal? | Only scrape public data you have the right to use, and check YouTube's terms of service for your use case. |
Next step
Every row carries the channel's channelUrl, handle and channelId, plus the videoUrl and videoId of each video in recentVideos, so the other ParseForge YouTube Actors can take it from here:
- YouTube Channel Scraper - Stats and Video List: put the
handleorchannelIdcolumn instartUrlsto scrape the same channels there. It adds exact publish dates for the newest uploads. - YouTube Scraper - Search, Channels and Playlists: put the
channelUrlcolumn instartUrlsto collect more than the latest 100 uploads of a channel, or search YouTube by keyword. - YouTube Comments Scraper - Replies and Likes: put the
videoUrlvalues fromrecentVideosinstartUrlsto get the comments on each video. - YouTube Transcript Scraper - Timestamps, SRT and Metadata: put the
videoUrlvalues fromrecentVideosinstartUrls, or thevideoIdvalues invideoIds, to get the captions of each video.
Browse the full ParseForge collection for more scrapers.
๐ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
โ ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by YouTube LLC. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
What input does the YouTube Education Channels Scraper accept?
| Field | Type | What it does | Default |
|---|---|---|---|
| handles | array | YouTube channels to scrape. Each entry can be a handle (@veritasium or veritasium), a channel ID (UC...), or a channel URL (youtube.com/@veritasium, youtube.com/channel/UC..., youtube.com/c/name). | ["@veritasium","@3blue1brown","@CrashCou |
| maxItems | integer | How many channels to collect per run. Each channel is one result. | 10 |
| maxVideosPerChannel | integer | How many of each channel's latest long-form uploads (Videos tab, newest first) to include in the recentVideos field, up to 100. Set 0 to skip videos. Videos are part of the channel's row and are not billed separately. | 10 |
How much does the YouTube Education Channels Scraper cost?
from $0.50 per 1,000 results
| Charged for | What it is | Price each |
|---|---|---|
| result | One YouTube channel row in the default dataset, including its recent videos. | $0.0005 to $0.0013 |
Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.
How do I call the YouTube Education Channels Scraper API?
One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.
curl -X POST "https://api.apify.com/v2/acts/parseforge~youtube-edu-channels-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"handles": [
"@veritasium",
"@3blue1brown",
"@CrashCourse",
"@khanacademy",
"@TEDEd"
],
"maxItems": 10,
"maxVideosPerChannel": 10
}' What example inputs can I use?
Use these inputs to see how a run is configured.
{
"handles": [
"@veritasium",
"@3blue1brown",
"@CrashCourse",
"@khanacademy",
"@TEDEd"
],
"maxItems": 10,
"maxVideosPerChannel": 10
} What do users say about the YouTube Education Channels Scraper?
No reviews yet. Be the first.
How do I report an issue with the YouTube Education Channels Scraper?
We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.
Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.
What related scrapers can I use?
Run YouTube Education Channels Scraper on Apify All scrapers
