Step TTS 2 API

StepFun text-to-speech model with official voices, custom cloned voices, and voice tag controls.

StepFunAudio GenerationInternationalProprietary EndpointNew

About Step TTS 2

StepFun text-to-speech model with official voices, custom cloned voices, and voice tag controls.

Character counting follows StepFun pricing: one Chinese character counts as one character, two English letters count as one character, and two punctuation marks count as one character.

Also known as StepFun Step TTS 2, Step-TTS-2

text to speechvoice tagsmultilingual

Step TTS 2 specs

Model ID
step-tts-2
Provider
StepFun
Category
Audio Generation
Released
-
Input
Text
Output
Audio
Region
International
Endpoints
POST/v1/audio/speech
Alternate model IDs
stepfun/step-tts-2

Step TTS 2 API pricing

Live pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.

Type
Spec
Rate
Synthesis
per 10,000 characters
$0.40
Compare on the full pricing page

How to call the Step TTS 2 API

Step TTS 2 serves speech through POST /v1/audio/speech and returns playable audio. Send the text to speak as input with the model id step-tts-2. Get an API key from the EmpirioLabs dashboard.

cURL
curl https://api.empiriolabs.ai/v1/audio/speech \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "step-tts-2",
    "input": "Welcome to EmpirioLabs. Your build just finished."
  }' \
  --output speech.mp3
Python
import requests

response = requests.post(
    "https://api.empiriolabs.ai/v1/audio/speech",
    headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
    json={"model": "step-tts-2", "input": "Welcome to EmpirioLabs."},
)
with open("speech.mp3", "wb") as f:
    f.write(response.content)
Full Step TTS 2 API reference

Step TTS 2 API parameters

Request parameters supported by the Step TTS 2 API on EmpirioLabs. Defaults apply when a field is omitted.

ParameterTypeDefaultRange / valuesDescription
inputstring-max 1000Text to synthesize. Maximum 1,000 characters.
voiceenumlively-girllively-girl, vibrant-youth, soft-spoken-gentleman, magnetic-v...Official StepFun voice. Custom cloned voice IDs are also accepted via the API.
response_formatenummp3mp3, wav, flac, opus, pcmOutput audio format.
speednumber10.5 to 2Speech speed.
volumenumber10.1 to 2Output volume.
sample_rateenum240008000, 16000, 22050, 24000Output sample rate in Hz.
voice_labelobject--Emotion and speaking-style tags for step-tts-2.
pronunciation_mapobject--Optional pronunciation mapping.
markdown_filterbooleanfalse-Filter markdown syntax before synthesis.

Good to know

Maximum input is 1,000 characters. Supports official voice IDs, custom cloned voices, voice_label emotion tags, and voice_label style tags. The instruction parameter is only for stepaudio-2.5-tts.

Step TTS 2 API: common questions

How much does the Step TTS 2 API cost?

On EmpirioLabs, Step TTS 2 is billed pay as you go: Synthesis $0.40 per 10,000 characters. The live rate card on this page always matches what the API charges.

Which endpoint does Step TTS 2 use?

Step TTS 2 is served through POST /v1/audio/speech on api.empiriolabs.ai with standard bearer-token authentication.

Can I try Step TTS 2 in the browser before integrating?

Yes. The EmpirioLabs playground runs Step TTS 2 in the browser with the same parameters the API exposes, so you can test prompts before writing code.

How do I get a Step TTS 2 API key?

Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.

Ready to use better endpoints?

Check out our pricing or reach out if you want your own model deployed on our stack.