Analyze your own YouTube channel with real data from the YouTube Analytics API — actual views, revenue, audience demographics, traffic sources, and retention curves from the channels you've connected via OAuth.
Prerequisites
- Connected AI assistant — Claude or ChatGPT with NexLev MCP connected
- YouTube channel connected via OAuth — Link your channel at dashboard.nexlev.io/analytics
- Lite, Pro, or Premium plan — Free plans do not have access. Upgrade your plan to get started.
How to Start
Make sure your YouTube channel is connected at dashboard.nexlev.io/analytics, then mention your channel name in the prompt — Claude or ChatGPT will handle the rest:
Show me the last 28 days of stats for my channel "your_channel_name"
Give me a full health check of my YouTube channel "your_channel_name"
Tools
list_my_youtube_channels
List all YouTube channels connected to your NexLev account. Call this first — it returns the channel_id values needed by every other tool on this page.
Example prompts:
Show my channels, then run a full analytics report on the first one
Parameters: None. Returns all channels linked to your authenticated account.
What it returns:
| Field | Description |
|---|---|
channelId | The UC… ID to pass to all other tools |
title | Channel display name |
thumbnail | Channel avatar URL |
subscriberCount | Current subscriber count |
totalViewCount | Lifetime total views |
videoCount | Number of public videos |
get_my_channel_overview
Fetch a snapshot of your channel profile — subscriber count, total views, video count, channel keywords, and creation date. Uses the YouTube Data API (not Analytics), so it reflects your current public channel state.
Example prompts:
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID (from list_my_youtube_channels) |
What it returns:
| Field | Description |
|---|---|
title, description | Channel name and about text |
subscriberCount | Current subscriber count |
totalViewCount | Lifetime total views |
videoCount | Number of public uploads |
keywords | Channel topic keywords |
publishedAt | Channel creation date |
country | Channel country (if set) |
get_my_channel_analytics
Retrieve day-by-day performance metrics for your channel — views, watch time, subscribers gained/lost, likes, comments, and shares.
Example prompts:
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
What it returns (daily rows):
| Field | Description |
|---|---|
date | Date (YYYY-MM-DD) |
views | Total views |
estimatedMinutesWatched | Total watch time in minutes |
averageViewDuration | Average view duration in seconds |
subscribersGained | New subscribers |
subscribersLost | Unsubscribes |
likes | Likes received |
comments | Comments received |
shares | Shares |
get_my_revenue_report
Fetch daily revenue data for your channel — total revenue, ad revenue, CPM, and monetized playbacks. Requires a monetized channel; returns a friendly message instead of an error for non-monetized channels.
Example prompts:
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
What it returns (daily rows):
| Field | Description |
|---|---|
date | Date (YYYY-MM-DD) |
estimatedRevenue | Total estimated revenue (USD) |
estimatedAdRevenue | Ad revenue portion (USD) |
cpm | Cost per thousand impressions (USD) |
monetizedPlaybacks | Playbacks that showed an ad |
get_my_top_videos
Rank your videos by views over a date range and enrich results with titles, thumbnails, and lifetime stats.
Example prompts:
Get my top 20 videos from 2025-01-01 to today and show their thumbnails
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
max_results | No | Number of videos to return (1–50, default: 10) |
What it returns (per video):
| Field | Description |
|---|---|
videoId | YouTube video ID |
title | Video title |
thumbnail | Thumbnail URL |
views | Views in the selected date range |
estimatedMinutesWatched | Watch time in the date range |
averageViewDuration | Average view duration in the range |
lifetimeViews | Total lifetime views |
lifetimeLikes | Total lifetime likes |
publishedAt | Video publish date |
get_my_audience_demographics
Break down your audience by age group and gender. Runs two Analytics queries in parallel (age and gender) and returns percentage distributions for each.
Example prompts:
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
What it returns:
| Field | Description |
|---|---|
ageGroups | Array of { ageGroup, viewerPercentage } (e.g., age13-17, age18-24) |
genders | Array of { gender, viewerPercentage } (male, female) |
get_my_traffic_sources
See how viewers find your content — YouTube search, suggested videos, browse features, external sites, direct/unknown, and more.
Example prompts:
How much of my watch time comes from YouTube search vs suggested videos?
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
What it returns (per source):
| Field | Description |
|---|---|
insightTrafficSourceType | Traffic source label (e.g., YT_SEARCH, SUGGESTED, BROWSE) |
views | Views from this source |
estimatedMinutesWatched | Watch time from this source |
get_my_device_report
Understand which devices and operating systems your audience uses. Runs two Analytics queries in parallel (device type and OS) and returns separate breakdowns.
Example prompts:
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
What it returns:
| Field | Description |
|---|---|
deviceTypes | Array of { deviceType, views, estimatedMinutesWatched } |
operatingSystems | Array of { operatingSystem, views, estimatedMinutesWatched } |
get_my_geography_report
Identify your top countries by views, watch time, and new subscribers.
Example prompts:
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
What it returns (per country):
| Field | Description |
|---|---|
country | ISO 3166-1 alpha-2 country code (e.g., US, GB) |
views | Views from this country |
estimatedMinutesWatched | Watch time from this country |
subscribersGained | New subscribers from this country |
get_my_playback_locations
See where your videos are actually being watched — YouTube watch page, embedded players, mobile apps, and more.
Example prompts:
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
What it returns (per location):
| Field | Description |
|---|---|
insightPlaybackLocationType | Location label (e.g., WATCH, EMBEDDED, YT_OTHER) |
views | Views from this location |
estimatedMinutesWatched | Watch time from this location |
get_my_content_sharing
Track where your content gets shared — WhatsApp, Twitter/X, Facebook, email, copy link, and other services.
Example prompts:
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
What it returns (per service):
| Field | Description |
|---|---|
sharingService | Platform label (e.g., WHATS_APP, TWITTER, FACEBOOK, COPY_AND_PASTE) |
shares | Number of share actions |
get_my_subscriber_status
Compare engagement between your subscribers and non-subscribers. Runs two parallel Analytics queries (one for each group) and returns side-by-side metrics.
Example prompts:
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
What it returns:
| Field | Description |
|---|---|
subscribed | { views, estimatedMinutesWatched, averageViewDuration } for subscribers |
unsubscribed | Same metrics for non-subscribers |
get_my_video_analytics
Fetch day-by-day metrics for a single video — views, watch time, likes, comments, and revenue (if your channel is monetized).
Example prompts:
Show analytics for video [video_id] on channel [channel_id] for the last 28 days
Show revenue data for video [video_id] from 2025-01-01 to 2025-01-31
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
video_id | Yes | YouTube video ID (e.g., dQw4w9WgXcQ) |
start_date | No | Start date YYYY-MM-DD (default: 28 days ago) |
end_date | No | End date YYYY-MM-DD (default: today) |
What it returns (daily rows):
| Field | Description |
|---|---|
date | Date (YYYY-MM-DD) |
views | Views on this date |
estimatedMinutesWatched | Watch time in minutes |
averageViewDuration | Average view duration in seconds |
likes | Likes received |
comments | Comments received |
shares | Shares |
estimatedRevenue | Revenue (monetized channels only, USD) |
title | Video title |
thumbnail | Thumbnail URL |
get_my_audience_retention
Get the full audience retention curve for a video — 100 data points showing the percentage of viewers still watching at each 1% interval of the video. Uses lifetime data (no date range).
Example prompts:
Show the audience retention curve for video [video_id] on channel [channel_id]
Get the retention curve for my latest video and identify the biggest drop-off points
Parameters:
| Parameter | Required | Description |
|---|---|---|
channel_id | Yes | Your UC… channel ID |
video_id | Yes | YouTube video ID |
What it returns:
| Field | Description |
|---|---|
retentionData | Array of 100 points: { elapsedVideoTimeRatio, audienceWatchRatio } |
title | Video title |
duration | Video duration in seconds |
thumbnail | Thumbnail URL |
Full Channel Health Check
Paste this into your AI assistant to run a complete analysis:
I want a full health check of my YouTube channel.
- List my connected channels, then pick the first one.
- Get the channel overview.
- Get channel analytics for the last 28 days.
- Get the revenue report (if monetized).
- Get my top 10 videos.
- Get audience demographics.
- Get traffic sources.
- Get device and OS breakdown.
- Get geographic audience data.
- Get playback locations.
- Get content sharing breakdown.
- Get subscriber vs non-subscriber engagement.
Then pick my #1 video and run:
- Detailed video analytics for the last 28 days
- Audience retention curve
Finally, give me a channel health report with overall performance, strongest content, audience insights, retention analysis, and 5 actionable recommendations.
Troubleshooting
ACCESS DENIED on every tool
- Personal Channel Analytics requires an Lite, Pro, or Premium plan. Upgrade your plan to unlock access.
- API key connections are blocked — these tools are OAuth-only. Connect via the AI assistant's connector settings (see Quickstart).
AUTH_REQUIRED error
- Your OAuth session has expired. Re-authenticate by reconnecting in your AI assistant's connector settings or re-authorising at dashboard.nexlev.io/analytics.
Channel ... is not connected to your account
- The
channel_idyou passed is not linked to your NexLev account. Calllist_my_youtube_channelsto see your connected channels and use one of those IDs.
No channels returned by list_my_youtube_channels
- You haven't linked a YouTube channel yet. Go to dashboard.nexlev.io/analytics and connect your channel via OAuth.
Revenue report returns "not monetized" message
- Your channel is not in the YouTube Partner Program. This is expected behaviour — the tool returns a friendly message rather than an error.
Video analytics returns data without revenue
- If your channel is not monetized, revenue metrics are automatically excluded. This is expected.
Empty data arrays for a valid channel
- The channel may have no activity in the requested date range. Try widening the date range or use the default (last 28 days).
Rate Limits
Channel Tools
| Tool | Free | Lite | Pro |
|---|---|---|---|
List my YouTube channelslist_my_youtube_channels | 0 | 100 | 200 |
Channel overviewget_my_channel_overview | 0 | 20 | 50 |
Channel analyticsget_my_channel_analytics | 0 | 20 | 50 |
Revenue reportget_my_revenue_report | 0 | 15 | 40 |
Top videosget_my_top_videos | 0 | 15 | 40 |
Per user · resets every 24 hours
Upgrade to Pro →Audience Tools
| Tool | Free | Lite | Pro |
|---|---|---|---|
Audience demographicsget_my_audience_demographics | 0 | 15 | 40 |
Traffic sourcesget_my_traffic_sources | 0 | 15 | 40 |
Device & OS reportget_my_device_report | 0 | 15 | 40 |
Geography reportget_my_geography_report | 0 | 15 | 40 |
Playback locationsget_my_playback_locations | 0 | 15 | 40 |
Content sharingget_my_content_sharing | 0 | 15 | 40 |
Subscriber statusget_my_subscriber_status | 0 | 15 | 40 |
Per user · resets every 24 hours
Upgrade to Pro →Video Tools
| Tool | Free | Lite | Pro |
|---|---|---|---|
Video analyticsget_my_video_analytics | 0 | 20 | 50 |
Audience retentionget_my_audience_retention | 0 | 15 | 40 |
Per user · resets every 24 hours
Upgrade to Pro →What's Next?
- Channel Analytics — Analyze any public channel's estimated metrics
- Daily Analytics — Day-by-day growth tracking for public channels
- Geography & Revenue — Revenue and geography for public channels
- Top Videos — Discover top-performing content across any niche
- Swipefile — Save your best-performing video insights for future reference