SheetMagicSheetMagic

How to Get YouTube Transcripts into Google Sheets

Paste YouTube links in a column and run =YTTRANSCRIPT(A2:A20) to get each video's title, channel, publish date and transcript in its own row, at 24 scraping credits per video.

Phil Nguyen · 5 min read

To get YouTube transcripts into Google Sheets, paste your video links in a column and type =YTTRANSCRIPT(A2:A20) in an empty cell. SheetMagic writes one row per video with its title, channel, publish date and transcript, and each delivered transcript costs 24 scraping credits.

=YTTRANSCRIPT(A2:A20)

=YTTRANSCRIPT() is a SheetMagic custom function that extracts subtitles and transcripts from YouTube videos. It is built for the moment you have a list of videos and want the spoken text of each one in a row you can read, search, filter or hand to AI.

What does =YTTRANSCRIPT() return?

Each video becomes one row with these columns:

ColumnWhat it holds
TitleThe video title
Video URLThe watch link for the video
ChannelThe channel name
PublishedThe publish date
TranscriptThe spoken text of the video
Channel IDThe YouTube channel ID
Views, Likes, CommentsThe counts as YouTube shows them
KeywordsThe video tags in one cell
ThumbnailThe thumbnail image link
DescriptionThe video description

Views, Likes and Comments come through as YouTube's own text, such as "12,345 views" or "4.8K", not as plain numbers. If you want to sort by them, add a helper column that converts the text first.

How do I pull transcripts for a whole list of videos?

Put one video link per cell in a single column, then pass that range to the function:

=YTTRANSCRIPT(A2:A40)

The range is flattened into a list of links and empty cells are skipped, so a column with a few gaps still works. You can also pass a single link in quotes or a single cell, such as =YTTRANSCRIPT(A2).

While the job runs, the cell shows "⏳ Scraping...". The results table is then written into this cell's range, usually within a minute. Leave room below and to the right of the formula cell for the rows and columns.

Use full video links such as https://www.youtube.com/watch?v=dQw4w9WgXcQ. Short youtu.be links may also work.

Channel links and playlist links are not accepted. If you want every video from a channel, collect the individual video links into a column first, then run =YTTRANSCRIPT() on that column.

What are the limits of YouTube transcript extraction?

  • No timestamps. The transcript comes back as plain text, without time codes.
  • 5,000 characters per video. Long transcripts are cut at 5,000 characters so each cell stays a manageable size. The Description column has the same cap.
  • No language choice. The function has an optional language argument, but it is not used. The transcript comes in the video's available caption language: English when the video has English captions, otherwise the first available track.
  • Videos without captions are dropped. A video with no transcript does not get a row, so your output can have fewer rows than your input list.

How do I summarize YouTube transcripts with AI?

Once the transcripts are in the sheet, point =AITEXT(prompt, context) at the Transcript cell. If your transcripts landed in column E starting at row 2, put this next to the first row and fill it down:

=AITEXT("Summarize this video transcript in 3 bullet points", E2)

The context argument is added to your prompt, so the AI answers about that one transcript. A few prompts that work well on transcripts:

  • "List the main topics covered, one per line"
  • "Write a one-sentence summary for a newsletter"
  • "Pull out any product or tool names mentioned"
  • "Suggest a blog post title based on this transcript"

AI functions use AI tokens, which are a separate allowance from scraping credits. On the Solo plan, for example, the monthly allowance is 3,250,000 AI tokens alongside 10,000 scraping credits. See AI tokens vs scraping credits for how the two pools work, and Generate text with AI for more AITEXT prompts.

How many credits does a YouTube transcript cost?

Each transcript costs 24 scraping credits per result, so 10 videos cost 240 credits. The Free plan comes with 100 scraping credits, enough for about 4 transcripts. The Solo plan includes 10,000 scraping credits a month, enough for about 416 transcripts.

You are billed per delivered row. A video that has no captions is dropped before it reaches the sheet, so it is never billed.

Where to go next

=YTTRANSCRIPT() is one of SheetMagic's scraping functions. For the full set, read the web scraping guide and web scraping in Google Sheets. To do more with the text once it is in your sheet, see AI in Google Sheets.

Questions about a transcript job? Email support@sheetmagic.ai and we will help.

Text and scraping formulas run on the free allowance. Install from the Google Workspace Marketplace, no card, no expiry.

Install free for Google Sheets

About the author

Phil NguyenPhil builds SheetMagic, the Google Sheets add-on that brings AI and web scraping into the spreadsheet, used by 6,300+ people. He writes these guides from the formulas he runs on his own sheets.