What is Open Notebook?
Open Notebook is an open-source, self-hosted alternative to Google's NotebookLM (renamed Gemini Notebook in July 2026). You collect sources into notebooks, chat with them with citations, run reusable transformations that turn each source into summaries or other insights, search by full text or vectors, and generate podcast episodes with one to four speakers. Everything is reachable through a REST API, and a community MCP server lets Claude Desktop and other clients drive it.
It is a Python (FastAPI) back end with a Next.js front end and SurrealDB as the database, shipped as two Docker services. Models come through the maintainer's Esperanto library, which covers more than 20 providers, from OpenAI, Anthropic, Google and Mistral to Ollama, LM Studio and any OpenAI-compatible server. Sources include PDF, Office and OpenDocument files, EPUB, audio, video, web pages, YouTube transcripts and pasted text.
The repository was created in October 2024 by Luis Novo (lfnovo), is MIT-licensed, has about 41,100 GitHub stars and reached v1.15.0 on 4 October 2026. There is no paid edition or hosted service from the maintainer.
Is Open Notebook worth it?
Open Notebook is the most mature self-hosted answer to NotebookLM in our reading, and what it trades for that freedom is polish and security depth. Google's Gemini Notebook is free, hosted and closed: it runs on Google's models only, and its outputs now span Audio and Video Overviews, mind maps, flashcards, quizzes and slide decks. Open Notebook does fewer things, chat, notes, transformations, search and podcasts, but it runs on any of more than 20 providers, exposes every feature through a REST API and keeps the notebooks on your disk. Answer and podcast quality is therefore whatever your chosen model delivers, not a fixed Google product.
The podcast feature is more configurable than Google's two-host format. An episode profile sets an outline model, a transcript model and 3 to 20 segments; a speaker profile sets one to four voices, which can come from different text-to-speech providers, including OpenAI, Google, ElevenLabs, Mistral, Deepgram, MiniMax and a local Speaches server. The shipped profiles have no models assigned, so nothing generates until you set them. Cost is the two language-model passes over all selected content plus speech for the script: at OpenAI's tts-1 rate of $15 per 1M characters, a 30,000-character script costs about $0.45 to voice, or $0.90 on tts-1-hd. Audio and video sources likewise need a speech-to-text model before they can be processed.
Privacy is better than Google's only if you configure it. With a cloud provider, every chat, transformation and podcast step sends your source text to that provider; the fully local route pairs Ollama for chat and embeddings with Speaches for speech, and the docs ask for 8 GB of RAM and warn that small CPU models are slow. Ollama's default context of 8,192 tokens silently truncates long prompts, which shows up as answers that ignore your sources. The project's stated principle is no telemetry without opt-in, and we found no telemetry code in the repository.
The security defaults suit one person on a laptop and nothing more. The shipped compose file publishes the UI on port 8502 and the API on 5055 on all interfaces with authentication off, and its encryption key for stored provider keys is a public placeholder the app does not warn about. The optional protection is one shared password with no accounts, roles, session expiry, rate limiting or audit log; the browser keeps it in localStorage, and CORS is open to every origin until you set CORS_ORIGINS. SurrealDB defaults to root:root but is bound to localhost. In April 2026 CERT-EU reported a critical template-injection remote code execution flaw and two high-severity file read and write bugs, fixed in v1.8.4, after a SurrealDB injection fixed in v1.8.3. Multi-user support is under consideration, not built.
Against AnythingLLM, which offers multi-user workspaces, Open Notebook is the narrower product and the closer copy of NotebookLM's research loop. For a household or a lone researcher on a private network it is a sound choice; a team that needs separate logins has to put an authenticating proxy in front of it.
Where it earns its place
A journalist working with leaked documents that cannot go to Google
Ask questions across a few hundred PDFs without the text leaving my machine
Run the compose file with ports bound to 127.0.0.1, add Ollama with qwen3 and nomic-embed-text, and enable Docling for scanned PDFs. Nothing is sent to a model provider; the cost is a machine with at least 8 GB of RAM and slower answers than a cloud model.
A university lecturer turning weekly readings into audio for commuting students
Make a short discussion episode from each week's papers
Set an episode profile with a cheap outline and transcript model and a two-speaker profile on OpenAI tts-1, select the week's sources at Summary level and let the worker build the episode. Voicing a 30,000-character script costs about $0.45 plus the language-model calls.
A developer building an internal research assistant for a 10-person consultancy
Feed client reports in automatically and query them from our own tools
Upload files through POST /api/sources with a bearer password, behind an HTTPS reverse proxy with CORS_ORIGINS set, or connect agents through the open-notebook-mcp server. Everyone shares one password, so per-person access needs a proxy or gateway in front.
Before you commit
- Setup
- Download docker-compose.yml, replace the placeholder OPEN_NOTEBOOK_ENCRYPTION_KEY, then docker compose up -d and open localhost:8502 about 30 seconds later; add at least one language and one embedding model under Manage, Models. The docs ask for 4 GB of free RAM, 8 GB with local Ollama.
- Integrations
- OpenAI, Anthropic, Google, Vertex AI, Azure OpenAI, Mistral, Groq, DeepSeek, xAI, OpenRouter, Cohere, Voyage, ElevenLabs, Deepgram, MiniMax and others via Esperanto; Ollama, oMLX, LM Studio and OpenAI- or Anthropic-compatible servers; Docling, Crawl4AI, Firecrawl and Jina for extraction; a REST API and a community MCP server.
- Data and privacy
- Notebooks live in SurrealDB and the local notebook_data folder; provider keys are encrypted with PBKDF2-derived Fernet since v1.15.0. Source text goes to whichever providers you configure. No telemetry found; authentication is off by default; four advisories, all fixed by v1.8.4.
- Cost at scale
- No paid tier. Spend is model, embedding and speech usage plus one small server; podcasts at OpenAI's tts-1 rate cost $15 per 1M characters of script, and Whisper transcription about $0.006 a minute. Local models remove per-call costs but need RAM or a GPU.
- Limits
- 135 open issues and 56 open pull requests; single user only; no rate limiting or audit log; YouTube may block server transcript requests without a proxy or cookies; upgrading to v1.15.0 rewrites stored keys in a format older versions cannot read.
What’s good
- More than 20 model providers, including fully local Ollama
- Podcasts with one to four speakers and per-speaker TTS providers
- Every feature available through a REST API
- MIT licence and a two-container Docker install
What’s not
- Ports open on all interfaces with no password by default
- One shared password; no user accounts or roles
- Four security advisories in April 2026, one critical
- Fewer output formats than Gemini Notebook
Best for
Researchers, students and small private teams who want NotebookLM-style notebooks and podcasts on their own models and server, and can keep it off the open internet or behind an authenticating proxy.
Open Notebook alternatives
Open Notebook: common questions
- Is Open Notebook worth it?
- Open Notebook gives you NotebookLM's workflow on models and hardware you choose, provided you treat its single shared password as a door latch rather than a lock. We rate it 4.0 out of 5.
- How much does Open Notebook cost?
- Free and open source (MIT). Self-hosted only; you pay your own model, embedding, speech-to-text and text-to-speech providers, or nothing per call with local models.
- What are the downsides of Open Notebook?
- Ports open on all interfaces with no password by default; one shared password; no user accounts or roles; four security advisories in April 2026, one critical; fewer output formats than Gemini Notebook.
- Who is Open Notebook best for?
- Researchers, students and small private teams who want NotebookLM-style notebooks and podcasts on their own models and server, and can keep it off the open internet or behind an authenticating proxy.
- How much does Open Notebook cost for a team or in production?
- No paid tier. Spend is model, embedding and speech usage plus one small server; podcasts at OpenAI's tts-1 rate cost $15 per 1M characters of script, and Whisper transcription about $0.006 a minute. Local models remove per-call costs but need RAM or a GPU.
- Is Open Notebook safe for company data?
- Notebooks live in SurrealDB and the local notebook_data folder; provider keys are encrypted with PBKDF2-derived Fernet since v1.15.0. Source text goes to whichever providers you configure. No telemetry found; authentication is off by default; four advisories, all fixed by v1.8.4.
- What are the best Open Notebook alternatives?
- The closest alternatives we have reviewed are AnythingLLM, Khoj, DeepTutor and notebooklm-py.
Answers checked Oct 31, 2026.