Microsoft AI: MAI-Voice-2.1
microsoft/mai-voice-2.1
MAI-Voice-2.1 is Microsoft AI's highest-fidelity, most expressive text-to-speech model. It produces natural, studio-grade speech across 23 languages, with detailed prosody, nuanced expressiveness, and speaker consistency over long-form content. It is...
Price
No published list price.
Providers
Each row is one seller. Prices are the published rate from that source. A dash means that source did not publish the amount. Sorted by a 3:1 blend of input and output.
| Provider | Tag | Quant | Input | Output | Context | Uptime | Status | Source |
|---|---|---|---|---|---|---|---|---|
| Azure | azure | — | $22/1M | $0/1M | — | 100% | Live | openrouter-endpoints |
Monthly bill
Token models use the token counts. Image, video, and audio models use units times the flat rate.
No published price at list price for this workload
Every rate
| Unit | Input | Output | Flat | Confidence |
|---|---|---|---|---|
| token | Not published— | Not published— | Not published— | official |
Price history
input or flat output
Daily snapshots
| UTC date | Unit | Input | Output | Flat |
|---|---|---|---|---|
| 2026-10-01 | token | $22 | $0 | Not published— |
| 2026-10-02 | token | $22 | $0 | Not published— |
| 2026-10-03 | token | $22 | $0 | Not published— |
| 2026-10-04 | token | $22 | $0 | Not published— |
| 2026-10-05 | token | $22 | $0 | Not published— |
| 2026-10-06 | token | $22 | $0 | Not published— |
| 2026-10-07 | token | $22 | $0 | Not published— |
| 2026-10-08 | token | Not published— | Not published— | Not published— |
| 2026-10-09 | token | Not published— | Not published— | Not published— |
| 2026-10-10 | token | Not published— | Not published— | Not published— |
| 2026-10-11 | token | Not published— | Not published— | Not published— |
| 2026-10-12 | token | Not published— | Not published— | Not published— |
| 2026-10-13 | token | Not published— | Not published— | Not published— |
| 2026-10-14 | token | Not published— | Not published— | Not published— |
| 2026-10-15 | token | Not published— | Not published— | Not published— |
| 2026-10-16 | token | Not published— | Not published— | Not published— |
| 2026-10-17 | token | Not published— | Not published— | Not published— |
| 2026-10-18 | token | Not published— | Not published— | Not published— |
| 2026-10-19 | token | Not published— | Not published— | Not published— |
| 2026-10-20 | token | Not published— | Not published— | Not published— |
| 2026-10-21 | token | Not published— | Not published— | Not published— |
| 2026-10-22 | token | Not published— | Not published— | Not published— |
| 2026-10-23 | token | Not published— | Not published— | Not published— |
| 2026-10-24 | token | Not published— | Not published— | Not published— |
| 2026-10-25 | token | Not published— | Not published— | Not published— |
| 2026-10-26 | token | Not published— | Not published— | Not published— |
| 2026-10-27 | token | Not published— | Not published— | Not published— |
| 2026-10-28 | token | Not published— | Not published— | Not published— |
| 2026-10-29 | token | Not published— | Not published— | Not published— |
| 2026-10-30 | token | Not published— | Not published— | Not published— |
Alternatives
Call this model
OpenRouter id microsoft/mai-voice-2.1. InferenceList does not send the request.
curl
curl https://openrouter.ai/api/v1/chat/completions \
-H "Authorization: Bearer $OPENROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"microsoft/mai-voice-2.1","messages":[{"role":"user","content":"Hello"}]}'
JavaScript
await fetch("https://openrouter.ai/api/v1/chat/completions", {
method: "POST",
headers: {
Authorization: "Bearer " + process.env.OPENROUTER_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "microsoft/mai-voice-2.1",
messages: [{ role: "user", content: "Hello" }],
}),
});
Python
import os, json, urllib.request
req = urllib.request.Request(
"https://openrouter.ai/api/v1/chat/completions",
data=json.dumps({"model": "microsoft/mai-voice-2.1", "messages": [{"role": "user", "content": "Hello"}]}).encode(),
headers={"Authorization": "Bearer " + os.environ["OPENROUTER_API_KEY"], "Content-Type": "application/json"},
)
print(urllib.request.urlopen(req).read().decode())