Sales Data engAnalyticsLLM / RAGAgentic B2B SaaS Sales ops cost −22%

Account signal router

5 people · 9 months Two data engineers · ML engineer · Backend engineer · Me — architecture and delivery
the engagement client data — not shown
heard
"My reps spend the first ninety minutes of every day deciding who to call."
real problem

Signals were spread across product telemetry, support tickets, billing and the CRM. Nobody could rank accounts by what had actually changed this week, so prioritisation defaulted to deal size.

system built

A signal store that normalises events from five sources onto the account, a ranker for change-in-intent, and an agent that writes the brief a rep reads before the call — with the evidence links inline. Routing rules are versioned and auditable.

what broke

Briefs were confidently wrong when a source was stale. Every brief now carries a data freshness line, and stale sources are excluded from the ranking rather than silently reused.

the open rebuild same architecture · public data
dataset

Public SaaS telemetry + Enron-style ticket corpus, joined on synthetic accounts

what the rebuild covers

The signal store and ranker are complete. The brief-writing agent runs locally with a small open model.

artifacts
NotebookCodeDatasetWrite-upDemo
Open the code Open notebook