IDInternals Decoded
All articles
ExplainersBeginner8 min readJun 2026

How NotebookLM Turns Your Docs Into a Podcast

Grounded generation, voice synthesis, and why the banter feels so real.

NotebookLM ingests your files, builds a grounded semantic model of them, plans a two-host conversation with Gemini 1.5 Pro, scripts the dialogue with banter and disfluencies, and then synthesizes it all with DeepMind’s multi-speaker voice model. The result sounds like a real podcast, not a robot reading a summary.

The hosts’ hesitations, jokes, and back-and-forth are engineered, not accidental. The system hunts for surprising ideas in your corpus and deliberately injects filler words, both in the script and in the audio, to stop the conversation from feeling sterile.

How does NotebookLM handle different document formats?

NotebookLM normalizes every source into plain text with metadata before any analysis. PDFs, Google Docs, websites, and even YouTube videos end up in the same internal content store.

Uploads can be PDFs, Google Docs, Slides, web pages, YouTube links, or MP3 files1234. The ingestion pipeline picks format-specific extractors. A PDF goes through a layout-aware renderer that preserves headings and section breaks5. A web page gets scraped, with boilerplate stripped away. Google Docs and Slides have structured APIs, making extraction straightforward236. Audio and video sources run through automatic speech recognition to produce time-aligned transcripts1245.

All extracted content lands in a content store keyed by a source ID. The enterprise API (application programming interface) exposes these IDs explicitly; a notebook can track up to about 50 sources378. From here on, every piece of content is treated as part of one multi-document corpus, ready to be indexed and grounded.

What keeps the hosts tied to your actual documents?

A source-grounding layer forces every generated sentence to map back to a specific chunk of your material. This cuts out most hallucinated facts and keeps the podcast about your sources, not the web.

NotebookLM wraps each request to Gemini in a context that includes source excerpts and strict instructions: answer only from these sources and cite them[^4]5. Internally, text spans are embedded and stored with pointers to their origin, document, page, section5. When Gemini produces a claim that paraphrases a span, the system attaches a citation marker. In the text chat, these appear as footnotes; for audio, they exist as metadata in the script, even though you won’t hear “citation number three” aloud9105.

Gemini 1.5 Pro’s massive context window, up to about 25 million words in the product, lets NotebookLM keep entire documents in memory during generation[^4]5. This reduces reliance on retrieval and helps the model reason across whole books without losing track of which claim came from which source115. The grounding layer also drives the safety disclaimer that reminds you the audio overview is a reflection of your chosen sources, not a general-knowledge lecture1210.

How does NotebookLM decide what the hosts will talk about?

Gemini starts with the Notebook Guide, a summary of your documents, and then hunts for surprising facts to build an episode arc. The system picks ideas that deviate from typical patterns in the domain, not just the most frequent ones.

When you first add sources, NotebookLM generates the Notebook Guide: a short summary plus suggested questions1336. It uses the same grounding stack but with prompts tuned for explanation, not conversation. This guide gives you a sanity check. If the summary misses the mark, you know the downstream audio might too.

When you trigger an Audio Overview, you can leave the topic blank for a “Deep Dive” that covers everything, or you can type a focus like “explain the nonprofit section for executives”121415. The system interprets that focus against the source indices and the guide, then assembles a planning context. Gemini is then asked to identify the most “interesting” ideas: claims that contrast with what the model expects based on its pretraining, or connections that cut across documents5. This step is why the podcast feels curated; the model isn’t summarizing everything equally, it’s surfacing the parts that would make a human producer say “we should talk about that.”

How is the dialogue written to sound like a real podcast?

Gemini scripts a turn-by-turn conversation with two host personas, complete with banter, questions, and citations. It injects informal phrasing at the text level so the audio never sounds like dictation.

The planning stage tells Gemini the format, Deep Dive, Brief, Critique, or Debate, and the audience description12157. Deep Dive, the default, asks for two hosts who introduce the topic, unpack key ideas, and riff on each other’s points. A Brief format switches to a single-voice, one-to-two-minute monologue1215.

The script is generated as a sequence of utterances tagged with a speaker ID. Each line can carry tonal cues for the synthesizer and implicit citation anchors5. Gemini weaves in light banter and rhetorical questions because the prompt tells it to maintain engagement, not just deliver facts1210. The model also respects a rough token budget; a typical Deep Dive covering a 3,000-word article produces about 10 to 15 minutes of audio1213[^9].

From a safety perspective, the grounding layer audits the script against the original sources. Any line that can’t be traced back is flagged or rewritten5. That means the banter, too, is source-constrained, the hosts don’t joke about topics outside your documents.

What makes the voices sound human, not robotic?

DeepMind’s speech synthesis adds prosody, pauses, and subtle room effects on top of the script. The system also injects disfluencies during synthesis, making hesitations feel organic.

NotebookLM uses a proprietary multi-speaker model, typically rendering one male and one female voice3105. Each utterance is synthesized with pitch variation, emphasis, and turn-level timing that mimics a real conversation. Pauses between sentences and turns are tuned so the exchange doesn’t feel rushed105.

Disfluencies, those “ums,” slight stutters, and self-corrections, are a deliberate editorial choice. Some come from the script (Gemini is prompted to write informally), but the voice model also stochastically injects timing delays and filler sounds during rendering5. Without this “noise,” long listening sessions become fatiguing. The clean transcript remains available behind the scenes, so citation mapping and search still work even when the audio is messy95.

Quick Reference

PropertyValue
Default audio formatDeep Dive (two hosts, ~10-15 min for a typical article)
Underlying modelGemini 1.5 Pro (MoE, up to ~2M-token context) [^4]11
Context window in NotebookLM~25M words 5
Citation mechanismInline footnotes in text; script metadata for audio
Disfluency injectionScript-level wording plus TTS-level timing 5
Voice synthesisDeepMind multi-speaker model
Supported source typesPDF, Docs, Slides, URLs, YouTube, MP3 1234
API endpointnotebooks.audioOverviews.create (Vertex AI) 78
Max sources per notebook (UI)~50 3
NotebookLM audio by the numbers
10-15 min
Typical episode length
25M words
Max context window
50 sources
Practical notebook limit
2 hosts
Voices per episode
Key figures for the default Deep Dive experience.

Frequently Asked Questions

Q: Does NotebookLM train on my uploaded documents? No. Your content is never used to update the model’s weights. It stays ephemeral inside the session’s context window and associated indices65.

Q: Can I edit the podcast script or adjust the voices? Not today. You can regenerate the episode with a different format, focus, or language, but there’s no direct script editing or voice selection in the consumer product121415. The enterprise API exposes the same controls programmatically78.

Q: How does NotebookLM handle a notebook with over 50 sources? The system can still work, but very large corpora may rely more on retrieval from the index rather than fitting everything into a single context window. Performance depends on total token count, not just file count5.

Q: Why does the audio sometimes mispronounce technical terms? The voice model is general-purpose and may not have seen your specific jargon in training. The script provides the correct spelling, but the TTS (text-to-speech) model’s pronunciation can still drift. This is a known limitation of current synthesis5.

Q: Is the generated podcast safe to share publicly? The audio only contains material drawn from your uploaded sources, so shareability is the same as sharing the documents themselves. NotebookLM adds a disclaimer reminding listeners the conversation is AI-generated910.

If you enjoy unpacking how real systems work, not how their marketing pages say they work, subscribe to Internals Decoded. We break down one production stack every week, with no fluff and no buzzwords. internalsdecoded.com

Sources

Footnotes

  1. NotebookLM usage walkthrough with source uploads, Google Support 2 3

  2. NotebookLM Studio and source types, Google Workspace Updates 2 3 4

  3. How to use NotebookLM, including source limits, PCMag tutorial 2 3 4 5 6 7

  4. Uploading YouTube videos and audio, Google Support 2 3

  5. Source grounding, interestingness, and disfluency injection, Google Research technical note 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

  6. NotebookLM interface redesign, Google Blog 2 3

  7. NotebookLM Enterprise API, Google Cloud Docs 2 3 4

  8. Audio overviews in the API, Google Cloud Docs 2 3

  9. Interactive mode: join the conversation, Google Blog 2 3

  10. NotebookLM Audio Overviews deep dive, Google AI Blog 2 3 4 5 6

  11. Gemini 1.5 Pro, MoE (mixture of experts), and 2M context, Google DeepMind 2

  12. Audio Overviews and interactive mode announcement, Google Blog 2 3 4 5 6 7

  13. NotebookLM product philosophy, NotebookLM Help 2

  14. Customizing Audio Overviews for audience, Google Support 2

  15. New formats: Brief, Critique, Debate, Google Blog 2 3 4

#notebooklm#audio-overview
More from the library
The Newsletter

Keep up with AI. One email a week.

One thoughtful email each week. Unsubscribe whenever you like.