YouTube Channel Videos Scraper avatar

YouTube Channel Videos Scraper

Pricing

from $0.06 / 1,000 video results

Go to Apify Store
YouTube Channel Videos Scraper

YouTube Channel Videos Scraper

Extract recent public YouTube channel videos by URL, handle, or channel ID. Export titles, descriptions, thumbnails, dates, Shorts flags, and views.

Pricing

from $0.06 / 1,000 video results

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 hours ago

Last modified

Share

Extract recent public videos from YouTube channels by channel URL, handle, or channel ID.

Use this actor when you need a clean dataset of latest videos from one or many public channels. It returns channel identity, video URLs, titles, descriptions, thumbnails, publication dates, Shorts detection, and view counts when available.

Choose the right YouTube actor

NeedUse
Viewer feedback and repliesYouTube Comments Scraper
Recent uploads from a channelYouTube Channel Videos Scraper
Caption text for summaries, RAG, or researchYouTube Transcript Scraper

What does YouTube Channel Videos Scraper do?

YouTube Channel Videos Scraper collects recent public video metadata from YouTube channels.

It helps you turn public channel activity into a structured dataset you can export, analyze, or feed into automation.

You can enter:

  • ๐Ÿ“บ Full channel URLs such as https://www.youtube.com/@GoogleDevelopers
  • ๐Ÿง‘โ€๐Ÿ’ป YouTube handles such as @Apify
  • ๐Ÿ†” Channel IDs such as UC_x5XG1OV2P6uZZ5FSM9Ttw

The actor saves one dataset item for each video found.

Who is it for?

This scraper is useful for teams that monitor YouTube channels regularly.

  • ๐Ÿ“ˆ Marketers tracking competitor publishing schedules
  • ๐Ÿ“ฐ Media teams following public creator and brand channels
  • ๐Ÿงช Researchers building datasets from public video metadata
  • ๐Ÿค– Automation teams enriching workflows with new YouTube uploads
  • ๐Ÿง‘โ€๐Ÿ’ผ Sales and partnerships teams watching partner channel activity

Why use this YouTube channel video scraper?

YouTube's official API has quotas and setup requirements.

This actor is designed for quick, repeatable exports from public channels.

You can start with a small list of channels, download the results, and schedule the actor when you need fresh monitoring.

What YouTube video data can I extract?

The dataset contains practical fields for analysis and automation.

FieldDescription
channelIdYouTube channel ID
channelNamePublic channel name
channelUrlChannel URL
videoIdYouTube video ID
videoUrlDirect video or Short URL
titleVideo title
descriptionPublic video description
publishedAtPublication timestamp
thumbnailUrlVideo thumbnail URL
durationDuration when available
isShortWhether the item is a YouTube Short
viewCountView count when available
sourceUrlInput channel source used for the result
scrapedAtTimestamp when the item was collected

How much does it cost to scrape YouTube channel videos?

The actor uses pay-per-result pricing.

You pay a small start fee plus a small amount for each video result saved.

Formula-based validation measured a very low cost per result, so the live price uses the platform-safe minimum floor of about $0.10 per 1,000 video results at the default BRONZE tier, plus a small run-start fee.

The live price uses volume tiers so larger runs become cheaper per result.

Always check the Pricing tab on the actor page for the exact current price.

How to scrape YouTube channel videos

  1. Open the actor on Apify.
  2. Add one or more public YouTube channel URLs, handles, or IDs.
  3. Choose the maximum number of videos per channel.
  4. Decide whether to include Shorts.
  5. Click Start.
  6. Download the dataset as JSON, CSV, Excel, XML, or HTML.

Input example

{
"channelUrlsOrIds": [
"https://www.youtube.com/@GoogleDevelopers",
"UC_x5XG1OV2P6uZZ5FSM9Ttw"
],
"maxVideosPerChannel": 10,
"includeShorts": true
}

Input fields

channelUrlsOrIds

Required.

Add public YouTube channels as URLs, handles, or channel IDs.

Examples:

  • https://www.youtube.com/@GoogleDevelopers
  • @Apify
  • UC_x5XG1OV2P6uZZ5FSM9Ttw

maxVideosPerChannel

Optional.

Controls how many recent videos to save per channel.

Use a small number for tests and a larger number for scheduled monitoring.

includeShorts

Optional.

Set to false if you only want regular video URLs and want to skip Shorts.

Output example

{
"channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
"channelName": "Google for Developers",
"channelUrl": "https://www.youtube.com/channel/UC_x5XG1OV2P6uZZ5FSM9Ttw",
"videoId": "eaUd3iYkj_w",
"videoUrl": "https://www.youtube.com/shorts/eaUd3iYkj_w",
"title": "In production, which file actually gets loaded?",
"description": "A package import can look simple on the surface.",
"publishedAt": "2026-06-15T13:00:09+00:00",
"thumbnailUrl": "https://i2.ytimg.com/vi/eaUd3iYkj_w/hqdefault.jpg",
"duration": null,
"isShort": true,
"viewCount": 1315,
"sourceUrl": "https://www.youtube.com/@GoogleDevelopers",
"scrapedAt": "2026-06-15T20:00:00.000Z"
}

Tips for better results

  • โœ… Start with 1-2 channels when testing.
  • โœ… Use channel IDs for the most stable input.
  • โœ… Use handles for convenience when you do not know the channel ID.
  • โœ… Keep maxVideosPerChannel modest for fast monitoring runs.
  • โœ… Disable Shorts if your analysis only covers standard videos.

Common use cases

Competitor monitoring

Track how often competing brands publish new videos.

Compare titles, descriptions, publication dates, and view counts.

Creator discovery

Build a list of recent uploads from public creator channels.

Use the output in downstream enrichment or scoring workflows.

Content operations

Monitor your own brand channels and partner channels.

Send new uploads to Slack, Google Sheets, Airtable, or a database.

Research datasets

Collect public metadata for trend analysis.

Use publication dates and titles to study activity over time.

Integrations

Apify datasets can connect to many tools.

Useful workflow patterns include:

  • ๐Ÿ“Š Export to Google Sheets for editorial planning
  • ๐Ÿงฑ Send results to Airtable for content operations
  • ๐Ÿ”” Trigger a webhook when a scheduled run finishes
  • ๐Ÿง  Feed recent titles and descriptions into an LLM workflow
  • ๐Ÿ—„๏ธ Store results in BigQuery, Snowflake, or PostgreSQL

API usage

You can run this actor from the Apify API.

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/youtube-channel-videos-scraper').call({
channelUrlsOrIds: ['https://www.youtube.com/@GoogleDevelopers'],
maxVideosPerChannel: 10,
includeShorts: true,
});
console.log(run.defaultDatasetId);

Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('fetch_cat/youtube-channel-videos-scraper').call(run_input={
'channelUrlsOrIds': ['https://www.youtube.com/@GoogleDevelopers'],
'maxVideosPerChannel': 10,
'includeShorts': True,
})
print(run['defaultDatasetId'])

cURL

curl "https://api.apify.com/v2/acts/fetch_cat~youtube-channel-videos-scraper/runs?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"channelUrlsOrIds":["https://www.youtube.com/@GoogleDevelopers"],"maxVideosPerChannel":10,"includeShorts":true}'

MCP integration

Use this actor through Apify MCP in Claude Code, Claude Desktop, or other MCP clients.

MCP URL:

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

Claude Code setup:

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

Claude Desktop JSON config:

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

Example prompts:

  • "Run the YouTube Channel Videos Scraper for @GoogleDevelopers and summarize the newest video titles."
  • "Check these three YouTube channels and tell me which published most recently."
  • "Export recent video metadata for this channel list and flag Shorts separately."

Scheduling

You can schedule the actor to run daily, weekly, or monthly.

Scheduled runs are useful for competitor monitoring and content calendars.

Use a fixed channel list and a low maxVideosPerChannel value for fast recurring checks.

Limitations

The actor focuses on recent public videos from public channels.

It does not log in to YouTube.

It does not extract private, members-only, age-restricted, deleted, or unavailable videos.

Some fields depend on what YouTube exposes publicly for a given video.

Troubleshooting

Why did my run return fewer videos than requested?

A channel may have fewer recent public videos available, or your settings may skip Shorts.

Try enabling includeShorts or checking that the channel has recent public uploads.

Why did a handle fail to resolve?

Handles can change and some channel URLs redirect.

Try using the channel's UC... ID or /channel/UC... URL for the most stable input.

Why is duration empty?

Duration is returned only when it is available in the public metadata used for the result.

The field is kept in the schema so downstream exports remain stable.

Data freshness

Each run collects the current public recent-video metadata available at run time.

The scrapedAt field records when the item was collected.

Schedule repeated runs if you need history over time.

Legality and responsible use

This actor extracts public metadata from public YouTube pages and feeds.

You should only use the data in a way that complies with applicable laws, YouTube's terms, and privacy rules.

Do not use scraped data for spam, harassment, or unauthorized profiling.

Explore related actors by fetch_cat:

FAQ

Can I scrape multiple channels in one run?

Yes.

Add multiple values to channelUrlsOrIds.

The actor saves up to maxVideosPerChannel videos for each channel.

Can I use channel IDs instead of URLs?

Yes.

Channel IDs are supported and are the most stable input format.

Does this actor download videos?

No.

It extracts metadata and URLs, not video files.

Does it include Shorts?

Yes, by default.

Set includeShorts to false to skip Shorts when they appear.

Can I run it from code?

Yes.

Use the Apify API, Apify SDK, webhooks, schedules, or MCP.

Support

If a public channel input fails, try a channel ID first.

If the issue continues, open an issue on the actor page with your input and run ID.