This workflow corresponds to n8n.io template #5671 — we link there as the canonical source.
This workflow follows the Form Trigger → Google Docs recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"id": "sz7fVtyNOadW5zNX",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "YouTube Video To Blog",
"tags": [],
"nodes": [
{
"id": "ae3f4f01-90be-4296-b2b9-be1a94f6202c",
"name": "On form submission",
"type": "n8n-nodes-base.formTrigger",
"position": [
-220,
0
],
"parameters": {
"options": {},
"formTitle": "YouTube Video To Blog",
"formFields": {
"values": [
{
"fieldLabel": "Video URL",
"requiredField": true
},
{
"fieldType": "dropdown",
"fieldLabel": "language",
"fieldOptions": {
"values": [
{
"option": "English"
},
{
"option": "Hindi"
},
{
"option": "French"
},
{
"option": "German "
},
{
"option": "Gujarati"
}
]
},
"requiredField": true
}
]
}
},
"typeVersion": 2.2
},
{
"id": "23e8f2aa-2d50-4ff9-9185-d178bbb23e24",
"name": "Google Docs",
"type": "n8n-nodes-base.googleDocs",
"position": [
480,
0
],
"parameters": {
"actionsUi": {
"actionFields": [
{
"text": "={{ $json.data }}",
"action": "insert"
}
]
},
"operation": "update",
"documentURL": "https://docs.google.com/document/d/1ZC52bgdGhpe9clkJrjnTBFq5JfIgqjVNryO1E0FwNG8/edit?tab=t.0",
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"name": "<your credential>"
}
},
"typeVersion": 2
},
{
"id": "db017056-3fc6-4ce0-b77b-b548f3357743",
"name": "Mapper",
"type": "n8n-nodes-base.set",
"position": [
40,
0
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "184eb6b5-dffb-41ce-8076-dc64d2b017fe",
"name": "Video URL",
"type": "string",
"value": "={{ $json[\"Video URL\"] }}"
},
{
"id": "922d2031-5dde-4ddc-a7ad-9902eb16189e",
"name": "language",
"type": "string",
"value": "={{ $json.language }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "7405eb95-c827-45a9-a80c-9dddcffa8869",
"name": "YouTube to Blog",
"type": "n8n-nodes-base.httpRequest",
"position": [
280,
0
],
"parameters": {
"url": "https://youtube-to-blog.p.rapidapi.com/ytblogs/index.php",
"method": "POST",
"options": {},
"sendBody": true,
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "videoUrl",
"value": "={{ $json[\"Video URL\"] }}"
},
{
"name": "language",
"value": "={{ $json.language }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "x-rapidapi-host",
"value": "youtube-to-blog.p.rapidapi.com"
},
{
"name": "x-rapidapi-key",
"value": "your rapid api key"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "202c7fcf-90d0-487b-ad06-a443c302f561",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-980,
-600
],
"parameters": {
"width": 560,
"height": 1700,
"content": "# \ud83d\udcfd\ufe0f YouTube Video to Blog \u2013 n8n Workflow\n\n## \ud83d\udcdd Overview\n\nThis n8n workflow automates the process of converting a YouTube video into a blog post in the selected language and saving it to a Google Docs document. The user inputs a video URL and selects a language via a form. The workflow handles the rest\u2014calling an external API to generate blog content and appending it to a Google Doc.\n\n---\n\n## \ud83d\udca1 Purpose\n\nTo streamline and automate the transformation of YouTube video content into well-structured, language-specific blog articles without manual transcription, editing, or formatting.\n\n---\n\n## \ud83e\udde9 What This Workflow Does\n\n1. Accepts a YouTube video URL and language input from a form.\n2. Sends this data to a blog generation API.\n3. Receives and formats the blog content.\n4. Inserts the result into a Google Docs file for record keeping or publication.\n\n---\n\n## \ud83e\uddf1 Challenges Addressed\n\n| Problem | Solution |\n|--------|----------|\n| Manual effort to convert video content into written blogs | Automates blog generation using AI-based API |\n| Language limitations for repurposing content | Supports multiple language outputs |\n| Time-consuming formatting and editing | Direct insertion into pre-defined Google Docs |\n| Disorganized blog drafts | Centralized storage in a single, accessible document |\n\n---\n\n## \ud83c\udf1f Key Benefits\n\n- \ud83d\udd01 **Automated Workflow**: No manual steps after form submission.\n- \ud83c\udf0d **Multilingual Output**: Supports blog generation in English, Hindi, French, German, and Gujarati.\n- \ud83d\udcc4 **Centralized Documentation**: All blogs saved in one Google Doc.\n- \ud83e\udde0 **AI-Powered**: Uses an external API to generate well-structured content.\n- \ud83d\udcc8 **Productivity Boost**: Speeds up content creation and reduces workload.\n\n---\n\n## \ud83d\ude80 Potential Enhancements\n\n- Auto-publish blogs to CMS platforms (WordPress, Ghost, etc.)\n- Send blog summaries via email or Slack\n- Create a blog archive using Google Sheets\n- Integrate with SEO analysis tools\n\n---\n"
},
"typeVersion": 1
},
{
"id": "53d53037-2508-4825-80e0-9d64e49dae33",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-360,
-600
],
"parameters": {
"width": 1160,
"height": 780,
"content": "## \ud83d\udd04 Workflow Node Overview \u2013 YouTube Video to Blog\n\nThis section provides a quick summary of each node in the workflow.\n\n---\n\n### \ud83e\udde9 1. On form submission (`formTrigger`)\n- Triggers when a user submits the form with a YouTube video URL and a selected language.\n\n---\n\n### \ud83d\udd27 2. Mapper (`set`)\n- Maps the form input fields (`Video URL`, `language`) to variables for use in the next steps.\n\n---\n\n### \ud83c\udf10 3. YouTube to Blog (`httpRequest`)\n- Sends the video URL and language to the external API (`youtube-to-blog.p.rapidapi.com`) to generate blog content.\n\n---\n\n### \ud83d\udcdd 4. Google Docs (`googleDocs`)\n- Inserts the generated blog content into a predefined Google Docs document for storage and access.\n\n---\n"
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "e3d7f913-9d83-4a8d-8ded-467a83ed079b",
"connections": {
"Mapper": {
"main": [
[
{
"node": "YouTube to Blog",
"type": "main",
"index": 0
}
]
]
},
"YouTube to Blog": {
"main": [
[
{
"node": "Google Docs",
"type": "main",
"index": 0
}
]
]
},
"On form submission": {
"main": [
[
{
"node": "Mapper",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
googleApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Convert YouTube videos into SEO-friendly blog posts in just seconds using this fully automated n8n workflow. Perfect for content creators, marketers, educators, and bloggers looking to repurpose video content without manual transcription or formatting. 📥 Accepts a YouTube video…
Source: https://n8n.io/workflows/5671/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Description: This workflow leverages the YouTube Metadata API to automatically extract detailed video information from any YouTube URL. It uses n8n to automate the entire process and stores the metada
Description: This workflow leverages the powerful YouTube Metadata API to automatically extract detailed metadata from any YouTube channel URL. Using the YouTube Metadata API, it collects information
This n8n workflow allows users to submit a YouTube video URL, automatically fetches multiple MP4 and MP3 download links using YouTube Video Downloader Fast API. It logs all links into Google Sheets fo
Instagram Profile Scraper. Uses formTrigger, httpRequest, googleSheets. Event-driven trigger; 8 nodes.
Notion__DriveDropbox_Sync. Uses notionTrigger, googleDrive, dropbox, notion. Event-driven trigger; 47 nodes.