Microsoft MAI-Transcribe-2 — Microsoft AI's in-house transcription model, in public preview on Azure Speech. 60 languages with automatic language detection and mid-sentence code-switching, speaker diarization, word-level timestamps and custom vocabulary. Accepts WAV, MP3 and FLAC.
59 languages · benchmarked
MAI-Transcribe-2 (preview) is a speech-to-text model from Microsoft Azure. In our standardized benchmarks it reaches 7.72% word error rate, ranking #1 of 36 models tested. It supports 59 languages and runs at $0.002/min — cheaper than most alternatives.
Its nearest benchmarked alternative is Whisper Large V3 Turbo. Best suited for multi-speaker conversations, multilingual workloads, accuracy-critical work, and high-volume, cost-sensitive pipelines.
Overall Score
90.0
#1 of 36
Word Error Rate
7.72%
Character Error Rate
6.03%
Match Error Rate
6.92%
Word Info Lost
10.12%
Avg Latency
912ms
Benchmarks Run
35
overall WER · 36 models
MAI-Transcribe-2 (preview)
field · 35 models
lower-left is better
8 categories
WER
lower is better
Technical
1.1%
Medical
2.1%
Legal
2.9%
General
5.0%
Conversational
5.2%
Finance
7.1%
Code-Switching
16.4%
Noisy Environment
26.3%
| Category | WER | CER | MER | WIL | Latency | Benchmarks |
|---|---|---|---|---|---|---|
Code-Switching | 16.42% | 11.03% | 15.86% | 20.58% | 1.1s | 2 |
Conversational | 5.18% | 2.98% | 5.03% | 6.82% | 980ms | 2 |
Finance | 7.11% | 3.68% | 7.03% | 11.62% | 1.1s | 2 |
General | 5.03% | 4.87% | 4.97% | 8.06% | 876ms | 19 |
Legal | 2.93% | 1.72% | 2.86% | 3.91% | 931ms | 2 |
Medical | 2.10% | 0.93% | 2.10% | 3.22% | 931ms | 2 |
Noisy Environment | 26.25% | 19.23% | 19.97% | 26.37% | 761ms | 4 |
Technical | 1.13% | 0.50% | 1.13% | 1.59% | 1.1s | 2 |
5 accents
| Accent | WER | Benchmarks |
|---|---|---|
African | 24.62% | 1 |
Australian | 1.54% | 1 |
Indian | 9.52% | 1 |
British | 1.49% | 1 |
American | 5.66% | 1 |
Rate
$0.0017
/min
Per-second billing. Bring your own provider key and pay your provider directly — a 5% routing fee applies (first 100 min/mo free).
Set up BYOKCost estimator
1 hour
$0.10
10 hours
$1.01
100 hours
$10.08
1,000 hours
$100.80
Billed per second of audio processed.
Model ID
azure/mai-transcribe-2
Authenticate every request with your secret API key as a Bearer token. Issue a key from your dashboard.
Use it with your agent
Paste this into Claude Code, Cursor, Codex or any agent with a shell. It installs the CLI and the OpenTranscription skill, then transcribes with this model.
Quickstart
Upload your audio, create a job with this model, then poll the job or set a webhook_url to be notified when it completes.
Key parameters
file_path
string
required
Storage path returned by the upload step.
model
string
required
The model to run this job on.
models
string[]
Ordered fallback chain: primary first, then backups tried in order if a provider fails.
language
string
ISO 639-1 language code. Omit to auto-detect.
diarization
boolean
Label speakers (A, B, …) in the output.
word_timestamps
boolean
Per-word start, end and confidence. Defaults to true; send false to leave them out.
custom_words
string[]
Names, jargon and product terms to bias the model toward. Up to 1000 entries.
vocabulary_list_id
uuid
A vocabulary list saved in your workspace. Merged with custom_words when both are sent.
webhook_url
string
HTTPS URL notified with the result when the job completes. Delivered events are signed (X-OT-Signature).
title
string
Display name for this job in the dashboard. Falls back to the file name.
Response
A completed job returns the transcript in the OpenTranscription Unified Schema (OTUS).
Webhooks — skip polling
We POST a signed event to your webhook_url when a job completes or fails; verify the X-OT-Signature (HMAC-SHA256, reject if older than 300 s) and dedupe on the event id, then fetch the full transcript via GET /api/v1/transcriptions/{id}.
Rate-limited per tier — see the X-RateLimit-* response headers.
Full API referencefrom the same field
same benchmark, every match
Supported Languages
Supported Formats
Features
Limits
Max file size
250 MB
Max duration
2 h