🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

YouTube to Google Sheets, searchable video summaries

Lisa Granqvist Partner Workflow Automation Expert

You find a great YouTube channel, bookmark ten videos, then realize you’ll never remember which one covered “pricing,” “positioning,” or that one perfect framework. Tabs multiply. Notes scatter. A week later, you’re back to re-watching the same parts.

This hits marketers doing competitive research, but content ops folks and solo founders building a learning library feel it too. With YouTube Sheets summaries, you turn an entire channel into a searchable spreadsheet you can scan in minutes, not hours.

You’ll see how the workflow pulls a channel’s videos, grabs transcripts (English by default), summarizes them with an AI agent, and logs everything to Google Sheets with a clean structure you can actually search.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: YouTube to Google Sheets, searchable video summaries

The Problem: YouTube Research Doesn’t Stay Organized

Watching smart YouTubers is a legit way to learn, but it breaks down fast when you’re doing it for work. You watch a 22-minute video to find one segment on onboarding, then you can’t locate it later. Or you remember a creator said something sharp about “distribution,” but it’s buried somewhere across months of uploads. Even worse, different people on your team watch different videos and summarize them in totally different styles, which makes comparison basically impossible. The time cost is obvious, but the mental load is the real killer.

It’s not one big failure. It’s lots of small ones stacking up.

  • You end up re-watching videos because your notes aren’t searchable or consistent.
  • Important context gets lost when summaries live in Slack threads, Notion pages, and random docs.
  • Channel-wide patterns stay invisible because you can’t scan a whole catalog at once.
  • Manual tracking invites errors, like mismatched titles, missing URLs, and “which video was that?” confusion.

The Solution: Automatically Summarize a Channel Into Google Sheets

This workflow turns a YouTube channel into a structured research database. You start by submitting a few parameters in a simple form (channel URL, how many videos to pull, and a name for storage). n8n then launches an Apify YouTube scraper, waits while the scrape runs, and fetches the final dataset when it’s ready. From there, the workflow processes videos in batches, tries to select English subtitles when they exist, and passes each video’s transcript plus metadata into an AI summarization agent. Finally, every summarized record is appended into a dedicated Google Sheets tab, and you get a Gmail notification when the run finishes. It’s built for consistency, so scanning and comparing across dozens of videos feels straightforward instead of messy.

The workflow starts with a form trigger that creates a new tab in your Google Sheet for that channel. Next it scrapes, stores a raw backup file in Google Drive, then loops through videos in batches to generate summaries. When it’s done, your sheet is populated and your inbox gets the “all set” message.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you’re researching a creator with about 120 videos. Manually, even a “quick” workflow is ugly: maybe 5 minutes to open, skim, and note each one, which is about 10 hours of effort, plus the reality that your notes will vary day to day. With this automation, you spend about 5 minutes filling the form and walking away. The scrape and summarization run in the background, and when it’s done you have a full Google Sheet you can search and filter right away.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Sheets to store summaries in a searchable table
  • Google Drive for raw scrape backups and reprocessing
  • Apify API token (get it from the Apify Console)
  • DeepSeek API key (or other LLM) (get it from your LLM provider dashboard)
  • Gmail to receive a completion notification

Skill level: Intermediate. You’ll connect accounts, paste API keys, and test a run with a small video count first.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

You submit the channel details. A form trigger collects the YouTube channel URL, how many videos to crawl, a storage name, and where to send the completion email. That storage name is also used to create a dedicated tab in Google Sheets, which keeps each channel’s research separate.

The workflow scrapes and waits. n8n launches the Apify YouTube Scraper actor, then polls for status using HTTP requests with a short wait in between. Once the scrape is finished, the workflow pulls the dataset and converts the JSON into a file for safe keeping.

Transcripts are selected and summarized. Records are processed in batches, and a subtitle selection step tries to choose English subtitles when they’re available. Then an AI agent (using a chat model like DeepSeek) summarizes each video using the transcript plus metadata, and an auto-fixing parser helps keep the output structured.

Your spreadsheet gets populated. The workflow maps fields into a consistent schema and appends each row into Google Sheets, pausing briefly between writes so the sheet stays stable. When the last batch is complete, you receive a Gmail notification that the run is finished.

You can easily modify the subtitle language logic to support Mandarin (or any other language) based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Form Trigger

This workflow starts from a user-submitted form that collects the YouTube channel URL, scrape limits, storage name, Apify API key, and notification email.

  1. Add and open Input Parameters Form.
  2. Set Form Title to ={{ $workflow.name }}.
  3. Set Form Description to =Please complete all the parameters listed below..
  4. Confirm the form fields include Youtuber_MainPage_URL, Total_number_video, Storing_Name, Apify_API, and Email.

Step 2: Connect Google Sheets and Google Drive

These nodes create the sheet tab, store the scraped dataset as a file, then download and extract items for processing.

  1. Open Create Sheet Tab and set Operation to create.
  2. Set Title to ={{ $('Input Parameters Form').item.json.Storing_Name }} and choose your Document ID (currently [YOUR_ID]).
  3. Credential Required: Connect your googleSheetsOAuth2Api credentials in Create Sheet Tab.
  4. Open Store File in Drive and set Name to ={{ $('Input Parameters Form').item.json.Storing_Name }}.
  5. Credential Required: Connect your googleDriveOAuth2Api credentials in Store File in Drive and Download Drive File.
  6. In Download Drive File, keep Operation as download and File ID as ={{ $('Store File in Drive').item.json.id }}.
  7. Confirm Extract Items from File is connected after the download.

Step 3: Configure the YouTube Scraper and Polling Loop

This section launches the Apify YouTube scraper, waits, checks job status, and pulls the dataset when complete.

  1. Open Launch YouTube Scraper and set URL to =https://api.apify.com/v2/acts/streamers~youtube-scraper/runs?token={{ $('Input Parameters Form').item.json.Apify_API }}.
  2. Keep Method as POST and JSON Body as the provided JSON with {{ $('Input Parameters Form').item.json.Total_number_video }} and {{ $('Input Parameters Form').item.json.Youtuber_MainPage_URL }}.
  3. Ensure Delay 15 Seconds has Amount set to 15 and connects to Fetch Scraper Status.
  4. In Fetch Scraper Status, set URL to =https://api.apify.com/v2/acts/streamers~youtube-scraper/runs/last?token={{ $('Input Parameters Form').item.json.Apify_API }}.
  5. In Verify Scraper Result, keep the condition ={{ $json.data.status }} equals SUCCEEDED to route completed runs to Pull Scraped Dataset and unfinished runs back to Delay 15 Seconds.
  6. In Pull Scraped Dataset, set URL to =https://api.apify.com/v2/acts/streamers~youtube-scraper/runs/last/dataset/items?token={{ $('Input Parameters Form').item.json.Apify_API }}&format=json&status=SUCCEEDED.
  7. Confirm Convert JSON to File follows the dataset pull and feeds into Store File in Drive.

⚠️ Common Pitfall: Resume From Index is disabled in the workflow JSON. Enable it only if you want to resume from a specific index; otherwise keep it disabled to process all items.

Step 4: Set Up the AI Summarization Pipeline

This segment selects subtitle language, summarizes the content, parses the structured output, and normalizes the data fields.

  1. Review Choose Subtitle Language to ensure it selects an English subtitle track and outputs srt and srtUrl.
  2. Open Content Summary Agent and set Text to =id:{{ $('Batch Video Iterator').item.json.VideoID }} title:{{ $('Batch Video Iterator').item.json['\uFEFFTitle'] }} subtitle:{{ $('Choose Subtitle Language').item.json.srt }} description:{{ $('Batch Video Iterator').item.json.Description }}.
  3. Keep Has Output Parser enabled, and confirm Structured Response Parser and Auto Repair Parser are connected.
  4. Credential Required: Connect your deepSeekApi credentials in DeepSeek Chat Engine. This language model powers Content Summary Agent, Structured Response Parser, and Auto Repair Parser.
  5. In Structured Response Parser, keep the JSON schema example as provided to enforce the output format.
  6. Verify Normalize Summary Data transforms the output into VideoID, Field, and Summary.

Tip: If the AI output fails schema validation, Auto Repair Parser will retry. Ensure the system prompt in Content Summary Agent remains unchanged for reliable structure.

Step 5: Map Fields and Write to Google Sheets

After each video is summarized, the data is mapped to a structured row and appended to your sheet.

  1. Open Map All Fields and verify the assignments use expressions like ={{ $('Batch Video Iterator').item.json.id }} and ={{ $('Normalize Summary Data').item.json.Summary }}.
  2. In Append Data to Sheet, set Operation to appendOrUpdate and confirm Sheet Name is ={{ $('Input Parameters Form').item.json.Storing_Name }}.
  3. Confirm the column schema includes VideoID, Title, Duration, Date, URL, Likes, Description, Field, and Summary.
  4. Credential Required: Connect your googleSheetsOAuth2Api credentials in Append Data to Sheet.
  5. Keep Pause 2 Seconds set to 2 to avoid rate limits before the next batch iteration.

Step 6: Configure Batching and Notifications

Videos are processed in batches, summarized, and a completion email is sent when batching ends.

  1. Confirm Batch Video Iterator receives items from Resume From Index and loops back from Pause 2 Seconds.
  2. Batch Video Iterator outputs to both Choose Subtitle Language and Send Completion Email in parallel.
  3. In Send Completion Email, set Send To to ={{ $('Input Parameters Form').item.json.Email }}.
  4. Set Subject to =🎉 {{ $workflow.name }} Done~ and Message to = {{ $workflow.name }} finished at 🕓{{ new Date().toLocaleString("en-CA", { hour12: false }).replace(',', '') }}.
  5. Credential Required: Connect your gmailOAuth2 credentials in Send Completion Email.

Step 7: Test and Activate Your Workflow

Run a controlled test to verify the scraper, summarizer, and storage components behave as expected.

  1. Click Execute Workflow and submit the Input Parameters Form with a known YouTube channel and a small Total_number_video value.
  2. Confirm Launch YouTube Scraper starts, then Fetch Scraper Status reaches a SUCCEEDED status and Pull Scraped Dataset returns items.
  3. Verify that Append Data to Sheet adds rows to your target Google Sheet and that Send Completion Email sends the notification.
  4. Once verified, switch the workflow to Active to allow production runs.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Google Sheets credentials can expire or be missing OAuth scopes. If things break, check the n8n credentials screen and the connected Google account permissions first.
  • If you’re using Wait nodes or external scraping, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses while the Apify run is still finishing.
  • Default prompts in AI nodes are generic. Add your summary format and brand voice early, otherwise you will be editing outputs forever.

Frequently Asked Questions

How long does it take to set up this YouTube Sheets summaries automation?

About 30 minutes if you already have your API keys.

Do I need coding skills to automate YouTube video summarization into Google Sheets?

No. You’ll mostly connect accounts, paste keys, and tweak a few fields in the form.

Is n8n free to use for this YouTube Sheets summaries workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in Apify usage and your LLM costs (DeepSeek or another model), which depend on how many videos you process.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this YouTube Sheets summaries workflow for a different subtitle language?

Yes, but plan to test it on a small batch first. You can adjust the “Choose Subtitle Language” logic to prioritize Mandarin, Spanish, or whatever you need, then keep the AI agent prompt consistent so your rows still compare cleanly. Common customizations include changing the summary format (bullets vs. paragraph), adding keywords/tags as extra columns, and sending a Slack message with run stats when it finishes.

Why is my Google Sheets connection failing in this workflow?

Most of the time it’s an expired Google OAuth connection or the wrong Google account connected. Reconnect the Google Sheets credential in n8n, then confirm the target spreadsheet is selected in the “Create Sheet Tab” and “Append Data to Sheet” nodes. If it still fails, check sharing permissions on the sheet and confirm the workflow is not writing too fast, because Google can rate limit bursts.

How many videos can this YouTube Sheets summaries automation handle?

A lot, as long as you size your scrape and run time realistically. On n8n Cloud, your limit is mostly monthly executions, and big channel runs can burn through them quickly because the workflow loops through many items. If you self-host, there’s no execution limit, but your server resources and the external APIs become the bottleneck. Practically, many teams start with about 50 videos to validate the sheet format, then scale up to a full channel run once they’re happy with the summaries.

Is this YouTube Sheets summaries automation better than using Zapier or Make?

Often, yes, because this isn’t a simple two-step zap. n8n handles looping, batching, waiting for external jobs (Apify), and structured AI outputs without turning your automation into a fragile chain of premium steps. The self-hosting option is also a big deal if you want to process large channels without worrying about per-task pricing. Zapier or Make can still be fine for lightweight “new video → send notification” use cases. If you want a second opinion before you invest time, Talk to an automation expert.

Once this is running, YouTube stops being a pile of “watch later” tabs and becomes a searchable research asset. Set it up once, then let the workflow do the catalog work for you.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal