Huashu Design
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…
An n8n workflow that reads up to 100 comments on a YouTube video you paste in n8n’s chat and has OpenAI pick the ones that suggest a video. Each pick is saved in Google Sheets, then an agent searches the web with Tavily and adds a topic for it.
Video ideas from YouTube comments with web research is an n8n workflow in the Marketing & SEO category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.
id | text | likeCount | replyCount | publishedTime | author | contentIdea | topic
Chat message
It starts when you paste a link in n8n’s chat:
A sheet of viewer requests from one video, each with a researched topic
What you need before you start.
Comments
Returns one page of up to 100 top-level comments on the video, newest first.
NeedsYouTube OAuth2 credential
Judge and researcher
Runs gpt-4.1-mini to pick the comments that suggest a video, then to turn each into a topic.
NeedsOpenAI API key
Web search
Searches the web when the research step asks, and returns one result each time.
NeedsTavily API key, typed into the tool’s header
Ideas sheet
Adds or updates a row per idea, matched on the comment’s ID, then fills in its topic.
NeedsGoogle Sheets OAuth2 credential, and your sheet’s ID
Checked by Mindket on 13 Nov 2026
This n8n workflow reads a YouTube video’s comments for ideas you could film next. You paste the video’s link in n8n’s chat. It fetches up to 100 of the newest top-level comments, and OpenAI’s gpt-4.1-mini answers Yes or No for each one. The question is whether a viewer is asking for, or hinting at, a video worth making. Every Yes is written to a Google Sheet, together with the commenter’s name, the comment’s text and its like and reply counts, so you can sort the requests later. A second gpt-4.1-mini step then takes those rows one at a time, searches the web through Tavily and writes a topic into each. YouTube itself is only read.
Creators whose viewers ask for videos in the comments, and the teams that plan content for them. It reads one video per run and leaves a sheet of requests you can sort. Skip it if you want the research write-up as well. The model writes one for each idea, but only the topic reaches the sheet.
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| Tutorial channels | Creators who teach tools | Run it on last month’s most watched video and film the most asked-for topic | A creator sees three viewers asking how to link a tool to a CRM and plans that video. |
| Content teams | Planners with a backlog of ideas | Keep one sheet per channel and sort it by likeCount | A team sorts the sheet so the requests with the most likes come first. |
| Agencies | Strategists for client channels | Run a client’s best videos and send the topics on as a plan | An agency turns a client’s comment sections into a month of topics. |
| Competitor research | Marketing teams | Paste a rival’s video and see what its viewers want next | A brand reads which requests under a rival’s tutorial went unanswered. |
Any n8n that can reach Google, OpenAI and Tavily will run it. The video can be any public one.
Get it saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Its author puts setup at about 18 minutes. Make the sheet first: a tab named Sheet1 with these eight headers in its first row.
id | text | likeCount | replyCount | publishedTime | author | contentIdea | topic
| Need | Detail |
|---|---|
| n8n | On n8n Cloud or on a server of your own |
| Google Cloud | The YouTube Data API v3 turned on, for a YouTube OAuth2 credential |
| OpenAI | An API key, for both model calls |
| Tavily | An API key, typed into the search tool’s header |
| Google Sheets | The sheet above, and a Google Sheets OAuth2 credential |
workflow.json.Get Video Comments.Message a model and Message a model1.Tavily and replace <YOUR_TAVILY_API_KEY> in its Authorization header with your key, keeping Bearer and the space after it.Append or update row in sheet and Update row in sheet. In both, replace YOUR_SHEET_ID with the ID in your sheet’s address.Paste a full YouTube link, a youtube.com/watch?v= address or a short youtu.be one. All the comments are judged first, then the saved rows go through research one at a time, so the topics arrive after the rows. A comment already in the sheet is matched on id and updated, never added twice.
| To change | Where |
|---|---|
| Which comments count as ideas | The system message of Message a model, with its examples |
| How a topic is researched | The system message of Message a model1 |
| How much is searched | max_results (1 in the file) and search_depth in the body of Tavily |
| How many comments | maxResults in Get Video Comments, 100 in the file, the most one page holds |
| Keeping the research | A new column, mapped from research_overview in Update row in sheet |
Under a video about running a small online shop, a viewer writes: “Could you show how to send the day’s orders to a spreadsheet every night?” The first model answers Yes. A row lands with the viewer’s name, the text and contentIdea set to Yes. The research step searches the web and answers in this shape, and only the topic lands in the row:
{
"topic": "<a video topic built from the request>",
"research_overview": "<300 to 500 words from the search, not saved>"
}If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. This one has 12. Tavily is a search service made for AI models, and here the model decides what to search for. Loop Over Items sends the saved rows through research one at a time, so a long list takes a while. Start with a video that has a few dozen comments.
For experts. Both model calls use gpt-4.1-mini through the OpenAI node’s message operation, with JSON output on and simplify off. That is why later nodes read choices[0].message.content.
| Node | Reads | Returns | Tool |
|---|---|---|---|
Message a model | One comment’s text | A JSON answer whose output is Yes or No | None |
Message a model1 | One saved row’s text | topic and research_overview | Tavily, an HTTP tool whose searchTerm the model fills, at advanced depth with one result |
Filter keeps an exact Yes in output. The judge’s prompt asks for a bare word, so if a run saves nothing, open Message a model and check which key it answered with. Append or update row in sheet matches on id, and Update row in sheet matches the same column and writes topic alone.
Commenters’ names land in your sheet, and only the topic of each research run is kept.
research_overview is written and then thrown away, since no column takes itGet Video ID code had lost its backslashes, so its fallback pattern could not compile and the node failed on every run. This one has them backAn n8n workflow. Paste a YouTube link in n8n's chat, and it reads up to 100 comments on the video. OpenAI picks the ones
that suggest a video, each is saved in Google Sheets, and an agent with Tavily search adds a topic to each row.
workflow.json: the workflow as n8n exports it, 12 nodes. It holds no credential.Get Video ID code had lost its backslashes, so its fallback pattern for links itYOUR_SHEET_ID, its tab is picked by the name Sheet1, and the Tavily header reads Bearer <YOUR_TAVILY_API_KEY>.README.md: these notes.Sheet1 and these headers in its first row: id, text, likeCount,replyCount, publishedTime, author, contentIdea, topic.workflow.json.Get Video Comments.Message a model and Message a model1.Tavily, find the Authorization header and replace <YOUR_TAVILY_API_KEY> with your key. Keep Bearer andAppend or update row in sheet and Update row in sheet.YOUR_SHEET_ID with the ID from your sheet's address, the part between /d/ and the next slash.| Column | From |
|---|---|
| id | the comment thread's ID, used to match rows |
| text, author, likeCount, replyCount, publishedTime | the comment |
| contentIdea | the first model's answer, Yes for every saved row |
| topic | the research step's topic, written once the row has been researched |
The research step also writes a research_overview of 300 to 500 words. No column takes it, so it is lost unless you
add one and map it in Update row in sheet.
Message a model and its examples.Message a model1.max_results (1) and search_depth (advanced) in the body of Tavily.maxResults in Get Video Comments (100, the most one page holds).Filter keeps an exact Yes in the field output. The judge's prompt asks for a bare word, so if a run savesMessage a model answered with.README.md 3 KB workflow.json 22 KB
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…
op7418 · Skill
Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…
alirezarezvani · Skill
Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…
nerijs · Kit
A pixel art style add-on for Stable Diffusion XL that turns text prompts into pixel-style images, with an optional LCM LoRA for faster runs. For game makers, d…
LiconStudio · Kit
Keeps characters, clothing, objects and backgrounds consistent in generated video by feeding the model up to five reference images. A LoRA for LTX-2.5 in Comfy…
nhathoangfoto · Kit
A LoRA for FLUX.2 Klein 9B that puts a character into the pose shown by a mannequin reference while keeping the character's face and style. For artists and des…