What every voice call actually costs — across every carrier, speech, and model vendor. So finance can price contracts on real numbers, protect gross margin, and stop guessing at the gap between what they signed and what they deployed. Inside Vapi, Retell & Bland, or fully BYOK.
Website · Docs · Dashboard · 𝕏 @FloeLabs
Start free. $3 Welcome Credit — 300 API credits on signup, no card required. Your agent makes its first paid call in minutes. Get started →
Every voice call your agent makes spends money across a dozen vendors — the phone carrier, the speech-to-text, the language model, the voice, the tools. Those bills arrive separately, in different units, on different days, and your finance team spends weeks stitching them together to answer one question: what did this client, this campaign, this call actually cost us?
Floe costs every call the moment it ends, tags the spend to the client and campaign, and shows you your margin per contract — so you can price the next deal on actuals instead of a blended guess, and walk into your next raise with your unit economics under control. (A token router meters only the LLM slice — ~40% of the bill — and is blind to the other 60%; on BYOK, platform dashboards report provider costs as $0. Floe is the join across every vendor, plus enforcement where it's in the path. Gateway overhead: 38ms p50 / ~180ms p99 on live keyless production traffic.)
A single spoken turn spends across speech-to-text, an LLM, and text-to-speech. Same key, same task budget for all three — a token router only ever sees the middle step.
# 1 · Transcribe (Deepgram) — through the Floe proxy
curl -X POST https://credit-api.floelabs.xyz/v1/proxy/fetch \
-H "Authorization: Bearer $FLOE_API_KEY" \
-H "Content-Type: application/json" \
-H "X-Floe-Task-Id: call-8842" \
-d '{"url":"<DEEPGRAM_STT_ENDPOINT>","method":"POST","body":"{...audio...}"}'
# 2 · Reason (any LLM) — keyless: only your Floe key, same ledger
curl -X POST https://credit-api.floelabs.xyz/v1/chat/completions \
-H "Authorization: Bearer $FLOE_API_KEY" \
-H "Content-Type: application/json" \
-H "X-Floe-Task-Id: call-8842" \
-d '{"model":"openai/gpt-4o","messages":[{"role":"user","content":"Book Friday at 2pm."}]}'
# 3 · Speak (ElevenLabs) — through the Floe proxy
curl -X POST https://credit-api.floelabs.xyz/v1/proxy/fetch \
-H "Authorization: Bearer $FLOE_API_KEY" \
-H "Content-Type: application/json" \
-H "X-Floe-Task-Id: call-8842" \
-d '{"url":"<ELEVENLABS_TTS_ENDPOINT>","method":"POST","body":"{...text...}"}'All three legs share X-Floe-Task-Id, so one budget caps the whole conversation — STT, LLM, and TTS together, on one ledger. Each response returns its cost in X-Floe-Payment-Amount (e.g. 0.0125).
MCP (zero install) — add to Claude Code / Cursor / Claude Desktop:
claude mcp add --transport http floe https://mcp.floelabs.xyz/mcp \
--header "Authorization: Bearer YOUR_FLOE_KEY"Prefer an SDK? npm install floe-agent or pip install floe-agentkit-actions — see Repos.
1 · Inside your platform (Vapi / Retell / Bland). Documented hooks, zero platform cooperation:
- Custom-LLM slot → Floe — pre-call enforcement on ~60% of call cost. Recipes: vapi-custom-llm, retell-custom-llm. (Bland has no self-serve custom LLM — govern it with Reconcile Mode below.)
- Custom voice & transcriber → Floe (early access) — metered STT/TTS in your provider dropdown. Behind a flag until we publish a media-path latency benchmark — we don't promote a leg in your audio path ahead of its numbers. Recipe: vapi-voice-metered.
- End-of-call webhooks → Reconcile Mode — every call reconciled onto one ledger at call-end; cross your cap and the next call is denied. A runaway campaign dies at call N, not call 10,000.
- Coverage Score, per agent, in the dashboard — % of spend enforceable pre-call vs reconciled vs dark, and which leg to move to raise it.
Pre-call where we're in the path. Circuit breaker everywhere else. Setup → · Graduate to 100% coverage →
2 · BYOK. Keep your vendor accounts and keys — Floe meters, joins, and caps on top. Route just the LLM leg by changing the base URL and key:
from openai import OpenAI
client = OpenAI(
base_url="https://credit-api.floelabs.xyz/v1", # was https://api.openai.com/v1
api_key=os.environ["FLOE_API_KEY"], # your Floe key — not an OpenAI key
)
# every call now bills to your Floe balance, under your spend capsOpenAI-compatible, so it works from any SDK. → Add Floe to your existing pipeline
3 · Keyless. One Floe key, no per-vendor accounts, welcome credits. Fund by card; settlement is automatic. Best for prototypes and net-new agents.
| Category | Services |
|---|---|
| Compute | Venice AI · OpenAI · Anthropic · Google Gemini · z.ai · Kimi |
| Voice | Deepgram · ElevenLabs · Venice AI · Floe Phone via Twilio (live) |
| Image | Venice AI (generation, upscale, edit, background removal) |
| Web | Firecrawl (search + scrape) |
| Search | Exa · Parallel AI · Tavily |
| Browser | Hyperbrowser · Browserbase · Anchor Browser |
| Agent tools | AgentMail · Pinata · PostalForm |
| Framework | Status | How |
|---|---|---|
| Coinbase AgentKit | GA | Native — floeActionProvider |
| LangChain | GA | getLangChainTools adapter |
| Vercel AI SDK | GA | getVercelAITools adapter |
| Claude / Cursor | GA | floe-mcp-server |
| CrewAI | Beta | via MCP server |
| OpenAI Agents SDK | Preview | MCP fallback; native adapter in progress |
| Plain HTTP/REST | GA | anything that speaks HTTP |
| Repo | What it does | Install |
|---|---|---|
| agentkit-actions | TypeScript SDK — spend controls, metered vendor calls, agent awareness | npm install floe-agent |
| agentkit-actions-py | Python SDK — full parity | pip install floe-agentkit-actions |
| floe-guard | Local budget guardrail — hard-stops a runaway agent before it overspends | pip install floe-guard |
| floe-cookbook | Runnable end-to-end agents, including voice | git clone |
| floe-mcp-server | MCP server for Claude, Cursor, any MCP agent | Setup |
| eve-floe | Reference voice agent built on Floe | git clone |
Voice recipes (in floe-cookbook): vapi-custom-llm · retell-custom-llm · vapi-voice-metered
Built by operators from Airwallex, Western Union, eBay, Kado, Transak. hello@floelabs.xyz