# YouTube Trending & Charts Scraper: Music, Trailers, Podcasts (`s_actors/youtube-trending-scraper`) Actor

Trending on YouTube by country: trending music videos and movie trailers, top songs, music videos, artists, Shorts songs and podcasts from YouTube Charts. Rank changes, weeks on chart, weekly views, history back to 2017, 68 countries + global. No API key.

- **URL**: https://apify.com/s_actors/youtube-trending-scraper.md
- **Developed by:** [Superior Actors](https://apify.com/s_actors) (community)
- **Categories:** Videos, Social media, AI
- **Stats:** 2 total users, 1 monthly users, 80.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.12 / 1,000 chart entries

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### YouTube Trending & Charts Scraper: Music, Trailers, Podcasts

See **what is trending on YouTube today** in 68 countries: **trending music videos** and **trending movie trailers**, plus the **YouTube Charts**: top songs, top music videos, top artists, top songs on Shorts and top podcasts. Every row has the rank, the **rank change**, **weeks on chart** and **views in the week**, and you can pull **chart history back to 2017**.

```json
{ "charts": ["trending-music-videos", "top-songs"], "countries": ["US", "GB", "global"] }
```

No YouTube API key, no quota, no login. Use it as a **YouTube trending API**: one call returns clean JSON.

#### What you get

**One row per chart entry.** Real example, September 2026:

| Chart | Country | # | Change | Title | Artists | Views in week | Weeks on chart |
|---|---|---|---|---|---|---|---|
| Trending music videos | United States | 1 | | Patient Zero | Taylor Swift | | |
| Trending movie trailers | United States | 1 | | You Can See Everything, Official Trailer | A24 | | |
| Top songs (weekly) | United States | 1 | 0 | Choosin' Texas | Ella Langley | 6,472,638 | 47 |
| Top songs (weekly) | Global | 1 | 0 | Dai Dai | Shakira, Burna Boy | 61,242,280 | 19 |
| Top artists (weekly) | United States | 1 | +1 | Drake | | 42,237,960 | 519 |
| Top songs (weekly), 3 Jan 2019 | United States | 1 | +4 | Sunflower | Post Malone, Swae Lee | 11,520,506 | 11 |

| Field | Description |
|---|---|
| `chart`, `chartTitle`, `country`, `countryName`, `period`, `chartDate` | Which chart: type, country, weekly / daily / current, the last day of the chart period |
| `rank`, `previousRank`, `rankChange`, `newEntry` | Position now and in the previous period (+ = moved up) |
| `periodsOnChart` | Weeks (or days) the entry has been on the chart |
| `periodViews`, `viewsChangePercent` | Views in the chart period and the change from the previous period |
| `title`, `artists`, `artistNames`, `label`, `releaseDate`, `songwriters`, `producers` | The song, video or artist (`artistNames` = artists as one text) |
| `videoId`, `url`, `channelName`, `channelId`, `channelUrl`, `durationSeconds`, `thumbnail` | The YouTube video and its channel |
| `artistId` | Top artists: Google Knowledge Graph ID and the artist's channel |
| `playlistId`, `description` | Top podcasts: the podcast playlist, channel and description |
| `totalViews`, `likes`, `commentsCount`, `publishedText` | With **Add video stats**: exact numbers of each video now |
| `lastRunRank` | Monitoring: the entry's rank in your previous run |

#### Charts

| Chart | Entries | Periods | Countries |
|---|---|---|---|
| **Trending music videos** | 30 | current | 68 countries |
| **Trending movie trailers** | 30 | current | 68 countries |
| **Top songs** | 100 | weekly, history since 2017 | 68 countries + global |
| **Top music videos** | 100 | weekly or daily | 68 countries + global |
| **Top artists** | 100 | weekly, history since 2017 | 68 countries + global |
| **Top songs on Shorts** | 50 | weekly or daily | most countries + global |
| **Top podcasts** | 100 | weekly | United States |

Countries: Argentina, Australia, Austria, Belgium, Bolivia, Brazil, Canada, Chile, Colombia, Costa Rica, Czechia, Denmark, Dominican Republic, Ecuador, Egypt, El Salvador, Estonia, Finland, France, Germany, Guatemala, Honduras, Hong Kong, Hungary, Iceland, India, Indonesia, Ireland, Israel, Italy, Japan, Kenya, Luxembourg, Malaysia, Mexico, Netherlands, New Zealand, Nicaragua, Nigeria, Norway, Panama, Paraguay, Peru, Philippines, Poland, Portugal, Romania, Russia, Saudi Arabia, Serbia, Singapore, South Africa, South Korea, Spain, Sweden, Switzerland, Taiwan, Tanzania, Thailand, Turkey, Uganda, Ukraine, United Arab Emirates, United Kingdom, United States, Uruguay, Vietnam, Zimbabwe.

#### How it works

1. Pick the charts and the countries (codes like `US`, names like `Germany`, or `global`)
2. Optional: a **chart date** and **number of periods** for history, **Add video stats** for exact views and likes
3. Run, then download as CSV, Excel or JSON, or call it as an API

| Input | What it does |
|---|---|
| **Charts** | Any of the 7 charts above, several at once |
| **Countries** | One or many; each chart is read for each country |
| **Period** | Weekly or daily (top music videos, Shorts songs) |
| **Chart date** + **Number of periods** | History: `2019-01-03` or `6 months ago`, and 52 periods = a year of weekly charts |
| **Add video stats** | Exact total views, likes and comment count of every video (trending lists show no views) |
| **Only new entries** | Monitoring: later runs return only entries that were not on the chart last time |

#### Why this Actor

| | |
|---|---|
| 🔥 **Trending that still exists** | YouTube removed its Trending page in July 2025. The trending music and trailer lists and the charts are what YouTube still publishes, read here in one table |
| ⏪ **Chart history since 2017** | Any past week of top songs, music videos and artists, or a whole year in one run: rank, weekly views and weeks on chart for each week |
| 📈 **Movement, not just a list** | Previous rank, rank change, new entries, weeks on chart and the change in weekly views |
| 🌍 **68 countries + global** | Compare the same chart across markets in one run |
| 🎧 **Shorts songs and podcasts** | The songs most used in Shorts and the most watched podcasts on YouTube |
| 💰 **$0.006 for a trending list** | $0.001 per run + $0.00015 per entry; a popular trending scraper charges $0.025 per query |

#### Pricing

Pay per result, no subscription needed. Apify Scale and Business plans pay less:

| Event | Free and Starter plans | Scale plan | Business plan |
|---|---|---|---|
| Run start | $0.001 | $0.001 | $0.001 |
| Chart entry (one row) | $0.00015 | $0.000135 | $0.00012 |
| Video stats (with Add video stats) | $0.0005 | $0.00045 | $0.0004 |

| Task | Cost |
|---|---|
| Trending music videos in the US (30) | $0.0055 |
| Top 100 songs in 10 countries | $0.151 |
| A year of weekly US top 100 songs (5,200 rows) | $0.78 |
| Daily trending check with video stats for a month (30 × 30) | $0.62 |

#### Ready-made tasks

| Task | What you get |
|---|---|
| [What's Trending on YouTube Today by Country](https://apify.com/s_actors/youtube-trending-scraper/examples/whats-trending-on-youtube-today) | Trending music videos and movie trailers with views and likes |

#### Monitor the trending lists

1. Choose charts and countries, turn on **Only new entries** (and **Add video stats** if you want views)
2. Save as a task and schedule it daily
3. The first run remembers each chart; later runs return only new entries, the rest show their earlier rank in `lastRunRank`

#### FAQ

**Where did YouTube Trending go?** YouTube retired the Trending page (youtube.com/feed/trending) in July 2025 and replaced it with category charts: trending music videos, trending movie trailers and the podcast chart, next to the music charts at charts.youtube.com. The old general "Trending" list no longer exists anywhere on YouTube, so every scraper reads these charts or YouTube's editorial category pages.

**Why do trending lists have no views?** YouTube shows only the order for them. Turn on **Add video stats** for the exact total views, likes and comments of each video.

**How far back does history go?** Weekly top songs, music videos and artists: September 2017. Daily music videos and Shorts songs: November 2023. Podcasts: March 2025. Trending lists have no history: schedule the Actor to build your own.

**Which week is a chart date?** Weekly music charts end on Thursday. Any date you enter gives the chart whose week includes it.

**What are the views?** For top songs, music videos and artists: views in the chart week (or day) in that country, as YouTube Charts count them. Total views of a video are in `totalViews` with **Add video stats**.

#### Use with the API and AI agents

Run it via the [Apify API](https://docs.apify.com/api/v2) from Python, Node.js or any HTTP client, or connect it to Claude, ChatGPT and other AI agents through the [Apify MCP server](https://mcp.apify.com): "What music videos are trending in Brazil and Mexico today, and which songs entered the US top 100 this week?"

#### Other YouTube tools

| Tool | What it does |
|---|---|
| [YouTube Thumbnail Downloader](https://apify.com/s_actors/youtube-thumbnail-downloader) | Thumbnails of videos, channels and searches in HD, ZIP, thumbnail change history |
| [YouTube Playlist Scraper](https://apify.com/s_actors/youtube-playlist-scraper) | Every video of playlists to CSV, length at any speed, deleted video finder |
| [YouTube Search Scraper](https://apify.com/s_actors/youtube-search-scraper) | Search results with every filter, newest first, without Shorts |
| [YouTube Channel Scraper](https://apify.com/s_actors/youtube-channel-scraper) | Channel stats, growth history, videos, Shorts and streams |
| [YouTube Channel Email Scraper](https://apify.com/s_actors/youtube-channel-email-scraper) | Public emails, websites and socials of channels, influencer lists by niche |
| [YouTube Video Details Scraper](https://apify.com/s_actors/youtube-video-details-scraper) | Full details and exact stats of any videos, views tracker over time |
| [YouTube Shorts Scraper](https://apify.com/s_actors/youtube-shorts-scraper) | Shorts of channels, searches, hashtags and sounds: exact stats, viral score |
| [YouTube Transcript Scraper](https://apify.com/s_actors/youtube-transcript-scraper) | Transcripts and subtitles of videos, channels and playlists: text, SRT, search |
| [YouTube Comments Scraper](https://apify.com/s_actors/youtube-comments-scraper) | Comments and replies of videos, Shorts and channels, only-new monitoring |
| [YouTube SEO & Rank Tracker](https://apify.com/s_actors/youtube-seo-rank-tracker) | Searches a video ranks for, keyword rankings, tags, suggestions |
| [Google Sheets Import & Export](https://apify.com/s_actors/google-sheets-import-export) | Send the results to a Google Sheet |

#### Is it legal?

The Actor reads only public charts that YouTube shows to any visitor at charts.youtube.com and youtube.com, without logging in, and does not download videos. Use it for research, content planning and market analysis.

# Actor input Schema

## `charts` (type: `array`):

YouTube Charts to read. YouTube removed its general Trending page in July 2025; these charts are the trending lists YouTube still publishes. Trending lists have no global version; podcasts exist for the US only.

## `countries` (type: `array`):

One per line: 2-letter country codes (US, GB, IN, BR, JP...), country names (Germany) or global. 68 countries: AR, AU, AT, BE, BO, BR, CA, CL, CO, CR, CZ, DK, DO, EC, EG, SV, EE, FI, FR, DE, GT, HN, HK, HU, IS, IN, ID, IE, IL, IT, JP, KE, LU, MY, MX, NL, NZ, NI, NG, NO, PA, PY, PE, PH, PL, PT, RO, RU, SA, RS, SG, ZA, KR, ES, SE, CH, TW, TZ, TH, TR, UG, UA, AE, GB, US, UY, VN, ZW.

## `period` (type: `string`):

For Top music videos and Top songs on Shorts. Other charts have one period only (weekly, or 'current' for trending lists).

## `maxItemsPerChart` (type: `integer`):

Top N of each chart (charts have 30, 50 or 100 entries).

## `addVideoStats` (type: `boolean`):

For every video: exact total views, likes and comment count now (one extra request per video, charged per video). Useful for trending lists, which show no views.

## `date` (type: `string`):

Empty = the latest chart. A date (2019-01-03) or a relative date (6 months ago) gives the chart that covers it; weekly charts go back to September 2017. Trending lists have no history.

## `periods` (type: `integer`):

How many charts in a row, going back from the chart date (or from the latest): 52 = a year of weekly charts.

## `onlyNew` (type: `boolean`):

For scheduled runs: the first run remembers each chart, later runs return only entries that were not on it last time.

## `monitorName` (type: `string`):

Name of the memory used by Only new entries. Use a different name for each task.

## `maxConcurrency` (type: `integer`):

How many requests to YouTube run at the same time.

## `proxyConfiguration` (type: `object`):

Requests go direct first and switch to Apify datacenter proxies when YouTube refuses them. The default works for most runs.

## Actor input object example

```json
{
  "charts": [
    "trending-music-videos"
  ],
  "countries": [
    "US"
  ],
  "period": "weekly",
  "maxItemsPerChart": 100,
  "addVideoStats": false,
  "periods": 1,
  "onlyNew": false,
  "monitorName": "default",
  "maxConcurrency": 5,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `chart` (type: `string`):

Rank, change, title, artists, views in the period, periods on chart.

## `trending` (type: `string`):

Trending videos with exact views, likes and comments (Add video stats).

## `all` (type: `string`):

Every field of every row.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "charts": [
        "trending-music-videos"
    ],
    "countries": [
        "US"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("s_actors/youtube-trending-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "charts": ["trending-music-videos"],
    "countries": ["US"],
}

# Run the Actor and wait for it to finish
run = client.actor("s_actors/youtube-trending-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "charts": [
    "trending-music-videos"
  ],
  "countries": [
    "US"
  ]
}' |
apify call s_actors/youtube-trending-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,s_actors/youtube-trending-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/oZI0WOcG8GZ0MPoTx/builds/7aGqmJw0UYpn8lvib/openapi.json
