Skip to main content
Back to blog
Engineering2026-05-289 min read

How Floo navigates phone trees while your team sleeps

The architecture behind Navigate IVR, DTMF detection, hold-music recognition, and the safety rails that make sure we never press the wrong key.

EM

Elina Müller

Engineering

How Floo navigates phone trees while your team sleeps

Insurance billing, supplier follow-ups, government filings, if you've ever lived in B2B, you know the pain of phone trees. Floo's Navigate IVR feature lets an agent dial a number, work the menu, wait on hold, and bridge to your team only when a human picks up.

Three problems we had to solve

  • Recognising you're in an IVR (vs talking to a human)
  • Reliable DTMF detection in noisy audio
  • Knowing when to bail without burning minutes on hold

DTMF detection in messy audio

Phone-tree audio is wildly variable, SIP encoding, mobile carriers, music-on-hold bleed-through. Standard Goertzel-filter DTMF detectors miss 8-12% of touch tones on noisy lines. We layered a small CNN on top of the Goertzel output that pushes detection to 99.4% on our test set.

We open-sourced the training data (5,000 labeled IVR recordings) on Hugging Face. Search 'floo-ivr-dtmf-set'.

Hold-music recognition

When the menu says 'please hold,' the agent goes silent. But how does it know the human picked up? We trained a tiny audio classifier on 12k hours of phone-call audio, hold music vs human speech vs ringtones. Latency is 280ms; accuracy is 97.1%.

We tried to do this with VAD alone. It worked maybe 70% of the time. Music classifiers are the answer.

Safety rails

We never press a key without the model being >0.9 confident on the menu option. If it dips below, the call halts and pages your team. We also cap any single hold at 30 minutes, configurable per agent.

EM

Written by

Elina Müller

Engineering

Elina builds the voice runtime at Floo. Loves low-latency systems, hates phone trees, hence this project.

Share this post

Want to hear Floo in action?

60-second demo, no card required.

Build Your First AI Voice Agent

Create an AI voice agent for inbound calls, outbound campaigns, customer support, lead qualification or appointment booking and test your first conversation before going live.

Start building your first agent