Chariot-1-ASR Realtime

Hinglish speech to text, English words and all.

People switch between Hindi and English in the middle of a sentence, and Chariot-1-ASR Realtime writes it down that way, while they speak. You choose how the English words are written: in Latin letters, or in Devanagari.

Free to start · No card · Live audio or file upload · Codemix or native

Live transcriptChariot-1-ASR Realtime · balanced

0:00

The clip

Clip: FLEURS, CC BY 4.0

#1in Hindi, against every streaming API and every batch model we tested

2ways to write the English words: codemix keeps them in Latin letters, native in Devanagari

#1on real Hindi phone calls, against every system we compared

23%fewer errors in Hindi than Sarvam Saaras v4, the next best streaming API

Codemix or native

One sentence, two ways to write it.

The clip above, as Chariot wrote it in each style. Choose one for each session or file.

Codemix · style=codemix

यह device को हवा में move करके खिलाड़ियों को action और movement control करने की अनुमति देगा

English words stay in Latin letters, as they are written in English. The default.

Native · style=native

यह डिवाइस को हवा में मूव करके खिलाड़ियों को एक्शन और मूवमेंट कंट्रोल करने की अनुमति देगा

Every word in Devanagari, for screens and systems that expect one script.

Benchmark · October 2026

#1 in Hindi. English words included.

Hindi references spell English words in Devanagari, so every competitor’s output was converted the same way before scoring.

Against streaming APIs

Hindi, on the test sets every streaming API was run on. Chariot was never told the language. Word error rate, lower is better.

Chariot-1-ASR Realtimehigh accuracy12.90
Chariot-1-ASR Realtimebalanced14.33
Sarvam Saaras v4streaming API16.76
Google Gemini 3.5 Transcribe Livestreaming API17.22
Cartesia Ink-2streaming API17.55
Deepgram Nova-3streaming API23.79
ElevenLabs Scribe v2 Realtimestreaming API31.43
Soniox stt-rt-v5streaming API34.79

Real Hindi phone calls

Monsoon: unscripted two-person phone calls. Error rate with valid spelling variants accepted, lower is better.

Chariot-1-ASR Realtimestreaming, high accuracy5.04
Indic-Transcriberun by us5.57
Meta muse-voice-transcribethe leaderboard’s number6.90
OpenAI gpt-transcribethe leaderboard’s number8.27
ElevenLabs Scribe v2the leaderboard’s number8.45
AI4Bharat IndicConformerrun by us8.47
Soniox stt-async-v5the leaderboard’s number8.76
Microsoft Azure Speechthe leaderboard’s number9.43

All the Hindi results ›

Live audio and recordings

Set it once per session. Then talk.

Each session takes a mode, a language or none, and how English words are written. One price for all of it.

Balanced

Text arrives sooner. For voice agents, live captions and anything a person reacts to as they speak.

High accuracy

The model takes more context before it commits text. For call and meeting transcripts and dictation, where accuracy matters more than a short delay.

Any language, or the one you set

Set the language when you know what callers speak, or leave it out and the model detects it from the audio.

Codemix or native

Codemix keeps borrowed English words in Latin script. Native writes them in the script of the spoken language.

Phone audio

8 kHz mu-law and A-law straight from a phone line, or 16-bit PCM from 8 to 48 kHz.

Recordings too

Upload a recording in the web app and get its transcript back. WAV, MP3, FLAC, OGG, M4A, AAC or WebM.

API

From audio to text in a few lines.

One WebSocket. Send audio as you capture it, read text as it is recognised, and send input.done for the complete transcript.

Python
# pip install websockets
import json, websockets

url = ("wss://api.chariot.in/v1/asr/ws"
       "?language=hi&audio_format=pcm_16000&mode=balanced&style=codemix")
headers = {"chariotai-api-key": API_KEY}

async with websockets.connect(url, additional_headers=headers) as ws:
    await ws.recv()  # session.started
    for chunk in microphone():  # 100 ms of audio at a time
        await ws.send(chunk)
    await ws.send(json.dumps({"type": "input.done"}))
    async for message in ws:
        event = json.loads(message)
        if event["type"] == "transcript.delta":
            print(event["text"], end="")

Use cases

What people build with it in Hinglish.

Voice agents

Hear a caller who mixes Hindi and English while they are still speaking, and answer without a pause.

Live captions

Captions for classes and streams in the Hindi and English people actually speak.

Live captions ›

Call transcripts

Support and sales calls written down with their English words, as they were said.

Call transcription ›

Dictation and notes

Notes and messages in Hinglish, in the script you choose.

Voice typing ›

Your data

Your audio stays in India.

Speech to text runs on Indian infrastructure. Audio you send and its transcripts are processed in India under the Digital Personal Data Protection Act. Chariot is one of four teams selected under the IndiaAI Mission to build the country’s foundation models.

IndiaAudio and transcripts are processed in India.
DPDPHandled under India’s data protection law.
1 of 4Teams selected under the IndiaAI Mission to build foundation models.

FAQ

Questions, answered.

More in the speech to text docs.

Can Chariot transcribe Hinglish?

Yes. Speech that mixes Hindi and English is normal input for Chariot-1-ASR Realtime, live or recorded. It writes the Hindi in Devanagari and the English words the way you choose.

How are the English words written?

You choose the style. Codemix, the default, keeps the English words in Latin letters: यह device को हवा में move करके खिलाड़ियों को action और movement control करने की अनुमति देगा. Native writes them in Devanagari: यह डिवाइस को हवा में मूव करके खिलाड़ियों को एक्शन और मूवमेंट कंट्रोल करने की अनुमति देगा. Set style=codemix or style=native for a session or a file.

Which language should I set for Hinglish?

Set language=hi, the main language of the speech, or leave the language out and the model detects it from the audio.

How accurate is it?

In our October 2026 benchmark Chariot had the lowest Hindi word error rate of every system we tested, and the lowest on real Hindi phone calls (5.04). Hindi references spell English words in Devanagari, so every competitor’s output was converted the same way before scoring.

Does it work for Tanglish and other mixes?

Yes. Speech that mixes any of its Indian languages with English is normal input, Tamil, Bengali, Marathi and the rest, with the same two styles.

What is the difference between balanced and high accuracy?

Balanced sends text sooner, for voice agents and live captions. High accuracy takes more context before it commits text, which usually gives a more accurate transcript, for calls, meetings and dictation. Both cost the same.

Can I send phone-call audio?

Yes. Stream 16-bit PCM at 8 to 48 kHz, or telephony audio as 8 kHz mu-law or A-law, mono.

Can I transcribe a recording?

Yes. Upload it in Speech to Text in the web app: WAV, MP3, FLAC, OGG, M4A, AAC or WebM, up to 3 minutes and 20 MB a file. For a longer recording, stream it over the WebSocket, as the quickstart does: a session runs for up to three hours.

How is it billed?

1.5 credits per second of audio you send, in either mode, from the same credits as text to speech. Time with the connection open but no audio sent is not billed. Every session is saved to your workspace with its transcript and cost.

Where is my audio processed?

In India. Audio you send and its transcripts are processed on Indian infrastructure, under the Digital Personal Data Protection Act.

Every word, as it is spoken.

Start free with 10,000 credits, almost two hours of audio. No credit card.