Tools / Mem0

Mem0 Review

A memory layer that lets AI agents remember users across sessions, as a library, a self-hosted server, or a platform

Last reviewed: October 2026

TL;DR

Mem0 adds persistent, searchable memory to AI agents and apps: it extracts facts from conversations, stores them with entity links, and retrieves them with combined semantic, keyword, and entity matching. It ships as an Apache-2.0 Python and Node library, a self-hosted server with a dashboard, and a managed platform. Its benchmark numbers are for the managed platform, and the README says open-source users should expect similar but not identical results. A detail worth knowing before you deploy: the library's default vector store is a local Qdrant under /tmp.

License

Apache-2.0

Self-hosted

Yes

Cloud option

Mem0 Platform at app.mem0.ai (free Hobby plan, Starter $19, Pro $249)

GitHub stars

67.1K★

Checked October 2026

Category

Developer Tools & AI Infrastructure

Pricing

Open-source library and self-hosted server are free; the platform has a free Hobby plan, Starter at $19/month, and Pro at $249/month

What is Mem0?

Mem0 is a memory layer for agents; the docs describe the open-source version as the same memory engine as the platform, running on your own infrastructure, either as a library (call Memory() after pip install mem0ai or npm install mem0ai) or as a self-hosted Docker Compose stack with a dashboard, per-user API keys, and a request audit log. The README describes an April 2026 algorithm that makes a single LLM call per add and only appends, never updating or deleting, and notes that facts an agent confirms are stored with the same weight as user facts. Entities are extracted, embedded, and linked across memories, and retrieval runs semantic, BM25 keyword, and entity matching in parallel and fuses the results, with temporal reasoning to rank the dated instance that fits a query about current state, past events, or plans. Memory is user-scoped and addressable by ID, and the docs name async memory, metadata filters, reranker search, and multimodal support. The docs list setup guides for 22 tools, including LangChain, CrewAI, LlamaIndex, and the Vercel AI SDK, plus guides for Claude Code, Cursor, and Codex.

Installation & self-hosting

The library installs with pip install mem0ai or npm install mem0ai, with an nlp extra and a spaCy model for BM25 keyword matching and entity extraction. The library defaults are OpenAI gpt-5-mini as the LLM (requiring OPENAI_API_KEY), text-embedding-3-small for embeddings (the README recommends a stronger embedder such as a Qwen-based one for hybrid search), a local Qdrant at /tmp/qdrant as the vector store, a SQLite history store at ~/.mem0/history.db, and a reranker that stays disabled until configured, and you override any of them with Memory.from_config. Because /tmp is often cleared on reboot or in containers, configure a persistent vector store for anything real. The self-hosted server runs from the server/ directory with Docker Compose, serves a dashboard at localhost:3000, and is bootstrapped with make bootstrap, with auth on by default, Postgres with pgvector as its vector store, and bundled LLM providers for openai, anthropic, and gemini selectable on its Configuration page (default model overridable with MEM0_DEFAULT_LLM_MODEL). The OpenAlternative page mentions deployment on Kubernetes, private cloud, or air-gapped environments, and enterprise compliance such as SOC 2 Type 1, HIPAA, and BYOK on the managed side.

User experience

Developers call add and search from their agent code, scoped to a user ID, and the memory store grows over time. The README's comparison table treats advanced features as not in the library, teasers in the self-hosted server, and all included in the cloud, and the platform plan details list graph memory and a memory consolidation feature called Dream on Pro. This section reflects the README, docs, and pricing page; we did not run Mem0.

Key features

  • Extraction of compact memories from conversation history
  • Hybrid retrieval: semantic, BM25 keyword, and entity matching fused together
  • Entity linking across memories and temporal reasoning
  • User-scoped memory addressable by ID, with metadata filters and reranker search
  • Python and Node.js SDKs, a CLI, a managed API, and a self-hosted server with a dashboard
  • Integrations with 22 tools including LangChain, CrewAI, and LlamaIndex
  • Deployment on Kubernetes, private cloud, or air-gapped environments (enterprise)

What Mem0 does well

  • One of the most popular dedicated memory layers, with about 67,000 stars and daily commits
  • Apache-2.0 license, with an open evaluation framework
  • Hybrid retrieval that does not depend only on embeddings
  • A clear path from library to self-hosted server to managed platform

Where Mem0 falls short

  • The benchmark gains (for example LoCoMo 92.5, LongMemEval 94.4, BEAM 64.1 at 1M and 48.6 at 10M tokens) are for the managed platform, and open-source users should expect directionally similar but not identical results
  • The new algorithm is append-only, so it does not update or delete memories
  • Requires an LLM to function and defaults to OpenAI models, which adds cost and a dependency
  • The library's default Qdrant lives in /tmp and its history store in your home directory, so persistence needs configuration
  • Advanced features such as graph memory and memory consolidation are in the Pro platform plan, and the self-hosted server only teases them

Pricing

Platform plans: Hobby is free with 10,000 add requests and 1,000 retrieval requests per month and 1 project; Starter is $19/month with 50,000 adds, 5,000 retrievals, and 1 project; Pro is $249/month with 500,000 adds, 50,000 retrievals, unlimited projects, private Slack support, advanced analytics, graph memory, and Dream (memory consolidation); Enterprise is custom with unlimited usage, SLA support, on-premises deployment, audit logs, custom integrations, and SSO. All plans except Enterprise list unlimited end users, and usage-based pricing is available for traffic that does not fit a tier.

Mem0 vs LangChain

LangChain offers memory abstractions as part of a broader agent framework, and Pinecone and Vertex AI provide vector storage and retrieval infrastructure, while Supermemory is a similar memory product. Mem0 is a focused memory layer you add to any stack, with its own extraction and retrieval logic rather than just a vector store. Choose it when you want agents to remember users across sessions without building the extraction and ranking pipeline yourself.

Best for

  • Teams building assistants that must remember user preferences and history
  • Developers who want a ready-made memory service they can self-host or buy
  • Products that need audit logs and compliance options for memory

Not ideal for

  • Simple chatbots that only need the current conversation
  • Teams that need memory updates and deletions handled automatically by the extraction algorithm
  • Projects that cannot depend on an LLM for memory extraction

Alternatives

LangChainSupermemoryPinecone

Final verdict

Mem0 is the leading open-source memory layer for agents. Evaluate it on your own data rather than relying on published benchmarks, configure a persistent vector store from day one, and plan how you will handle corrections and deletions given its append-only extraction.

Sources