Performance
Speed is the product: fewer calls, fewer tokens, no waiting. UndoCRM is benchmarked with one workspace holding 1,000,000 contacts and their history:
| Records | Count |
|---|---|
| Contacts | 1,000,000 |
| Identities (emails, phones, handles) | 1,700,000 |
| Interactions | 3,000,000 |
| Facts | 2,000,000 |
| Audit log entries | 2,000,000 |
| Deals | 100,000 |
| Tasks | 200,000 |
Results
Server-side times, 10 runs each. The benchmark fails if a search returns nothing or the wrong person first, so these are times for correct answers. Network time between your agent and UndoCRM comes on top.
| Operation | p50 | p95 |
|---|---|---|
| Brief by email | 3ms | 5ms |
| Brief by id, over MCP | 4ms | 7ms |
| Search by name | 9ms | 28ms |
| Search by name with a typo ("Prya Patl") | 37ms | 51ms |
| Search by partial email | 2ms | 3ms |
| Search by company domain | 5ms | 6ms |
can_contact + claim |
5ms | 8ms |
| Log an interaction (+facts, +task) | 5ms | 13ms |
| Log an interaction with a new person | 4ms | 5ms |
| Search conversations | 4ms | 5ms |
| Deals in a stage | 25ms | 27ms |
Concurrent writes: 100 interactions from two agents at once, half of them creating new people: about 600 writes a second, no failures, no duplicate contacts.
Known limits
- Typos that swap letters ("Pryia" for "Priya") match poorly; missing and extra letters match well. Agents usually search by email or id, which are exact.
- Request rates depend on your plan.