60db Logo

60dB Realtime: Voice agents that listen, think and answer on one socket

60dB Realtime · OpenAI-compatible speech-to-speech

Stream the caller's voice in and get spoken replies back. Speech recognition, turn-taking, the LLM and voice run together on the server, with barge-in and function calling built in. Already on OpenAI Realtime? Change the URL, the model and the key.

per connected minute
$0.02
per 1M LLM tokens
$0.50
WebSocket for the whole turn
1
values to change from OpenAI
3

Tuned as one system, not three APIs stitched together

Each turn runs through our own models inside the session, so there is no hand-off between vendors to add delay.

  1. 01 · Hear

    60dB Garuda

    Streams speech to text as the caller talks, with noise reduction on by default.

  2. 02 · Decide

    Turn detection

    Server VAD or semantic VAD ends the turn; talking over the reply interrupts it.

  3. 03 · Think

    60dB Vyas

    Writes the reply and calls your tools, with optional memory and knowledge context.

  4. 04 · Speak

    60dB Kaak

    Streams the reply as audio in any 60db voice, including your cloned voices.

An OpenAI-compatible Realtime API

Same events, same session shape, same tool definitions. Point your existing client at 60db and keep your handlers.

Migrate from the OpenAI SDK
import { RealtimeAgent, RealtimeSession, OpenAIRealtimeWebSocket } from "@openai/agents-realtime";

const agent = new RealtimeAgent({
  name: "Assistant",
  instructions: "You are a friendly voice assistant.",
});

const session = new RealtimeSession(agent, {
  model: "60db-realtime-v1-mini",
  transport: new OpenAIRealtimeWebSocket({ url: "wss://api.60db.ai/v1/realtime" }),
});

// ek_ key minted on your server: POST https://api.60db.ai/v1/realtime/client_secrets
await session.connect({ apiKey: ephemeralKey });
SettingOpenAI60db
Base URLwss://api.openai.com/v1/realtimewss://api.60db.ai/v1/realtime
Modelgpt-realtime60db-realtime-v1-mini
KeyOPENAI_API_KEY60db API key (sk_…)

Built for real calls

Barge-in that ignores echo

Users interrupt mid-sentence. The server checks the words first, so the agent's own voice, coughs and “uh-huh” don't cut it off.

Function tools

Define tools in the session. The model calls them, your code runs them, and the spoken answer continues on the same socket.

Browser-safe keys

Mint short-lived ek_ keys on your server so a web page can connect without ever seeing your sk_ key.

Phone-ready audio

24 kHz PCM for apps and browsers, 8 kHz μ-law and A-law for telephony, in both directions.

Memory and knowledge

Turn on Smart Memory to recall past calls with the same user, or point a session at your document collections.

Fillers that hide latency

An optional acknowledgement, such as “जी, एक सेकंड”, plays while a longer answer is written.

Mixed-language speech

Transcribe several languages in one session. English and Hindi are on by default, and replies stay in the user's language.

Noise reduction by default

Speech is cleaned up before recognition, which helps on phone lines and speakerphones. Turn it off with one field.

Details: turn detection and barge-in, function tools, browser keys, memory, knowledge and fillers.

Priced per minute, not per leg

Speech-to-text and voice are included in the minute. Time is charged in 60-second ticks and prorated per second at close, from your workspace balance. A 10-minute call costs about $0.20 plus tokens.

See all pricing
Connected minute (speech-to-text and voice included)$0.02 / min
LLM tokens, input and output$0.50 / 1M tokens
Memory or knowledge lookup that adds context to a reply$0.0003 / lookup

Frequently asked questions

A speech-to-speech API over a single WebSocket. You stream microphone audio in and get spoken replies back, with turn detection, barge-in and function calling handled on the server. It speaks the OpenAI Realtime GA protocol.

Change three values: the URL to wss://api.60db.ai/v1/realtime, the model to 60db-realtime-v1-mini, and the key to your 60db API key. Events, session fields and tool definitions stay the same. OpenAI model names such as gpt-realtime are accepted and run on 60db-realtime-v1-mini.

60db-realtime-v1-mini is the current model and runs speech-to-text, the LLM and voice in one session. A larger tier for complex tasks is planned.

$0.02 per connected minute, which covers speech-to-text and voice, plus $0.50 per 1M LLM tokens. Time is charged in 60-second ticks and prorated per second when the session closes. A 10-minute call costs about $0.20 plus tokens.

Yes. Your server mints a short-lived ek_ key with POST /v1/realtime/client_secrets and the page connects with it. An ek_ key works only for Realtime sessions and expires on its own.

Not yet. Realtime runs over WebSocket today. For phone calls, use 8 kHz μ-law or A-law audio through your telephony stack, or a framework such as LiveKit or Pipecat.

Yes. Both frameworks ship an OpenAI Realtime integration; point its base URL at 60db and keep the rest of your agent. The docs have a full example for each.

Any 60db voice, including your own cloned and professional voices. Transcription takes one language or a list for mixed-language callers, and English plus Hindi is the default.