YouTube channel video catalog scraper in n8n

Get a YouTube channel's profile details (subscribers, description, links, verification) together with its video, Shorts, playlist or live-stream catalog, for one channel or many at once.

What this workflow does

Import it and n8n runs the YouTube Channel Video Catalog & Profile Scraper Actor on Apify every day at 08:00 with the starter input below. Each row comes back with title, video id, views, duration and 45 more; repeats with the same url are dropped. A Google Sheets append is included and stays off until you add your sheet. The only credential it needs is your Apify API token.

Read from the workflow file, built for YouTube Channel Video Catalog & Profile Scraper version 1.0.2. Updated 2026-11-14.

How the rows travel

6 nodes, in the order n8n runs them. The yellow stop is the call to the Apify Actor; the dashed stop is optional.

  1. Daily trigger Schedule trigger
  2. Configure input Code
  3. Run Apify Actor HTTP Request
  4. Normalize + dedupe Code
  5. Rows ready No operation
  6. Google Sheets (optional) Google Sheets, off until you switch it on

From the Short

This workflow is the one the video points to: the number in each video opens this page.

Input

The Configure input node holds the starter input. Change it there; every setting the Actor accepts is listed below.

{
  "channelUrls": [
    "https://www.youtube.com/@Apify"
  ],
  "maxVideos": 25
}
Input settings of YouTube Channel Video Catalog & Profile Scraper
SettingTypeRequiredDefaultWhat it does
channelUrls array Yes – YouTube channel URLs, handles (@username), or channel IDs (UCxxx). Accepts any format.
maxVideos integer No 50 Maximum number of videos to scrape per channel. Set to 0 to get only channel info without videos.
sortVideosBy string No newest How to sort the channel's video listings. If YouTube does not offer the chosen sort for a channel, newest-first is used. One of: newest, popular, oldest.
sortShortsBy string No newest How to sort the channel's Shorts listing (when includeShorts is enabled). Falls back to newest-first when the channel offers no Shorts sort. One of: newest, popular, oldest.
includeAbout boolean No true Extract total views, join date, location, country, and external links from the channel About page.
includeShorts boolean No false Scrape the channel Shorts tab and include Shorts in the output.
maxShorts integer No 20 Maximum number of Shorts to return (when includeShorts is enabled).
includeLiveVideos boolean No false Scrape the channel Live/Streams tab and include live, upcoming, and past streams.
maxLiveVideos integer No 20 Maximum live/stream videos to return (when includeLiveVideos is enabled).
includePlaylists boolean No false Scrape the channel Playlists tab and include playlist metadata in the output.
maxPlaylists integer No 20 Maximum number of playlists to scrape (when includePlaylists is enabled).
includePodcasts boolean No false Scrape the channel Podcasts tab and include podcast shows (when the channel has one).
maxPodcasts integer No 50 Maximum number of podcast shows to return (when includePodcasts is enabled).
includeCourses boolean No false Scrape the channel Courses tab and include course playlists (when the channel has one).
maxCourses integer No 50 Maximum number of courses to return (when includeCourses is enabled).
includeReleases boolean No false Scrape the channel Releases tab and include release playlists (when the channel has one).
maxReleases integer No 50 Maximum number of releases to return (when includeReleases is enabled).
includeMembersOnly boolean No false Also list members-only videos (titles and public metadata) when YouTube offers the Members-only filter for this channel.
includeExactMetrics boolean No true Also fetch each video's exact view and like counts, duration, publish date, category, and description. Turn off for faster, cheaper runs with listing-page values only.
market string No US Country used for regional content availability and localized results (YouTube gl parameter). 31 choices.
language string No en Language for YouTube's interface text (relative dates like "2 days ago"). Titles and descriptions stay in the creator's own language. 17 choices.

What each row holds

Every field the Actor returns stays in the row (49 in its dataset schema). Normalize + dedupe trims text, drops empty fields, removes repeats with the same url and adds _source and _scrapedAt. The main fields:

Main output fields of YouTube Channel Video Catalog & Profile Scraper
FieldWhat it is
titleTitle
videoIdVideo ID
viewCountViews
durationDuration
publishedTimeTextPublished
urlURL
authorMetadata.channelNameChannel
authorMetadata.subscriberCountSubscribers

What the first run costs

Each run starts at $0.40 on the Free plan (4 GB of memory), then $0.99 per 1,000 results, plus platform usage.

The Actor lists $0.99 per 1,000 results; its catalogue page breaks the price down by Apify plan. The Apify Free plan includes $5 of usage a month.

The Actor behind it

YouTube Channel Video Catalog & Profile Scraper: Get a YouTube channel's profile details (subscribers, description, links, verification) together with its video, Shorts, playlist or live-stream catalog, for one channel or many at once.

The same job from an AI agent

The matching agent skill gives Claude Code, Codex, Cursor and other agents the same Actor, input and fields. Install it in one line:

npx skills add https://scraperfinder.com --skill youtube-channel-video-catalog-and-profile-scraper

The youTube channel video catalog scraper skill, with manual install and run steps

Questions people ask

How do I import this workflow into n8n?

Copy https://scraperfinder.com/n8n/youtube-channel-video-catalog-and-profile-scraper.json. In n8n, open a new workflow, click the three-dot menu, choose Import from URL and paste it. Or download the JSON file and use Import from File; both give the same 6 nodes.

Do I need an Apify account?

Yes. The workflow calls the YouTube Channel Video Catalog & Profile Scraper Actor through the Apify API with your own token, and each run is billed to your Apify account. The Free plan includes $5 of usage a month.

What does a run cost?

Each run starts at $0.40 on the Free plan (4 GB of memory), then $0.99 per 1,000 results, plus platform usage. The Actor's Store page shows the current price.

Can I change what it collects?

Yes: edit the input object in the Configure input node. The Actor takes 21 settings; the table on this page lists each one with its default. Raise maxVideos once the first rows look right.

Does it work without Google Sheets?

Yes. The rows wait in the Rows ready node, so you can connect any other node there: a database, Airtable, a webhook or an email. The Google Sheets node is only one option.

Workflow updated 2026-11-14