Inference APIs
Compare/Text-to-speech

Orpheus 3B vs OpenAI TTS (tts-1)

Orpheus 3B is an open-weight text-to-speech model you can call on this endpoint; OpenAI TTS (tts-1) is a closed model from OpenAI. Below: what each costs for three realistic workloads, the limits that apply, and when to choose which.

OpenAI figures are public list prices and documented limits, checked 2026-09-16 against the provider page. Inference APIs prices are read live from the price list.

Short answer
  • Cost: OpenAI TTS (tts-1) is cheaper in all three workloads, by 23%.
  • Limits: OpenAI: Rate limits scale with usage tier. 4,096 characters per request. Here: no per-minute or per-day caps.

Side by side

Orpheus 3BOpenAI TTS (tts-1)
Served byInference APIsOpenAI
Model authorCanopy LabsOpenAI
Model idcanopylabs/orpheus-3b-0.1-fttts-1
Price$19.50 / 1M characters$15.00 / 1M characters
CapabilitiesText to speech, Expressive, 8 voices, EnglishText to speech, 11 voices, mp3 / wav / opus
WeightsOpenClosed
StatusAvailableAvailable
LimitsNo per-minute or per-day request or token caps; usage draws on a prepaid balanceRate limits scale with usage tier. 4,096 characters per request.
300 characters → audio58.5 snot measured by us

What three workloads cost

List prices applied to the same work. The cheaper side of each row is in bold.

WorkloadOrpheus 3BOpenAI TTS (tts-1)Difference
One 1,000-word article (about 6,000 characters)$0.12$0.0923%
One hour of narration (about 54,000 characters)$1.05$0.8123%
One million characters (about 18 hours of speech)$19.50$15.0023%

OpenAI TTS (tts-1) is cheaper in all three workloads, by 23%.

When to choose which

Choose Orpheus 3B if
  • You want open weights: the same model can be moved to another host or self-hosted later
  • Pre-rendered English narration where expressiveness matters
  • You want inline emotion tags such as <laugh> and <sigh>
Choose OpenAI TTS (tts-1) if
  • Cost is the deciding factor; it is cheaper in every workload above
  • You want OpenAI's voices specifically
  • You need opus, aac or flac output

Measured speed

Median of three runs on 2026-09-16: a 300-character paragraph to mp3, timed from request to last byte. Expect ±30% with time of day. We did not measure OpenAI and do not quote other people's numbers; read "not measured" as unknown, not slow. Method and raw numbers: speed measurements.

Switching from OpenAI

Both speak the OpenAI wire format. The edit is the base URL, the key and the model id; then re-run your own prompts, because it is a different model.

Python · openai SDK
import os
from openai import OpenAI

# before: OpenAI
# client = OpenAI(base_url="https://api.openai.com/v1", api_key=os.environ["OPENAI_API_KEY"])
# MODEL = "tts-1"

# after: Inference APIs
client = OpenAI(base_url="https://api.inferenceapis.com/v1", api_key=os.environ["INFERENCE_API_KEY"])
MODEL = "canopylabs/orpheus-3b-0.1-ft"

resp = client.audio.speech.create(model=MODEL, voice="tara", input="Hello there")

More detail, including Node, LangChain and LiteLLM: switching OpenAI-compatible providers.

FAQ

Which is cheaper, Orpheus 3B or OpenAI TTS (tts-1)?

OpenAI TTS (tts-1) is cheaper in all three workloads, by 23%. The table above uses list prices: Orpheus 3B $19.50 / 1M characters; OpenAI TTS (tts-1) $15.00 / 1M characters.

Can I switch from OpenAI TTS (tts-1) to Orpheus 3B without rewriting code?

Yes, if you call it through an OpenAI-compatible client. Change the base URL to https://api.inferenceapis.com/v1, swap the API key, and set the model to canopylabs/orpheus-3b-0.1-ft. Because it is a different model, re-run your prompts and evaluations before moving production traffic.

What limits apply to OpenAI TTS (tts-1)?

Rate limits scale with usage tier. 4,096 characters per request. On Inference APIs there are no per-minute or per-day request or token caps; usage draws on a prepaid balance.

Spotted a price or limit that has changed? Tell us and we will re-check the provider page.