Automated YouTube Subscription Email Notifications - n8n Workflow

Use this powerful n8n workflow to monitor your YouTube subscriptions hourly via an n8n trigger and RSS feeds, filtering for new, full-length videos and sending rich HTML email notifications directly to you. Start building with n8n templates today.

Workflow Preview

Ready to automate?

Download this n8n workflow template and start using it instantly.

Who is this best for?


  • Users seeking a cost-effective alternative to constantly polling the YouTube Data API.

  • Content consumers who want timely, customized notifications for new videos from their favorite channels.

  • Automation experts looking for a sophisticated example of time-based filtering in an n8n workflow.

  • Teams needing reliable social media monitoring integrated into their existing communication stack.

Overview

Keeping up with dozens of YouTube subscriptions without getting overwhelmed can be difficult, especially if you rely on the native platform notifications or costly API calls. This sophisticated n8n workflow solves this problem by creating a highly efficient, quota-saving automation loop.

Unlike traditional methods that might exhaust daily YouTube API quotas quickly, this n8n automation leverages the lightweight RSS feeds provided by YouTube for recent videos. The Schedule Trigger initiates an hourly check, retrieves your full subscription list via the YouTube API (a low-quota operation), and then uses the Channel ID to pull the 15 latest videos via a dedicated rssFeedRead n8n node. Critical filtering steps then ensure only genuinely new, non-short videos are processed before a final, small API call fetches high-resolution thumbnails needed for the rich HTML notification email. This clever use of different n8n node types provides a scalable, affordable solution for comprehensive subscription monitoring.

How it Works

The process is initiated by the Schedule Trigger n8n node, set to run every hour.


  1. Retrieve Subscriptions: The Get my subscriptions n8n node uses a paginated HTTP Request against the YouTube Data API to retrieve the full list of channels the user is subscribed to.

  2. Error Handling: An If n8n node checks for API errors. If an error is detected, the workflow stops and throws the error via the Stop and Error node.

  3. Prepare Data: The data is split into individual channel items using the Split Out n8n node.

  4. Pre-Filtering: The Only keep channels with unwatched videos node filters out channels where YouTube reports no new items, reducing the subsequent workload.

  5. Manual Channel Exclusion (Optional): The Filter out channels n8n node allows users to specify channel IDs to ignore, preventing notifications for specific creators.

  6. RSS Retrieval: The Get latest 15 videos of each channel rssFeedRead n8n node dynamically fetches the RSS feed for each remaining channel, obtaining metadata without expensive API quota consumption.

  7. Historical Filtering: The Keep only videos published since last run n8n node is a key piece of core logic. It dynamically calculates the timestamp of the last successful run using data from the Schedule Trigger and filters the RSS results, ensuring only videos published since the previous hourly check proceed.

  8. Metadata Enrichment: The Get video details YouTube n8n node is called for the few remaining new videos to retrieve crucial data like video duration and high-resolution thumbnail URLs.

  9. Shorts Exclusion: The Filter out shorts If n8n node checks the video duration. If the duration is less than 61 seconds, the item is dropped, ensuring only long-form content triggers an alert.

  10. Notification: Finally, the Send an email for each new video emailSend n8n node formats a rich HTML email, featuring the clickable thumbnail and title, and sends the notification via SMTP.

Installation Guide

To deploy this comprehensive n8n workflow, follow these steps:


  1. Import: Copy the provided JSON data and import it into your n8n instance using the 'New' → 'Import from JSON' option.

  2. Credentials Setup:

- YouTube OAuth2 API: You must set up YouTube credentials for the Get my subscriptions and Get video details n8n nodes. This requires access to the YouTube Data API V
3.
- SMTP: Configure your SMTP credentials for the Send an email for each new video n8n node. This will handle sending the notifications.

  1. Configuration:

- In the Send an email for each new video node, update the 'To' and 'From' email addresses to your desired settings.
- (Optional) To exclude specific channels, update the list of Channel IDs in the Filter out channels n8n node. The workflow is designed to be highly maintainable, minimizing required changes beyond credentials.

  1. Activation: Ensure the n8n workflow is active. The Schedule Trigger will begin checking hourly according to its configuration.

Node Details

Schedule Trigger (n8n trigger):
Function: Initiates the n8n workflow on a predefined schedule.
Key Configuration: Runs every 1 hour (at minute 47).
HTTP Request (Get my subscriptions):
Function: Fetches the paginated list of all channels the authenticated user is subscribed to via the YouTube API.
Key Configuration: Uses YouTube OAuth2 credentials, enables pagination, mine=true, maxResults=50.
Split Out (Split out subscriptions to process individually):
Function: Takes the array of subscription items and processes each channel separately.
Filter (Only keep channels with unwatched videos):
Function: Filters the list, keeping only channels where the newItemCount is greater than 0.
Filter (Filter out channels):
Function: An optional filter allowing the user to exclude specified channel IDs using an array 'not contains' check.
RSS Feed Read (n8n node):
Function: Retrieves the 15 most recent videos for the channel using the low-cost YouTube RSS feed endpoint.
Key Configuration: Dynamically sets the URL using the channel ID: =https://www.youtube.com/feeds/videos.xml?channel_id={{ $json.snippet.resourceId.channelId }}.
Filter (Keep only videos published since last run):
Function: Ensures idempotent runs by checking if the video publication date (pubDate) is 'after' the calculated time of the last workflow execution. This powerful n8n node prevents duplicate notifications.
YouTube (Get video details):
Function: Calls the YouTube API specifically for the video details needed (thumbnail URL, duration).
Key Configuration: Resource is 'video', operation is 'get', uses videoId based on RSS output.
If (Filter out shorts):
Function: Checks the duration detail retrieved from the YouTube n8n node. Videos shorter than 61 seconds are filtered out.
Email Send (Send an email for each new video):
Function: Compiles and sends a customized HTML email notification via SMTP.
* Key Configuration: Subject uses the channel title, body includes a high-resolution, clickable thumbnail linking to the video.

Related n8n Workflows

Free

Nodes: 10 Nodes
Updated: December 26 2025
View all
Created by
Sweenu
Sweenu

Featured*