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.
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 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.
The three-step workflow
Paste the URL
Drop the YouTube link into the transcript tool and grab the full, timestamped captions.
Summarize
Turn the transcript into a TL;DR, chapter summaries, quotes, and action items.
Send to Notion
Paste the Markdown into your Video Library page — or POST it via the Notion API.
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.
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.
Push to Notion
Two options depending on how often you do this:
A) Manual paste (fastest for one-offs)
- Create a new Notion page in your "Video Notes" database.
- Type
/codeand paste the raw transcript inside a toggle if you want it hidden by default. - Paste the summary above the toggle. Notion parses Markdown headings, lists, and quotes automatically.
- 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.
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.
| Property | Type | Example value / config |
|---|---|---|
| Title | Title | How Transformers Work — 3Blue1Brown |
| URL | URL | https://youtu.be/wjZofJX0v4M |
| Channel | Select | 3Blue1Brown / Lex Fridman / Y Combinator |
| Duration | Number | 27 (minutes, format: Number) |
| Tags | Multi-select | ml, research, product-teardown |
| Status | Select | Inbox → Watched → Referenced |
| Added | Date | Auto-filled with Created time |
| Summary | Text | Two-sentence TL;DR pulled from the summarizer |
| Rating | Select | ★ / ★★ / ★★★ — re-watch value |
| Source | Formula | replaceAll(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.
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
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.