MemorySync
All comparisons

MemorySync vs Zep

A sourced comparison of MemorySync and Zep: what a write stores, how each scopes memory, published latency, identity, compliance, roles, webhooks, deployment and pricing.

Capabilities side by side

CapabilityMemorySyncZep
What a write storesFacts extracted from the text; a new value for a one-value fact, such as a city or a job title, replaces the old oneEpisodes, processed asynchronously into entities and facts with valid-from and valid-to dates; a contradicted fact is invalidated, not deleted
ScopingEnd user required on every API-key call (400 without it); every read, search and delete is filtered to that end user and projectA graph per user, holding that user’s threads, inside a project; shared graphs are addressed by graph_id
RetrievalHybrid keyword and vector searchSemantic and BM25 search fused with reciprocal rank fusion, with optional breadth-first graph search; an auto scope assembles one context block
Read latency179 ms p50 / 980 ms p95 server-side, measured against production87 ms p50 / 155 ms p95 on LoCoMo, published by Zep; retrieval p95 of 148–168 ms across graphs from 10K to 100M in size
Identity & accessSAML 2.0, OIDC and SCIM 2.0 on every plan, including FreeOIDC single sign-on on managed cloud (Enterprise SSO); SAML and SCIM are not documented
ComplianceAudit logs on every plan; retention policies issue deletion receipts, and tombstones keep deleted memories from coming backSOC 2 Type II; HIPAA BAA, audit logs, retention policies and legal hold on Enterprise
Team rolesOwner, Admin, Developer, Analyst, Billing Admin and Member, plus custom rolesOwner and Admin on every plan; eight account and project roles on Enterprise
WebhooksMemory, import, team, API-key, billing and rate-limit eventsOn Flex Plus and Enterprise, delivered through Svix: episode processed, ingest batch completed, BYOM request failed
SDKs & MCPPython and TypeScript SDKs, CLIs on npm and PyPI, hosted MCP serverPython, TypeScript and Go SDKs over REST; a hosted Memory MCP server that end users sign in to through Google Workspace or your IdP
DeploymentManaged service onlyZep Cloud; bring your own key, and BYOC in your own VPC, on Enterprise; the Community Edition is deprecated, and Graphiti can be self-hosted
PricingFree: 10,000 adds and 1,000 retrievals a month. Starter $29, Pro $179, Scale $349 a monthFree: 10,000 credits a month. Flex $125, Flex Plus $375 a month; Enterprise custom

The Zep column states only what Zep publishes about itself, checked on 29 September 2026. Sources: Pricing · Homepage (retrieval p95) · Research (LoCoMo latency) · Facts and invalidation · Searching the graph · Enterprise SSO · Security and compliance · Audit logging · Roles · Webhooks · SDKs · Memory MCP server · Enterprise · FAQ (Community Edition). MemorySync figures come from our own production measurements and documentation. Capability tables age quickly: if anything here is out of date, tell us at team@memorysync.io and we will correct it.

Why teams choose MemorySync

  • Every call is scoped to an organization, project and end user, so one API key can serve many customers without pooling their memory.
  • SAML, OIDC, SCIM and audit logs come with every plan, including Free.
  • Facts from POST /memory/add are stored before the call returns, so there is no processing queue to poll.
  • One store serves your application over REST and the SDKs, and coding assistants over a hosted MCP endpoint.

Moving from Zep

  1. 1

    Export each user’s episodes from Zep, or let the CLI read them through the API with your Zep key.

  2. 2

    Run memorysync migrate zep --file zep_export.json --dry-run to see, per user, what would be written and how many turns came from the user and the assistant.

  3. 3

    Run it again without --dry-run. Each episode is extracted into facts under its Zep user as the end user, with the thread id carried over as session_id.

  4. 4

    Replace thread.get_user_context and graph.search calls with a MemorySync query for the end user.

Common questions

Is Zep memory tied to one conversation?

No. Each user has a knowledge graph that collects facts from all of that user’s threads (called sessions in older Zep SDKs) and from business data you add, so context carries across conversations.

How does MemorySync differ architecturally from Zep?

Zep builds a temporal knowledge graph: entities connected by facts that carry validity dates, extracted asynchronously from episodes. MemorySync stores extracted facts as records the API scopes to an organization, project and end user, links related memories with typed relationships, and replaces a one-value fact when a new value arrives. Zep is the stronger fit for reasoning about how facts changed over time; MemorySync for enforced multi-tenant scoping and identity features on every plan.

Comparisons

Move from Zep to MemorySync

Start on the free tier and evaluate retrieval, isolation, and governance against your own workload.

Start free. No credit card required.