Model Capabilities

Voice Overview

The xAI Voice APIs offer a range of powerful voice capabilities, all powered by Grok, with enterprise-grade reliability and sub-second latency.

Speech to Speech

grok-voice-latest

Real-time speech-to-speech conversations with tool use, powered by Grok.

LatencySub-second
Realtime$0.08 / min
Endpoint/v1/realtime

Text to Speech

Generate speech with expressive multilingual voices, speech tags, and telephony codecs.

VoicesExpressive, multilingual
Pricing$15.00 / 1M chars
Endpoint/v1/tts

Speech to Text

New

Transcribe audio to text in 25 languages with batch and streaming modes.

Batch$0.10 / hour
Streaming$0.20 / hour
Endpoint/v1/stt

Speech to Speech

Build real-time, speech-to-speech voice agents over WebSockets, with low-latency turn-taking and tool use. For client-side apps, use Ephemeral Tokens to connect securely without exposing your API key.

import asyncio
import json
import os
import websockets

async def voice_agent():
    async with websockets.connect(
        "wss://api.x.ai/v1/realtime?model=grok-voice-latest",
        additional_headers={"Authorization": f"Bearer {os.environ['XAI_API_KEY']}"}
    ) as ws:
        # Configure voice and enable tools
        await ws.send(json.dumps({
            "type": "session.update",
            "session": {
                "voice": "eve",
                "instructions": "You are a helpful customer support agent.",
                "turn_detection": {"type": "server_vad"},
                "tools": [{"type": "web_search"}]
            }
        }))
        
        # Stream audio and receive responses
        async for message in ws:
            event = json.loads(message)
            if event["type"] == "response.output_audio.delta":
                # Play audio: base64.b64decode(event["delta"])
                pass

asyncio.run(voice_agent())

Demo Apps: Web Agent · Twilio Phone Agent · WebRTC Agent · iOS Tester App

Text to Speech

Convert text to spoken audio with a large roster of expressive voices. Inline speech tags (laughter, whispers, pauses) and output formats from high-fidelity MP3 to telephony μ-law. Unary requests or WebSocket streaming.

import os
import requests

response = requests.post(
    "https://api.x.ai/v1/tts",
    headers={
        "Authorization": f"Bearer {os.environ['XAI_API_KEY']}",
        "Content-Type": "application/json",
    },
    json={
        "text": "Welcome to xAI. How can I help you today?",
        "voice_id": "eve",
        "language": "en",
    },
)

with open("welcome.mp3", "wb") as f:
    f.write(response.content)

Real World Examples: LiveKit · Pipecat

Speech to Text

Transcribe audio files in a single call or stream over WebSocket. Use grok-voice-transcribe-1.0 or grok-voice-transcribe-2.0; the default is grok-voice-transcribe-2.0. 12 audio formats, word-level timestamps, multichannel, speaker diarization, Smart Turn end-of-turn detection, and 25 languages.

import os
import requests

response = requests.post(
    "https://api.x.ai/v1/stt",
    headers={"Authorization": f"Bearer {os.environ['XAI_API_KEY']}"},
    files={"file": ("recording.mp3", open("recording.mp3", "rb"), "audio/mpeg")},
    data={"model": "grok-voice-transcribe-2.0"},
)

print(response.json()["text"])

Real World Examples: Voximplant


Quick Start: Custom Voices

Clone a voice from a short reference clip, then use the resulting voice_id anywhere a built-in voice works:

import os
import requests

# 1. Create a custom voice from a reference audio clip (max 120s).
with open("reference.wav", "rb") as f:
    create = requests.post(
        "https://api.x.ai/v1/custom-voices",
        headers={"Authorization": f"Bearer {os.environ['XAI_API_KEY']}"},
        files={"file": ("reference.wav", f, "audio/wav")},
        data={"name": "Friendly Narrator", "language": "en"},
    )
voice_id = create.json()["voice_id"]

# 2. Use the custom voice for TTS.
speech = requests.post(
    "https://api.x.ai/v1/tts",
    headers={
        "Authorization": f"Bearer {os.environ['XAI_API_KEY']}",
        "Content-Type": "application/json",
    },
    json={
        "text": "Hello! This is my custom voice.",
        "voice_id": voice_id,
        "language": "en",
    },
)
with open("custom.mp3", "wb") as f:
    f.write(speech.content)

The custom voice_id also works with the streaming TTS WebSocket and the Speech to Speech realtime API. See the Custom Voices guide for the full API.


Voices

When using the Speech to Speech API or Text to Speech, you can choose from the full set of built-in voices. Each has its own personality and tone, and all of them can speak every supported language. Pick the one that best fits your application (eve is the default):

VoiceTone & Use CasesSample
carina
Soft, empathetic, and soothingWellnessSupport
zagan
Powerful, dramatic, and unmistakableCharactersNarration
helix
Bold, dynamic, and adrenaline-fueledCommentaryPodcast
orion
Rich, cinematic, and resonantNarrationAudiobooks
luna
Gentle, patient, and deeply nurturingEducationAssistant
iris
Friendly, upbeat, and naturally charmingSalesSupport
altair
Elegant, refined, and effortlessly premiumAdvertisingNarration
zenith
Sharp, focused, and drivenSalesAdvertising
perseus
Strong, confident, and trustworthyAdvertisingNarration
helios
Upbeat, energetic, and endlessly versatileAssistantWellness
lux
Grounded, calm, and quietly wiseWellnessNarration
kepler
Inventive, forward-thinking, and charismaticAdvertisingPodcast
rigel
Precise, professional, and calmly confidentAssistantSupport
Australian accent
cosmo
Bright, curious, and easy to followEducationPodcast
celeste
Compassionate, confident, and reassuringSupportAssistant
ursa
Friendly, warm, and steadfastAssistantPodcast
sirius
Quick-witted, clever, and playfulCommentaryCharacters
lumen
Warm, articulate, and engagingEducationAdvertising
castor
Charismatic, down-to-earth, and easygoingSalesSupport
naksh
Warm, thoughtful, and wiseAssistantSupport
Indian accent
atlas
Confident, commanding, and reassuringSalesAssistant
aurora
Serene, steady, and radiantSupportAssistant
liora
Calm, grounded, and luminousWellnessAssistant
ara
Warm and friendly
eve
Energetic and upbeat
British accent
leo
Authoritative and strong
British accent
rex
Confident and clear
sal
Smooth and balanced

Enterprise Compliance & Security

The xAI Voice APIs are built for production workloads with strict security and compliance requirements. All audio data is processed in real time and never stored or used for training.

SOC 2 Type II

Audited controls for security, availability, and confidentiality

HIPAA Eligible

BAA available for healthcare applications handling PHI

GDPR Compliant

Data processing agreements and EU data residency options

Data Residency

Regional processing for compliance requirements

High Availability

Multi-region infrastructure with custom SLAs for enterprise workloads

SSO & RBAC

SAML SSO, role-based access, and audit logging


Last updated: September 19, 2026