---
title: "How Evolve built a voice AI sleep coach, traced and evaluated on Langfuse"
date: August 18, 2026
description: Learn how Evolve traces Rest, a voice-and-text sleep coach based on the principles of CBT-I, on Langfuse, managing 100+ composed prompts and cutting the coach's memory misses in half
ogImage: /images/customers/evolve/evolve-og.png
tag: customer-story
author: Annabell
customerLogo: "/images/customers/evolve/evolve-light.svg"
customerLogoDark: "/images/customers/evolve/evolve-dark.svg"
customerQuote: "I always say it's like the CMS of prompts. It's a game changer."
quoteAuthor: "Martín Siniawski"
quoteRole: "CEO"
quoteCompany: "Evolve"
quoteAuthorImage: "/images/customers/evolve/martin-siniawski.jpg"
showInCustomerIndex: true
---

[Customer stories](/users) › Evolve

## Summary [#summary]

**Rest brings sleep coaching to thousands of users**

Evolve built Rest, a voice-and-text sleep coach based on the principles of CBT-I, circadian biology, and neuroscience.

**Tracing and prompt management in one place**

Langfuse traces the Vapi and OpenAI system end to end and manages 100+ dynamically composed prompts, including locale variants.

**Error analysis drives product improvement**

Structured error analysis surfaces failure modes and the right evaluators to improve the system over time.

**Automated monitoring for memory issues**

LLM-as-a-judge evaluators measure cross-session memory, and the first iterations cut misses in half.

## 70 million Americans show symptoms of insomnia

[Evolve](https://getrest.app/) is a YC-backed company that's been building products for about nine years. It started with [Podcast App](https://podcast.app/), one of the most-downloaded podcast apps on iOS with more than 15 million downloads, and they're continuing to innovate today.

Podcast App usage spiked late at night because listeners were using it to fall asleep. That led Evolve to investigate sleep care, where roughly 70 million Americans show symptoms of insomnia but access to CBT-I, which the American College of Physicians recommends as first-line treatment for insomnia, is scarce. Clinicians trained in it are few, waitlists can run for up to a year, and the care that is available is often small-group or costly one-to-one. Evolve works with leading sleep researchers and clinicians at institutions like UCSF, and saw an opportunity to bring science-backed sleep support to more people through voice AI, at greater scale and lower cost.

## Rest: a sleep expert that never sleeps

[Rest](https://getrest.app/) is Evolve's AI sleep coach. The program draws on the principles of CBT-I, circadian biology, and neuroscience, and was built with sleep experts. Its first part runs about eight weeks.

## Tracing a voice-and-text agent end to end

All of Rest's AI usage is [traced](/docs/observability/overview) in Langfuse. The voice experience runs on [Vapi](/integrations/no-code/vapi) as the orchestration layer, with ElevenLabs for voice synthesis, Deepgram for transcription, and OpenAI as the underlying LLM. Vapi has a native Langfuse integration and works out of the box. The text-chat experience is built and traced directly on OpenAI LLM APIs in Evolve's own backend. The text experience, and also non-conversational LLM work such as background extractors that process conversations after the fact, are traced through Langfuse as well.

  ![Vapi orchestrating a Rest voice turn through speech, Deepgram transcription, OpenAI reasoning, and ElevenLabs voice, with spans emitted to Langfuse](/images/customers/evolve/rest-vapi-tracing.png)

## Error analysis as an engineering practice

For both Ignacio and Martin, tracing their agents in Langfuse is the foundation for their most important eval practice: [error analysis](/academy/monitoring/error-analysis). It's how they find failure modes and act on them, either by implementing and testing a fix directly or by setting up an evaluator to monitor for it going forward.

Martin reviews traces himself. Working through flagged conversations in [annotation queues](/docs/evaluation/evaluation-methods/annotation-queues) surfaces which failure modes are quick fixes and which are "a whole big component we need to build... a multi-week, maybe even a multi-month exercise."

On top of manual review, Evolve runs [LLM-as-a-judge](/docs/evaluation/evaluation-methods/llm-as-a-judge) evaluators in Langfuse to measure how consistently the coach carries context forward.

## Deep dive: building the coach's cross-session memory

The most valuable thing error analysis surfaced was how much cross-session memory matters.

Users share context with the coach, like routines, preferences, and how their days look, and the coach notes it so the program can personalize around it. In a single conversation the coach was solid. The hard part is carrying context into the next conversation days later: cross-session memory, the thing that makes personalization compound over time. Early on, some context carried forward and some didn't, and the coach wasn't as consistent about it as the team wanted.

Consistency here is a trust and experience question: remembering what someone told you is a big part of feeling coached. The team decided cross-session memory had to be tackled from several angles and turned it into a project: building a next-generation memory system, a genuinely multi-month engineering effort. The [LLM-as-a-judge](/docs/evaluation/evaluation-methods/llm-as-a-judge) they set up in Langfuse flags conversations where context wasn't carried forward as expected, which meant that for the first time they could measure whether the new system was working. It was: the first iterations alone cut cross-session misses in half.

## Prompt management at scale

Beyond tracing, Evolve manages more than 100 prompts in [Langfuse Prompt Management](/docs/prompt-management/overview). These aren't static prompts. They are [composed](/docs/prompt-management/features/composability) on the fly, and Langfuse makes that composition easy to pull off: a foundational prompt sets up the overall conversation, and on top of that sits an agenda of two to four items, each its own prompt that can embed further prompts, including locale-specific variants (English and Spanish, adjusted for users in Argentina, Colombia, and Mexico).

  ![Layered Rest prompt architecture showing a foundational prompt, agenda items, embedded prompts, and locale variants composed at runtime in Langfuse](/images/customers/evolve/rest-prompt-composition.png)

The main win, per Ignacio, is that this gives non-engineers, people writing and refining prompts who don't have (or want) deploy access, a safe way to edit and ship prompt changes without touching code or GitHub. Staging and production [labels](/docs/prompt-management/features/prompt-version-control) let a prompt be tested before it's promoted live.

## Why Langfuse

Ignacio's team found Langfuse through Evolve's YC network, and it stuck. As Ignacio put it, "The centralization of tracing, reliably managed. And the prompt repository was a lucky punch, we jumped to Langfuse for tracing, and eventually we discovered the prompt repository as well, and it turned out to be a game changer for us."

Ignacio credits responsive support and steady, visible product improvement. Martin runs on Langfuse Cloud and points to the same standard: "we also know that you have very high standards." Beyond that, Evolve enjoys knowing [self-hosting](/self-hosting) is a potential future avenue.

## What's next

**Deeper eval coverage.** The product has grown substantially in complexity and sophistication over the past year, and the team is building out [datasets](/docs/evaluation/experiments/datasets) in Langfuse so that every core conversation flow is regression-tested as a standard part of shipping.

**More proactive issue detection,** including using the Langfuse [API](/docs/api-and-data-platform/overview), [MCP server](/docs/api-and-data-platform/features/mcp-server), and [CLI](/docs/api-and-data-platform/features/cli) inside Evolve's own internal tools and admin dashboard, to pull trace data into context faster and catch problems earlier.

**Possibly bringing the agent in-house.** Ignacio said Evolve is considering building a custom agent harness for more control over performance and latency of voice interactions. Observability in Langfuse stays on regardless - a key advantage of Langfuse's vendor-agnostic tracing.

## Ready to get started with Langfuse?

Join thousands of teams building better LLM applications with Langfuse's open-source observability platform.

- [Start free](/cloud)
- [Documentation](/docs)
- [Talk to an expert](/talk-to-us)

<!-- agent-instructions -->

---

## Agent Instructions

This page is part of the [Langfuse](https://langfuse.com) documentation, published as plain Markdown for AI agents. Every page is available as Markdown by appending `.md` to its URL, or by sending an `Accept: text/markdown` header. This page: `https://langfuse.com/users/evolve.md`.

### Querying these docs

If the answer is not on this page, query the documentation instead of guessing:

- **Semantic search** across all Langfuse docs, returning an answer with the relevant pages and excerpts. Ask a specific, self-contained question:

  ```bash
  curl -sG "https://langfuse.com/api/search-docs" --data-urlencode "query=How do I trace a LangGraph agent?"
  ```

- **Index of every page**: <https://langfuse.com/llms.txt>, with per-section indexes [llms-docs.txt](https://langfuse.com/llms-docs.txt), [llms-integrations.txt](https://langfuse.com/llms-integrations.txt), and [llms-self-hosting.txt](https://langfuse.com/llms-self-hosting.txt).

### Before writing Langfuse code

- **Install the [Langfuse Agent Skill](https://langfuse.com/docs/api-and-data-platform/features/agent-skill).** It encodes Langfuse's own best practices for instrumentation, prompt management, and evaluation, and materially improves results.
- **Read [What does a good trace look like?](https://langfuse.com/docs/observability/best-practices.md)** before instrumenting an application.
- **Verify endpoints, parameters, and response fields** against the [API reference](https://api.reference.langfuse.com) instead of inferring them from code examples.
- **Use the [Langfuse CLI](https://langfuse.com/docs/api-and-data-platform/features/cli)** (`npx langfuse-cli api <resource> <action>`) to read or write traces, prompts, datasets, and scores from the terminal.

Found an error in these docs? Please open an issue at <https://github.com/langfuse/langfuse-docs/issues>.
