It's easy to say "my thing is better". It's harder to measure it without cheating. So I put Corvusmem in a ring with mem0 and Zep and ran a proper head-to-head.
The setup (where honesty lives)
- Same corpus, same questions, same metrics for every engine.
-
Same judge for everyone:
Qwen3-8Brunning locally acts as both the answerer and the grader. No engine gets a stronger judge than the others — that's what makes the comparison fair. - Public datasets alongside my own corpus, so it isn't a home-field setup.
And the caveat I lead with, not bury: these numbers are not comparable to mem0's or Zep's official leaderboards, which use GPT-4o. A stronger judge moves everyone's score. What this measures is how each memory behaves against the others under identical conditions — relative, not absolute.
Two axes, not one
Accuracy is only half the story. The other half is what the memory costs your context window — tokens injected per message and per session. A memory that's 2% more accurate but triples your token bill every turn is not a win. The benchmarks page plots both so you can judge the trade-off yourself.
I'm deliberately not pasting the exact percentages here — they move as the method sharpens, and I'd rather you read the live, dated numbers than a snapshot that rots in a blog post.
Why a deterministic engine can hold its own
Corvusmem has no embeddings and no vector DB — just a deterministic recall over structured facts (dated substitution, two-hop linking, language-agnostic keys). The surprise for a lot of people is that for durable project memory — decisions, rules, stack, gotchas — that's enough to stay competitive on accuracy while staying far cheaper on tokens, offline, and free.
Look for yourself
- Live benchmarks: https://corvusmem.vercel.app/benchmarks
-
Install:
npx corvusmem install
It's new and open (free for non-commercial use). If you spot a hole in the methodology, tell me — a benchmark you can't poke at isn't worth much.

Top comments (0)