Identify competitor YouTube outlier videos with Bright Data, OpenAI, Sheets and Slack
Ready for 3.0What this workflow does
This AI workflow has 24 nodes and runs on a schedule (every day at 07:00). Along the way it connects Google Sheets, OpenAI Chat Model and Slack.
How it runs
Trigger: On a schedule (every day at 07:00).
- Set Channel Config (Edit Fields (Set)): sets 10 fields: competitor_channels, country, videos_per_channel…
- Build Channel Input (Code): runs custom JavaScript code
- Scrape Channels With Bright Data (HTTP Request): calls an HTTP API (POST)
- Check Scrape Accepted (Code): runs custom JavaScript code
- Wait: waits 20 seconds
- Check Snapshot Progress (HTTP Request): calls an HTTP API (GET)
- Evaluate Scrape Progress (Code): runs custom JavaScript code
- Videos Ready? (If): checks a condition and branches into true / false
- Download Channel Videos (HTTP Request): calls an HTTP API (GET)
- Score Video Outliers (Code): runs custom JavaScript code
…plus 10 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (13)
- Schedule Trigger
n8n-nodes-base.scheduleTrigger - Edit Fields (Set)
n8n-nodes-base.set - Code
n8n-nodes-base.code - HTTP Request
n8n-nodes-base.httpRequest - Wait
n8n-nodes-base.wait - If
n8n-nodes-base.if - Google Sheets
n8n-nodes-base.googleSheets - No Operation, do nothing
n8n-nodes-base.noOp - Information Extractor
@n8n/n8n-nodes-langchain.informationExtractor - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi - Basic LLM Chain
@n8n/n8n-nodes-langchain.chainLlm - Split Out
n8n-nodes-base.splitOut - Slack
n8n-nodes-base.slack
From the author
Quick overview This workflow runs weekly to scrape competitor YouTube channels via Bright Data, identify videos that outperform each channel’s own baseline, analyze each outlier’s hook and structure with OpenAI (GPT-5.6), log results to Google Sheets, and…