Dialtrace Maps Carrier and Voice AI Pipeline Latency on One Timeline
Summary
Dialtrace is a zero-dependency command-line tool for finding where callers wait during voice AI phone calls. It combines carrier timestamps with user-defined stages such as speech-to-text partial results, LLM completion, and text-to-speech output, separating telephone timing from the AI pipeline. In the project’s example Telnyx call from a US number to a Dutch mobile, the caller waited 640 milliseconds after answering before hearing audio even though no AI was in the path; a separate demonstration reports 1,492 milliseconds from answer to first audio, including 1,378 milliseconds attributed to the pipeline. The tool records API round-trip time, setup and ring, media-path time, pipeline time, webhook delivery lag, clock skew, and hangup call-quality statistics such as MOS, jitter variance, and packet loss. It stores runs as JSON and can render them as SVG or replay them later. Developers can mark their own stages by POSTing labels to a local receiver, while labels such as `tts.first_byte` and `first_audio` identify when silence ends. Dialtrace currently integrates with Telnyx Call Control and can use a temporary cloudflared tunnel for webhooks. Its measurements do not include RTP-level, second-by-second quality, one-way audio, or waveform analysis, and Call Control does not expose a ringing event, so setup and human ring time may remain combined. The project is released under the MIT license and describes a carrier-agnostic timeline interface for future providers.