Skip to main content

Automate VIRAL Youtube titles & thumbnails creation (FLUX.1 + Apify)

Workflow preview

Workflow preview
100%
Automate VIRAL Youtube titles & thumbnails creation (FLUX.1 + Apify) preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

For Who? Content Creators Youtube Automation Marketing Team How it works? 1 Enter your content idea in the Edit Fields node in a "raw" format. Ex : Boil Eggs Perfectly 2 LLM create 3 keywords reque...

Best for

  • Content Creation automation workflows
  • Multimodal AI automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.manualtrigger, n8n-nodes-base.wait, @n8n/n8n-nodes-langchain.outputparserstructured, @n8n/n8n-nodes-langchain.chainllm, n8n-nodes-base.httprequest, @n8n/n8n-nodes-langchain.lmchatmistralcloud, n8n-nodes-base.if, n8n-nodes-base.code

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Nasser.

Original n8n.io source

1.1 Workflow description

Title
Automate VIRAL Youtube titles & thumbnails creation (FLUX.1 + Apify)
Workflow name
Automate VIRAL Youtube titles & thumbnails creation (FLUX.1 + Apify)

For Who?

  • Content Creators
  • Youtube Automation
  • Marketing Team

How it works?

1 - Enter your content idea in the Edit Fields node in a "raw" format. Ex : Boil Eggs Perfectly 2 - LLM create 3 keywords request based on the idea and Apify scrape the YTB Search 3 - Wait until the dataset is completed in Apify 4 - Retrieve Dataset from Apify, calculate approximation of CTR and filter top performing videos 5 - LLM analyze patterns of best performing titles and create a prompt based on it. Another LLM create 5 titles based on these criteria 6 - LLM analyze patterns of best performing thumbnails and create a prompt based on it. Another LLM create 1 thumbnail based on these criteria 7 - Return titles and thumbnail in a HTML Page

📺 YouTube Video Tutorial:


SETUP

Setup Input Content Idea : Enter Keyword Related to the niche you want. Trigger can be replaced with anything as long as you retrieve a content idea. For example : Form submission, Database entry, etc ...

If you want to change the number of keywords, update the data accordingly in the "Create Keywords" LLM Chain node ➡️ Structured Output Parser AND in the "YTB Search Scrape" HTTP Request Node in Body ➡️ JSON ➡️ searchQueries. If you want to change the number of scraped videos for each keyword, update the data accordingly in the "Create Videos Dataset" HTTP Request Node in Body ➡️ JSON ➡️ maxResults. If you want to adjust the CTR Calculation feel free to update it in the Code Node ➡️ Follow the Comments (after "//") to find what you're looking for. If you want to adjust the level of virality of the videos kept for analaysis go to Filter Node ➡️ Value.

Setup Output HTML Page : You can also replace this part with any type of storage. For example : Airtable Database, Google Drive/Google Sheet, Send to an email, etc ...

APIs : For the following third-party integrations, replace ==[YOUR_API_TOKEN]== with your API Token or connect your account via Client ID / Secret to your n8n instance :


👨‍💻 More Workflows : https://n8n.io/creators/nasser/

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - When clicking ‘Test workflow’

Type / Role
n8n-nodes-base.manualTrigger - manualTrigger
Config choices
Version 1

Block 2 - Wait

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 3 - Wait1

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 4 - Structured Output Parser

Type / Role
@n8n/n8n-nodes-langchain.outputParserStructured - outputParserStructured
Config choices
Version 1.2

Block 5 - Create Keywords

Type / Role
@n8n/n8n-nodes-langchain.chainLlm - chainLlm
Config choices
Version 1.5

Block 6 - YTB Search Scrape

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 7 - Get DataSet

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 8 - Mistral Cloud Chat Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatMistralCloud - lmChatMistralCloud
Config choices
Version 1

Block 9 - If

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 10 - Check IF Finished

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 11 - Wait2

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 12 - Mistral Cloud Chat Model1

Type / Role
@n8n/n8n-nodes-langchain.lmChatMistralCloud - lmChatMistralCloud
Config choices
Version 1

Block 13 - Calculate CTR

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 14 - Merge Data

Type / Role
n8n-nodes-base.merge - merge
Config choices
Version 3

Block 15 - Create Titles

Type / Role
@n8n/n8n-nodes-langchain.chainLlm - chainLlm
Config choices
Version 1.5

Block 16 - Mistral Cloud Chat Model2

Type / Role
@n8n/n8n-nodes-langchain.lmChatMistralCloud - lmChatMistralCloud
Config choices
Version 1

Block 17 - Structured Output Parser1

Type / Role
@n8n/n8n-nodes-langchain.outputParserStructured - outputParserStructured
Config choices
Version 1.2

Block 18 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 19 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 20 - Content Idea

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Block 21 - Create List of Titles

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 22 - HTML

Type / Role
n8n-nodes-base.html - html
Config choices
Version 1.2

Block 23 - Loop Over Items

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

Block 24 - Analyze Image

Type / Role
@n8n/n8n-nodes-langchain.openAi - openAi
Config choices
Version 1.8

Showing the first 24 of 41 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Automate VIRAL Youtube titles & thumbnails creation (FLUX.1 + Apify)
Complexity advanced
Nodes 41
Categories Content Creation, Multimodal AI
Author Nasser
Published 30 May 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/4504/4504.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Automate VIRAL Youtube titles & thumbnails creation (FLUX.1 + Apify) do?

For Who? Content Creators Youtube Automation Marketing Team How it works? 1 Enter your content idea in the Edit Fields node in a "raw" format. Ex : Boil Eggs Perfectly 2 LLM create 3 keywords reque...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Content Creation, Multimodal AI use case.