AutomationFlowsSocial Media › Summarize Youtube Videos with AI and Extract Key Lessons to Google Docs

Summarize Youtube Videos with AI and Extract Key Lessons to Google Docs

Byandsync @b-ensink on n8n.io

This template is for learners, researchers, students and professionals who want to quickly capture the essence of a YouTube video.

Chat trigger trigger★★★★☆ complexityAI-powered14 nodesChat TriggerHTTP RequestChain LlmOpenRouter ChatGoogle Drive
Social Media Trigger: Chat trigger Nodes: 14 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow corresponds to n8n.io template #5073 — we link there as the canonical source.

This workflow follows the Chainllm → Chat Trigger 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 →

Download .json
{
  "id": "86tygV5ZAp32Ey9H",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "Youtube transcript summary to Google Doc",
  "tags": [],
  "nodes": [
    {
      "id": "ad8c3f1f-e5fb-4947-bdf2-65d05775f312",
      "name": "When chat message received",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        -200,
        0
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.1
    },
    {
      "id": "5b50c77d-2d05-4be0-9016-c907a60f776f",
      "name": "Aggregate",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        600,
        0
      ],
      "parameters": {
        "options": {},
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "fieldToAggregate": "text"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "71a397d0-a138-42b9-b494-be17c7494762",
      "name": "Split Out",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        420,
        0
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "content"
      },
      "typeVersion": 1
    },
    {
      "id": "ddb4ff38-fcef-48ae-9e86-393449637551",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        140,
        -160
      ],
      "parameters": {
        "color": 3,
        "height": 380,
        "content": "## Communicate with Supadata.ai to send the Youtube link"
      },
      "typeVersion": 1
    },
    {
      "id": "838d12e1-6958-47d2-b5da-748e778ac7b3",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -300,
        -160
      ],
      "parameters": {
        "color": 5,
        "height": 380,
        "content": "## Only send a youtube URL in the chat."
      },
      "typeVersion": 1
    },
    {
      "id": "14e560b3-d1cf-40ec-b48f-69ba8bb8b11d",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        400,
        -160
      ],
      "parameters": {
        "color": 7,
        "width": 320,
        "height": 380,
        "content": "## Split out all the rows from the transcript and aggregate to one text"
      },
      "typeVersion": 1
    },
    {
      "id": "16d63b20-096a-4636-9ae7-6bf4ef43175b",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        760,
        -160
      ],
      "parameters": {
        "color": 3,
        "width": 340,
        "height": 500,
        "content": "## Send to your favorite LLM to transform to a summary, lessons and facts. (system instructions inside)"
      },
      "typeVersion": 1
    },
    {
      "id": "0a7966cd-feda-420d-947b-6ee2c3c2dc07",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1120,
        -160
      ],
      "parameters": {
        "color": 5,
        "width": 280,
        "height": 500,
        "content": "## Write the output to a Google Doc on your Drive\n"
      },
      "typeVersion": 1
    },
    {
      "id": "7fd59a06-5ef2-4c27-b099-4ca44027f7a3",
      "name": "supadata API - YouTube endpoint",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        220,
        0
      ],
      "parameters": {
        "url": "=https://api.supadata.ai/v1/youtube/transcript?url={{ $('When chat message received').item.json.chatInput }}",
        "options": {},
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "x-api-key",
              "value": "={{ $json.supadatakey }}"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "aa962a66-0c16-4abf-bdfa-77f601905476",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -40,
        -160
      ],
      "parameters": {
        "color": 5,
        "width": 150,
        "height": 380,
        "content": "## Supadata API key\n"
      },
      "typeVersion": 1
    },
    {
      "id": "0d5c97ca-6a21-4887-96e2-f3dc1b858a28",
      "name": "Proces transcript to summary template",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        820,
        0
      ],
      "parameters": {
        "text": "=Below is a transcript of a youtube video. \nPlease summarize this, following these rules for your output:\n1. NEVER change the tenor of the text\n2. Get the best lessons from this transcript, as if you are a teacher or trainer. \n3. Summarize this with the following parts: Brief summary of the transcript, lessons learned in bullet points, interesting facts mentioned in bullet points. \n\nALWAYS put your output in markdown. \n\nTranscript:\n{{ $json.text }}",
        "promptType": "define"
      },
      "typeVersion": 1.6
    },
    {
      "id": "9dcb7153-15eb-4067-a13e-393ddeee16d6",
      "name": "Gemini 2.0 flash",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        800,
        200
      ],
      "parameters": {
        "model": "google/gemini-2.0-flash-001",
        "options": {}
      },
      "credentials": {
        "openRouterApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "475ef042-b590-4dba-9bcc-c4386ac81b02",
      "name": "Create new Google Doc with summary",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1180,
        0
      ],
      "parameters": {
        "name": "=transcript {{ $now }}",
        "content": "={{ $json.text }}",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "",
          "cachedResultName": "n8n"
        },
        "operation": "createFromText"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "cb7b3659-4e1f-4d1b-abc7-da40b964801c",
      "name": "Set your supadata key",
      "type": "n8n-nodes-base.set",
      "position": [
        0,
        0
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "13f8496b-62c8-4c77-b23d-b5803097a3f2",
              "name": "supadatakey",
              "type": "string",
              "value": " "
            }
          ]
        }
      },
      "typeVersion": 3.4
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "ed03624c-71ef-4ae2-ac21-7229956ee8db",
  "connections": {
    "Aggregate": {
      "main": [
        [
          {
            "node": "Proces transcript to summary template",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out": {
      "main": [
        [
          {
            "node": "Aggregate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Gemini 2.0 flash": {
      "ai_languageModel": [
        [
          {
            "node": "Proces transcript to summary template",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Set your supadata key": {
      "main": [
        [
          {
            "node": "supadata API - YouTube endpoint",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received": {
      "main": [
        [
          {
            "node": "Set your supadata key",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "supadata API - YouTube endpoint": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Proces transcript to summary template": {
      "main": [
        [
          {
            "node": "Create new Google Doc with summary",
            "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.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

This template is for learners, researchers, students and professionals who want to quickly capture the essence of a YouTube video.

Source: https://n8n.io/workflows/5073/ — original creator credit. Request a take-down →

More Social Media workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Social Media

This workflow is your all-in-one AI Content Strategist, designed to generate comprehensive, data-driven content briefs by analyzing top-ranking competitors.

Chat Trigger, @Brightdata/N8N Nodes Brightdata, OpenRouter Chat +4
Social Media

This n8n template acts as your automated social media data analyst. Instead of manually checking your analytics across different dashboards every week, this workflow scrapes your latest stats, calcula

HTTP Request, YouTube, Airtable +3
Social Media

Automated Tiktok Videos. Uses executeCommand, httpRequest, lmChatGroq, chainLlm. Webhook trigger; 45 nodes.

Execute Command, HTTP Request, Groq Chat +3
Social Media

This workflow is for content creators, marketers, agencies, coaches, and businesses who want to maximize their YouTube content ROI by automatically generating multiple content assets from single video

Output Parser Structured, Chain Llm, OpenRouter Chat +2