Coaching that lands while the call is live.
A SaaS platform that listens to sales calls as they happen, understands the conversation in context, and delivers coaching feedback while it can still change the outcome, not in a recap email hours later.
The problem
Sales reps lack visibility into what is working during a call, and managers don't have time to review recordings, so coaching doesn't scale. Existing tools made the gap worse. They analyzed meetings only after the fact and delivered insights in recap emails hours later, once the moment to act had already passed.
The solution
Sodelia designed and built the platform end to end. Recall captures the call audio locally on the rep's own machine, Deepgram turns it into a live transcript, and a multi-model layer analyzes the conversation in context and delivers actionable coaching feedback on screen while the call is still running, at the reliability and quality expected of an enterprise product.
The result
A production platform that delivers feedback while it can still change the conversation. Context caching lets the system affordably retain the entire call, task-specific model routing lifts feedback quality, and a provider-agnostic architecture keeps the product resilient to any single provider outage.
What we built it on.
Every platform in the stack earns its place against one constraint: feedback has to reach the rep while the call is still in progress.
- Recall
- Desktop recording, running locally on the rep's machine. Capture happens on the desktop rather than through a bot that joins the meeting, so nothing shows up as an extra participant and capture is independent of which conferencing tool the call is on.
- Deepgram
- Streaming speech-to-text. Converts the live audio into accurate transcripts within moments, the foundation every downstream insight depends on.
- Claude
- Carries the analysis tasks that need the full arc of the conversation held in context, working against the cached transcript rather than isolated snippets.
- Gemini
- Handles the subset of analysis tasks where it measured out ahead in our per-task evaluations.
- OpenAI
- Routed the task types it scored best on, so no single provider is a dependency for the product staying up.
- Supabase
- Authentication, persistence, and structured storage for calls and feedback history.
- Redis
- The in-memory hot path for live session state, which is what keeps real-time feedback genuinely real time.
The intelligence layer, end to end.
The pipeline runs end to end while the call is in progress: capture the audio, transcribe it, analyze it against everything said so far, and put something useful in front of the rep.
Capture at the source, with no bot in the room
Recall captures audio locally on the rep's machine instead of sending a bot in to join the meeting. No extra participant appears on the call, capture does not depend on which conferencing tool is being used, and the audio reaches the pipeline straight from the source.
Live transcription that keeps up
Deepgram's streaming speech-to-text converts speech into accurate transcripts within moments. Everything the platform knows about a call starts here, so latency at this layer sets the ceiling for the whole product.
Task-specific, multi-model routing
Rather than relying on a single provider, we orchestrated Claude, Gemini, and OpenAI, routing each analysis task to the model best suited for it. This improved feedback quality per task and removed dependence on any one provider's uptime.
Deeper context, lower latency and cost
Context caching across model calls lets the system retain awareness of the entire call rather than the last few sentences, while significantly reducing redundant token processing, response times, and operating costs.
A scalable, real-time data foundation
Supabase provides authentication, persistence, and structured storage for calls and feedback history, while Redis powers the hot path that keeps live feedback live.
Built around one hard constraint.
The engagement was structured around a clear split. The client owned the customer relationship and problem definition, interviewing sales reps and managers, while Sodelia owned the architecture and build. Insights from those ongoing conversations fed directly into what the platform analyzed and how feedback was surfaced.
On the engineering side, every decision was measured against the real-time requirement. Work that sat on the latency-critical path stayed under our direct control, from the audio feed through transcription to the cached model context, because that is where milliseconds are won or lost.
Feedback quality was validated with real users throughout, and the architecture was designed for handover. Because the model layer is provider-agnostic and analysis is decoupled from the capture and transcription pipeline, the platform can adopt newer models without a rebuild.
Real time, without compromise.
Building for real time is unforgiving. Every architectural decision either adds or removes milliseconds, and quality cannot come at the cost of speed. The delivered platform met both bars.
True real-time feedback
The full pipeline, from local capture through Recall to Deepgram streaming transcription, Redis-backed state, and cached model context, was engineered around a single commitment: feedback must arrive while it can still change the conversation.
Higher feedback quality
Context caching allowed the system to affordably retain the entire call rather than isolated snippets. Combined with task-specific routing across Claude, Gemini, and OpenAI, this produced coaching that reflects the full arc of the conversation.
Lower operating costs
Context caching substantially reduced redundant token processing across model calls. Per-call costs came down while response latency improved, a gain on both axes at once.
Operational resilience and future-proofing
The multi-model architecture means no single provider outage can take the product down, and the decoupled design lets the client swap in stronger models as they are released, protecting their investment as the landscape evolves.