YouTube Playlist Videos Scraper avatar

YouTube Playlist Videos Scraper

Pricing

Pay per event

Go to Apify Store
YouTube Playlist Videos Scraper

YouTube Playlist Videos Scraper

Extract public YouTube playlist video lists, positions, titles, channels, durations, views, thumbnails, and playlist metadata.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

2

Monthly active users

15 days ago

Last modified

Share

Extract public YouTube playlist video lists with titles, channels, positions, durations, thumbnails, URLs, and playlist metadata.

Use this actor when you need a clean dataset from one or more public YouTube playlists for research, audits, curation, monitoring, or reporting.

At a glance

  • Input: Public playlist URLs, watch URLs with list=, or playlist IDs; a 1–500 per-playlist cap; and optional proxy settings.
  • Output: One row per public playlist video with position, video URL, title, channel, duration, views, thumbnails, and playlist context.
  • Best for: Playlist exports, video inventory, curriculum/media lists, creator research, and YouTube data pipelines.
  • Pricing unit: A start event per run plus one result event for each saved playlist-video row.
  • Login required: No. The Actor reads public YouTube playlist pages only.

Ready-to-run examples

What can it do?

YouTube Playlist Videos Scraper turns public YouTube playlist URLs into structured dataset rows.

Each output item represents one video in a playlist.

The actor collects playlist-level context and video-level metadata in the same row.

You can export the results as JSON, CSV, Excel, XML, RSS, or HTML from Apify.

Common jobs include content inventory, playlist backup, competitor research, and recurring monitoring.

Who is it for?

📣 Content marketers can audit brand, competitor, or influencer playlists.

🎓 Educators can catalog course playlists and learning paths.

🧪 Researchers can build repeatable video datasets from public playlist pages.

🎬 Media teams can monitor editorial playlists and content collections.

🧑‍💻 Developers can feed playlist video rows into automations, dashboards, and enrichment pipelines.

Why use this actor?

YouTube playlists are easy to browse manually but slow to copy into a spreadsheet.

This actor saves the repetitive work.

It returns normalized video IDs, video URLs, playlist IDs, titles, positions, thumbnails, channels, and timestamps.

The dataset format is designed for downstream filtering, deduplication, and reporting.

Output fields

FieldDescription
playlistUrlCanonical playlist URL
playlistIdYouTube playlist ID
playlistTitlePlaylist title
playlistOwnerPlaylist owner text when available
positionVideo position in the playlist
videoIdYouTube video ID
videoUrlWatch URL with playlist context
titleVideo title
descriptionSnippetPublic snippet when available
durationVideo duration text
thumbnailUrlVideo thumbnail URL
publishedAtTextPublic relative/date text
channelNameVideo channel name
channelUrlVideo channel URL
viewCountTextPublic view count text when available
scrapedAtExtraction timestamp

Every run also writes RUN_SUMMARY (completed, partial, or failed playlist entries) and RUN_CHECKPOINT (the next unprocessed playlist and pending IDs). These records make batch outcomes easy to reconcile after a timeout or an unavailable playlist.

Pricing

This Actor uses Apify pay-per-event pricing. The prices below come from the current Actor pricing configuration. Apify public plans map to Store discount tiers, so the table shows both the user-facing plan context and the pricing tier name. The final price shown in Apify depends on the user account plan and any custom agreement.

EventWhat is chargedPrice
startOne-time fee charged when a run starts. Covers fixed startup cost.$0.005
EventWhat is chargedFree / no discountStarter / BronzeScale / SilverBusiness / GoldCustom / PlatinumCustom / Diamond
resultCharged per YouTube playlist video record extracted.$0.02978 / 1,000$0.0259 / 1,000$0.0202 / 1,000$0.01554 / 1,000$0.01036 / 1,000$0.01 / 1,000

Apify may also charge platform usage for compute, storage, proxies, or data transfer outside this Actor pricing. Check the Actor run and the Apify Pricing tab for the exact cost shown to your account.

How to use it

  1. Open the actor on Apify.
  2. Paste one or more public YouTube playlist URLs.
  3. Set the maximum number of videos per playlist (1–500).
  4. Leave proxy settings at the default unless you have a reason to change them.
  5. Click Start.
  6. Download the dataset when the run finishes.

Input configuration

SettingJSON keyWhat to enter
Playlist URLsplaylistUrlsPublic YouTube playlist URLs to export.
Maximum videos per playlistmaxVideosPerPlaylistCost and size cap per playlist.
Proxy configurationproxyConfigurationApify proxy settings for the run.

Input notes

The main input is playlistUrls.

You can paste full URLs like:

https://www.youtube.com/playlist?list=PLrEnWoR732-DZV1Jc8bUpVTF_HTPbywpE

You can also use playlist IDs.

PLrEnWoR732-DZV1Jc8bUpVTF_HTPbywpE

Input example

{
"playlistUrls": [
{ "url": "https://www.youtube.com/playlist?list=PLrEnWoR732-DZV1Jc8bUpVTF_HTPbywpE" }
],
"maxVideosPerPlaylist": 25,
"proxyConfiguration": { "useApifyProxy": false }
}

Output example

{
"playlistUrl": "https://www.youtube.com/playlist?list=PLrEnWoR732-DZV1Jc8bUpVTF_HTPbywpE",
"playlistId": "PLrEnWoR732-DZV1Jc8bUpVTF_HTPbywpE",
"playlistTitle": "Learn Something New",
"position": 1,
"videoId": "MhgLasBFr6o",
"videoUrl": "https://www.youtube.com/watch?v=MhgLasBFr6o&list=PLrEnWoR732-DZV1Jc8bUpVTF_HTPbywpE&index=1",
"title": "What was TEKOI? [INCORRECT VERSION]",
"duration": "6:19",
"channelName": "CGP Grey",
"channelUrl": "https://www.youtube.com/@CGPGrey",
"scrapedAt": "2026-06-17T08:47:04.106Z"
}

Tips for best results

Use public playlists.

Check that the playlist opens in a normal browser without logging in.

Start with a low maxVideosPerPlaylist value for testing.

Increase the limit once the output shape looks right.

Run separate jobs for unrelated playlist groups if you want easier exports.

Integrations

Send results to Google Sheets for editorial calendars.

Send results to Airtable for content databases.

Use webhooks to trigger notifications after a playlist audit finishes.

Use the Apify API to schedule recurring playlist monitoring.

Connect the dataset to BI tools for video catalog analysis.

API usage with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/youtube-playlist-videos-scraper').call({
playlistUrls: [{ url: 'https://www.youtube.com/playlist?list=PLrEnWoR732-DZV1Jc8bUpVTF_HTPbywpE' }],
maxVideosPerPlaylist: 25
});
console.log(run.defaultDatasetId);

API usage with Python

from apify_client import ApifyClient
client = ApifyClient('MY_APIFY_TOKEN')
run = client.actor('fetch_cat/youtube-playlist-videos-scraper').call(run_input={
'playlistUrls': [{'url': 'https://www.youtube.com/playlist?list=PLrEnWoR732-DZV1Jc8bUpVTF_HTPbywpE'}],
'maxVideosPerPlaylist': 25,
})
print(run['defaultDatasetId'])

API usage with cURL

curl -X POST 'https://api.apify.com/v2/acts/fetch_cat~youtube-playlist-videos-scraper/runs?token=MY_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"playlistUrls":[{"url":"https://www.youtube.com/playlist?list=PLrEnWoR732-DZV1Jc8bUpVTF_HTPbywpE"}],"maxVideosPerPlaylist":25}'

MCP and AI agents

Use the Apify MCP server to run this actor from Claude Desktop, Claude Code, or another MCP-compatible client.

Server URL pattern:

https://mcp.apify.com/?tools=fetch_cat/youtube-playlist-videos-scraper

Claude Code setup:

$claude mcp add apify-youtube-playlists https://mcp.apify.com/?tools=fetch_cat/youtube-playlist-videos-scraper

Claude Desktop JSON configuration:

{
"mcpServers": {
"apify-youtube-playlists": {
"url": "https://mcp.apify.com/?tools=fetch_cat/youtube-playlist-videos-scraper"
}
}
}

Example prompts:

  • "Extract the first 25 videos from this YouTube playlist and summarize the channels."
  • "Run the YouTube Playlist Videos Scraper every Monday and compare new video IDs."
  • "Export this playlist inventory to a CSV-friendly table."

Limitations

Only public or unlisted playlist data that YouTube exposes without login can be extracted.

Private, deleted, members-only, age-restricted, or region-blocked videos may not appear.

The actor paginates public playlists up to your selected 500-video cap. Run it again with another batch if you need more than 500 entries from one playlist.

In a batch, unavailable or malformed playlist entries are recorded as partial failures in RUN_SUMMARY; videos from the other valid playlists remain available in the dataset.

Fields depend on what YouTube exposes publicly for each playlist row.

Some metadata, such as exact publish dates or views, may be absent on some playlist pages.

Troubleshooting

If a run returns no items, confirm that the playlist URL contains a list= parameter.

If the playlist opens only after login, the actor cannot access it as public data.

If a playlist is very large, reduce the limit for a first test run.

If YouTube temporarily blocks your run environment, try enabling Apify Proxy.

This actor extracts publicly available YouTube playlist information.

You are responsible for using the output in compliance with applicable laws, YouTube terms, and privacy rules.

Do not use scraped data for spam, harassment, impersonation, or other abusive workflows.

Other useful actors from the same catalog:

Use related scrapers when you need data outside playlist video inventories.

FAQ

Can it scrape private playlists?

No. The actor is designed for public playlist pages only.

Can I use playlist IDs instead of URLs?

Yes. Paste the playlist ID in the input list.

Does it download videos?

No. It extracts metadata and URLs only.

Can it monitor changes over time?

Yes. Schedule repeated runs and compare video IDs or positions between datasets.

Why are some fields empty?

YouTube does not show every metadata field for every playlist row. Empty fields mean the public page did not expose that value.

Changelog

Initial version extracts public playlist video rows with playlist and video metadata.

Support

If you need help, open an issue on the Apify actor page and include your run ID, playlist URL, and expected output.

Data export formats

After a run, open the dataset tab.

Choose JSON for APIs.

Choose CSV or Excel for spreadsheets.

Choose HTML for quick review.

Choose RSS if another tool needs feed-style ingestion.

Quality checklist

The default input is intentionally small.

The output is flat and spreadsheet-friendly.

The dataset contains stable IDs for deduplication.

The actor is suitable for one-off exports and recurring playlist audits.

Privacy and data handling

This Actor only requests the permissions needed to run the input you provide. It uses your input (such as URLs, search terms, identifiers, filters, and limits) only to fetch the requested public data from the relevant source site or API for this Actor, then writes results to your Apify dataset/key-value store.

Data may pass through Apify platform services and Apify Proxy during the run, and requests are sent only to the target site or public data provider required for this Actor's results. FetchCat does not send your inputs or outputs to advertising networks, data brokers, or model-training services, and does not retain run data outside Apify storage after the run except when you explicitly share run details for transient support debugging.

You are responsible for using this Actor lawfully, respecting the target site's terms, and avoiding unnecessary personal or sensitive data in inputs. Review the output before storing, sharing, or combining it with other data.