

















Speech to text
built for people
Realtime STT-1 returns words and emotion in under 70 ms.












Try it now
Open the playground ↗Ask your agent to add Inworld.
Realtime STT-1
STT docs ↗Hear how they said it, not just what. Every transcript can carry the speaker's emotion, style, age and accent.
- Nari Labs Qwen3 ASR Fast, 47 ms · $0.12 an hour
- Soniox STT RT v5, 45 ms · $0.12 an hour
- Inworld Realtime STT-1, 66 ms · $0.10 an hour, paid plans; $0.15 on demand
- Deepgram Nova 3, 85 ms · $0.46 an hour
- Deepgram Nova 2, 86 ms · $0.35 an hour
- Deepgram Flux, 99 ms · $0.46 an hour
- Deepgram Flux Multilingual, 98 ms · $0.47 an hour
- Together AI Parakeet TDT 0.6B v3, 98 ms · $0.09 an hour
- ElevenLabs Scribe v2 Realtime, 121 ms · $0.39 an hour
- AssemblyAI Universal 3.5 Pro, 168 ms · $0.45 an hour
- Together AI Whisper Large v3, 201 ms · $0.21 an hour
- Smallest Pulse, 205 ms · $0.24 an hour
- xAI Grok STT, 224 ms · $0.20 an hour
- Reson8 resonant-1, 252 ms · $0.12 an hour
- Speechmatics Linden 1, 269 ms · $0.40 an hour
- Google Gemini 3.5 Transcribe Live, 315 ms · $0.54 an hour
- Mistral Voxtral Mini Transcribe Realtime, 407 ms · $0.36 an hour
- OpenAI GPT Realtime Whisper, 598 ms · $1.02 an hour
- Gladia Solaria 1, 641 ms · $0.75 an hour
- OpenAI GPT-4o mini Transcribe, 704 ms · $0.18 an hour
- Google Chirp 3, 769 ms · $0.96 an hour
- OpenAI GPT-4o Transcribe, 780 ms · $0.36 an hour
- Google Chirp 2, 907 ms · $0.96 an hour
emotion sad · style whispering
direction speak softly and slowly with warmth to someone who just got hard news
I'm so sorry to hear that. [sigh] Let's figure this out together.
voice Sarah · model inworld-tts-2
Set how sure STT-1 must be that the speaker has finished, and list up to 100 names and terms your users say.
// first message on the STT WebSocket { "transcribeConfig": { "modelId": "inworld/inworld-stt-1", "audioEncoding": "LINEAR16", "sampleRateHertz": 16000, "language": "en", "endOfTurnConfidenceThreshold": 0.6, "prompts": [ "Inworld", "café con leche" ], "inworldSttV1Config": { "vadThreshold": 0.15, "minEndOfTurnSilenceWhenConfident": 160, "maxTurnSilence": 300 }, "voiceProfileConfig": { "enableVoiceProfile": true, "topN": 3 } } }
wscat -c 'wss://api.inworld.ai/stt/v1/transcribe:streamBidirectional' \
-H "Authorization: Basic $INWORLD_API_KEY"
# Send config as first message:
{
"transcribeConfig": { "modelId": "inworld/inworld-stt-1",
"audioEncoding": "LINEAR16",
"sampleRateHertz": 16000,
"language": "en-US",
"voiceProfileConfig": {
"enableVoiceProfile": true
}
}
}List up to 100 names and domain terms in the prompts field, and STT-1 biases recognition toward them.
STT-1 transcribes 30 languages over both streaming and sync, and detects which one is being spoken.
Async jobs take files up to 512 MB by URL or upload, and video files can go in as they are.
Bias recognition toward a language you already know the user speaks.
With ZDR, audio and transcripts are processed in real time and never stored.
Speech to speech listens, reasons and talks on one WebSocket, and STT-1 does the listening, with the voice profile alongside the transcript.
Every word, labeled with who said it and when. Live over WebSocket, or async for recordings.
Welcome back to Weekend Kitchen. I'm here with Dennis, who swears he can make pasta in ten minutes.
Nine, actually. I timed it last night.
Nine? Okay, show me.
Boil the water first. That's the whole secret.
wordTimestamps[18] {"word": "Nine", "startTimeMs": 6950, "endTimeMs": 7660, "speaker": 1}Start building
Speech to text built for people runs on Inworld. Who are you building for?
Questions
What is Realtime STT-1?
Realtime STT-1 is Inworld AI's speech to text model for live voice apps. It transcribes 30 languages, streams over WebSocket, and returns a voice profile with each transcript, so your app hears how something was said as well as the words. On Coval's public benchmark, it reached a final transcript faster than 24 of 28 models.
What is voice profiling and what signals does it detect?
Voice profiling in Inworld AI's Realtime STT-1 speech to text model returns paralinguistic signals with each transcript: emotion (tender, sad, calm, neutral, happy, angry, fearful, surprised, disgusted), vocal style (whispering, normal, singing, mumbling, crying, laughing, shouting, monotone), accent and age (kid, young, adult, old). Each label comes with a confidence score, and topN sets how many labels per category come back. Voice profiling works with every STT model on the Inworld STT API.
How does Realtime STT-1 work with Realtime TTS-2 and speech to speech?
In speech to speech, your app reads the voice profile of Inworld AI's Realtime STT-1 speech to text model from each transcription event and can pass it to the LLM as context, for example that the user sounds sad and is speaking softly. The LLM can then write one direction in plain words at the start of its reply, such as speak softly and slowly with warmth, and a sound such as [sigh] where it happens, and Realtime TTS-2 performs both. Speech to speech runs the conversation as one connection that listens, reasons and talks.
Which languages does Realtime STT-1 support?
Inworld AI's Realtime STT-1 speech to text model transcribes 30 languages, and the synchronous endpoint and WebSocket streaming both run it. It detects the spoken language automatically, so a speaker can switch language mid-conversation, and voice profiling signals are returned alongside the transcript. Language hints help when you know which language a speaker will use, and up to 100 names and terms can be passed as prompts to improve recognition of words specific to your app.
How much does Realtime STT-1 cost?
Inworld AI's Realtime STT-1 speech to text costs $0.10 per hour of audio on paid plans and $0.15 on demand, up to 10× lower per hour than the $1.02 OpenAI lists for GPT Realtime Whisper. The rate falls further on Enterprise, where one combined commit lowers STT, TTS and LLM rates together.
Does Realtime STT-1 support realtime streaming?
Yes, Inworld AI's Realtime STT-1 speech to text model streams over a bidirectional WebSocket for live audio, and it also transcribes complete files synchronously. Long recordings and video, up to 512 MB per job, go through async jobs. On Coval's public benchmark, Realtime STT-1 returns a final transcript in under 70 ms, up to 13× sooner than Google Chirp 2.
Does Realtime STT-1 support speaker diarization?
Yes, Inworld AI's Realtime STT-1 speech to text model supports speaker diarization as an experimental feature. Set enableSpeakerDiarization and includeWordTimestamps, and every entry in wordTimestamps carries a speaker number, starting at 0, on the WebSocket stream and in async jobs. Each speaker keeps one number for the whole stream or job, and numbers are not carried across separate streams.
Does Realtime STT-1 support Zero Data Retention (ZDR)?
Yes, Inworld AI's Realtime STT-1 speech to text supports zero data retention, so audio and transcripts are processed in memory and redacted from our logs as soon as processing completes. Usage metadata such as the model and timestamps is kept for billing. Zero data retention is available on Enterprise plans and as an add-on on the Growth plan, and Enterprise adds EU and India data residency.

