GUIDE

Summarize any YouTube video into a Notion page.

A repeatable workflow for researchers, PMs, and students: capture the full transcript, compress it into an AI summary, and drop the result into Notion in under five minutes — for videos of any length.

TL;DR

Copy the YouTube URL → paste it into Y/T_TRANSCRIPT to get the full transcript → generate an AI summary → paste the Markdown into Notion (or use the API script for bulk imports). Free, no signup, works on any video length.

Summarize a video free →
WHY

Why pair a YouTube video summarizer with Notion?

Notion is where knowledge sticks — it's searchable, linkable, and durable. YouTube is where a huge chunk of research, product teardowns, lectures, and interviews live. Copy-pasting captions by hand doesn't scale past a couple of videos. A youtube to transcript pipeline feeding straight into Notion turns hours of video into a queryable library you can quote, tag, and revisit.

  • Full transcripts, not just the first 4 minutes — Y/T_TRANSCRIPT streams complete captions.
  • Timestamps preserved so you can jump back to the exact moment.
  • Markdown output that Notion accepts natively — no reformatting.
  • Works for lectures, podcasts, keynotes, and multi-hour interviews.
WORKFLOW

The three-step workflow

01

Paste the URL

Drop the YouTube link into the transcript tool and grab the full, timestamped captions.

02

Summarize

Turn the transcript into a TL;DR, chapter summaries, quotes, and action items.

03

Send to Notion

Paste the Markdown into your Video Library page — or POST it via the Notion API.

STEP 1

Pull the full transcript

Open the transcript tool, paste the YouTube URL, and pick your caption language. Y/T_TRANSCRIPT reads the whole caption track — no 4-minute cap, no arbitrary limits — and returns timestamped lines you can copy or download as Markdown, SRT, VTT, or JSON.

For a research workflow, export as Markdown with timestamps. Notion will render the timestamps as plain text you can search against later.

STEP 2

Summarize with structure

A wall of transcript is worse than no notes. Use the summarizer to condense the transcript into:

  • TL;DR — a two-sentence hook for the top of the Notion page.
  • Chapter summaries — one paragraph per section, with the starting timestamp.
  • Key quotes — verbatim lines worth citing later.
  • Action items — anything the speaker recommends doing.

This structure maps 1:1 to Notion toggles and callouts, so the page stays scannable even for 90-minute talks.

STEP 3

Push to Notion

Two options depending on how often you do this:

A) Manual paste (fastest for one-offs)

  1. Create a new Notion page in your "Video Notes" database.
  2. Type /code and paste the raw transcript inside a toggle if you want it hidden by default.
  3. Paste the summary above the toggle. Notion parses Markdown headings, lists, and quotes automatically.
  4. Add source metadata: video URL, channel, date watched, and tags.

B) API push (for >5 videos/week)

Hit our /v1/transcript and/v1/summarize endpoints, thenPOST the result to Notion'spages endpoint. See the snippet in Automation below.

TEMPLATES

A Notion database setup that scales

Create a database called Video Library and configure it exactly like this. Copy the property table below — it is the whole template.

PropertyTypeExample value / config
TitleTitleHow Transformers Work — 3Blue1Brown
URLURLhttps://youtu.be/wjZofJX0v4M
ChannelSelect3Blue1Brown / Lex Fridman / Y Combinator
DurationNumber27 (minutes, format: Number)
TagsMulti-selectml, research, product-teardown
StatusSelectInbox → Watched → Referenced
AddedDateAuto-filled with Created time
SummaryTextTwo-sentence TL;DR pulled from the summarizer
RatingSelect★ / ★★ / ★★★ — re-watch value
SourceFormulareplaceAll(prop("URL"), "https://", "")

Three views worth creating

  • Inbox — Table view, filter Status = Inbox, sorted by Added descending. Your watch queue.
  • By topic — Board view grouped by Tags. Best for pulling every video on one theme before writing.
  • Quick reference — Gallery view with the Summary property shown on the card, filtered to Status = Referenced.

Page body layout

Each row's page body holds, in order: TL;DR callout → Chapter summary (H2 per chapter with its timestamp) → Key quotes as a quote block → Full transcript inside a collapsed toggle. That keeps the database view clean while the transcript stays one click away for Ctrl+F.

> 💡 TL;DR — attention is just weighted lookup across tokens.

## 00:00 — Why sequence models struggled
...

## 07:12 — Self-attention, intuitively
...

> "You can think of a query as asking every other token a question."

▸ Full transcript   (toggle — paste the Markdown export here)

Want it repeatable? Open the database, click New → ⚙ New template, build the layout above once, and name it "Video note". Every new row starts pre-structured.

AUTOMATION

Automating with the API

For research teams processing dozens of videos, script it. Here's the end-to-end shape using Y/T_TRANSCRIPT and the Notion API:

// 1. Get transcript + summary from Y/T_TRANSCRIPT
const t = await fetch("https://api.yt-transcript.dev/v1/transcript", {
  method: "POST",
  headers: { Authorization: `Bearer ${YT_KEY}`, "Content-Type": "application/json" },
  body: JSON.stringify({ videoId, lang: "en" }),
}).then(r => r.json());

const s = await fetch("https://api.yt-transcript.dev/v1/summarize", {
  method: "POST",
  headers: { Authorization: `Bearer ${YT_KEY}`, "Content-Type": "application/json" },
  body: JSON.stringify({ transcript: t.text, format: "chapters" }),
}).then(r => r.json());

// 2. Create a Notion page in your Video Library database
await fetch("https://api.notion.com/v1/pages", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${NOTION_TOKEN}`,
    "Notion-Version": "2022-06-28",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    parent: { database_id: DB_ID },
    properties: {
      Title: { title: [{ text: { content: t.title } }] },
      URL:   { url: `https://youtu.be/${videoId}` },
    },
    children: markdownToNotionBlocks(s.markdown),
  }),
});

Run it from a cron, a Zap, or a Notion button — the shape stays the same.

FAQ

FAQ

Does this work for videos longer than an hour?

Yes. Y/T_TRANSCRIPT streams the entire caption track — multi-hour lectures and podcasts included. The summarizer chunks long transcripts automatically so nothing gets truncated.

What if the video has no captions?

We fall back to automatic speech recognition, so uploader-disabled captions aren't a dead end. Accuracy is lower than human captions but still usable for summaries.

Can I translate the transcript before sending it to Notion?

Yes — pick a target language on the transcript page, or call/v1/translate before the summarize step.

Is my data stored?

Transcripts and summaries aren't persisted server-side beyond the request. Anything you keep lives in your Notion workspace.

Ready to try it?

Paste a YouTube URL and get a Notion-ready summary in under a minute.