Skill detail

scraping-youtube-channel-info

Extracts YouTube channel metadata, subscriber counts, video counts, and descriptions using apidojo's YouTube Channel Scraper on Apify.

MatchDirectReviewed for YouTube Videos
Sourceapidojo-io/​apidojo-skillsExternal source
Reported installs335Popularity signal only

Inspect before use

Automated review checks relevance, not safety or endorsement. Read the source instructions before using this skill.

Saved source preview

SKILL.md

The saved excerpt is a snapshot from review. The external source remains the complete and most current version.

---
name: scraping-youtube-channel-info
description: >
  Extracts YouTube channel metadata, subscriber counts, video counts, and descriptions using
  apidojo's YouTube Channel Scraper on Apify. Triggers when the user asks to: get YouTube channel
  information, scrape YouTube channel stats, fetch subscriber count for a YouTube channel, export
  channel metadata in bulk, find YouTube channels by keyword, get channel descriptions and tags,
  check if a YouTube channel is verified, or research YouTube channels by niche. Returns channel
  name, subscriber count, video count, description, verification status, and keywords per channel.
  Ideal for influencer researchers, competitive analysts, and YouTube marketers.
license: Apache-2.0
metadata:
  author: apidojo
  version: "1.0"
  apify-actor: apidojo/youtube-channel-scraper
---

# Scraping Youtube Channel Info

Raw data collection. No assumed use case — returns the full dataset for downstream analysis.

---

## Inputs

| Parameter | Type | Required | Default | Notes |
|-----------|------|----------|---------|-------|
| `startUrls` | array | Optional | `[]` | YouTube channel URLs |
| `youtubeHandles` | array | Optional | `[]` | YouTube handles (e.g. `@kurzgesagt`) |
| `keywords` | array | Optional | `[]` | Search keywords to find channels |
| `gl` | string | Optional | `us` | Country code (e.g. `US`) |
| `hl` | string | Optional | `en` | Language code (e.g. `en`) |
| `sort` | string | Optional | `r` | Sort order |
| `maxItems` | number | Optional | Unlimited | Maximum channels to return |
| `customMapFunction` | string | Optional | — | JavaScript function to transform each output object |

## How to Run

### Using run_actor.js (recommended)

```bash
# Quick answer (table)
node scripts/run_actor.js --actor "apidojo~youtube-channel-scraper" --input '{"keywords": ["cooking channel"], "gl": "us", "maxItems": 20}'

# Save as CSV
node scripts/run_actor.js --actor "apidojo~youtube-channel-scraper" --input '{"keywords": ["cooking channel"], "gl": "us", "maxItems": 20}' --output results.csv --format csv

# Save as JSON
node scripts/run_actor.js --actor "apidojo~youtube-channel-scraper" --input '{"keywords": ["cooking channel"], "gl": "us", "maxItems": 20}' --output results.json --format json
```

### REST API fallback

```bash
curl -X POST "https://api.apify.com/v2/acts/apidojo~youtube-channel-scraper/runs" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"keywords": ["cooking channel"], "gl": "us", "maxItems": 20}'
```

If Apify MCP is available:
Use the Apify MCP `call_actor` tool with actor `apidojo~youtube-channel-scraper` and the input above.

---

## Output Fields

| Field | Type | Description |
|-------|------|-------------|
| `id` | string | YouTube channel ID |
| `name` | string | Channel name |
| `url` | string | Channel URL |
| `description` | string | Channel description |
| `subscriberCount` | number | Subscriber count |
| `videosCount` | number | Total videos published |
| `thumbnails` | array | Channel thumbnails |
| `isVerified` | boolean | Verification badge |
| `isFamilySafe` | boolean | Family-safe flag |
| `keywords` | array | Channel keywords |
| `availableCountries` | array | Countries where available |
| `tags` | array | Channel tags |

## Edge Cases

- **Channel not found**: Check if handle is correct or try with URL instead.
- **subscriberCount as text**: Field returns '1.2M subscribers' not a number — parse downstream if needed.
- **No keywords in metadata**: Some channels don't set keywords — tags array will be empty.
- **Private/terminated channel**: Returns no results for that channel.
Read the full source on GitHub (opens external page)
Context

Related work