Skip to navigation

Pricing, Credits & Rate Limits

View as Markdown

What you pay and how much you can use, on one page: plans, credits, per-API prices, and per-API rate limits. All prices are in Indian Rupees (₹) and exclude GST. Usage is rounded as described in the billing notes for each service.

Plans

Pay as you goProGrowthBusinessEnterprise
Monthly feeNone₹9,999₹49,999₹1,99,999Custom
SupportCommunityEmailEmailPriorityDedicated
Best forPrototyping & testingStartups & POCsProduction workloadsSustained high-volume productionScale deployments

Business includes everything in Growth, plus ₹1,99,999 worth of credits included and the best public API rates.

Choose or change a plan from the Sarvam Dashboard. For Enterprise pricing, contact us.


Credits

Sarvam offers ₹100 worth of free credits for every verified user on signup. These credits can be used across any of our APIs, explore, prototype, and build without upfront cost.

Credits are universal and never expire. Once exhausted, add more credits or upgrade your plan from the Sarvam Dashboard.

For commercial production rights when you ship generated audio (Bulbul v3, Content Studio exports, cloned voices), see Commercial Licensing.

If your credits are exhausted, API requests fail with 402 (insufficient_quota_error), which is separate from a 429 rate limit. You can add credits at any time, adding credits does not change your plan or rate limits.

  1. Add Credits: Top up from the Billing page at any time. Credits never expire.
  2. Upgrade Your Plan: Higher plans include bonus credits and increased rate limits.
  3. Enterprise: For volume discounts and custom billing arrangements, email support@sarvam.ai.

Prices by API

Rates are listed for each self-serve plan.

Language Models

The open-weight models (Gemma, GLM, DeepSeek, Kimi, MiMo) are served by Token Factory.

All prices are ₹ per 1M tokens and are the same on every plan. Reasoning tokens, where applicable, are billed as output tokens.

Sarvam Models

ModelInputCached inputOutputStatus
Sarvam 105B (sarvam-105b)₹15₹5₹60Available
Sarvam 105B Chat (sarvam-105b-conversations)₹15₹5₹60Available
Sarvam Prism (sarvam-prism)₹4—₹0Available

Sarvam Prism is billed on input tokens only: output is ₹0 because it returns probabilities, not text. The state is counted once per request, so asking 3 short questions about a 1,000-token state bills a little over 1,000 input tokens. See Token usage.

Open-Weight Models

ModelInputCached inputOutputStatus
GLM-5.3 (glm5.3)₹126₹20₹390Available
GLM-5.3 Flash (glm5.3-flash)₹13.5₹2.5₹45Available
Gemma 4 31B (gemma4)₹35₹10₹90Available
DeepSeek V4.1 Flash 1017 (deepseekv4.1-flash-1017)₹25₹0.5₹105Available
DeepSeek V4 Pro (deepseekv4-pro)₹115₹4₹350Beta
Kimi K3 (kimi-k3)₹270₹27₹1,350Beta
MiMo V2.6 Flash (mimo-v2.6-flash)₹12.5₹0.25₹25Beta
MiMo V2.6 Pro (mimo-v2.6-pro)₹40₹0.3₹80Beta

DeepSeek V4 Pro, Kimi K3, MiMo V2.6 Flash, and MiMo V2.6 Pro are in beta.

Speech to Text

Priced per minute, billed per second.

ServicePay as you goProGrowth
Speech to Text (real-time, streaming, batch)₹0.49₹0.45₹0.41
Speech to Text with Diarization (batch)₹0.59₹0.54₹0.50

Text to Speech

Priced per 1,000 characters, rounded to the nearest character. Rates apply to REST, HTTP streaming, and WebSocket streaming.

ServicePay as you goProGrowth
Bulbul v4 Flash₹1.00₹0.925₹0.85
Bulbul v3₹3.00₹2.85₹2.70
Instant Voice Cloning₹2.00₹2.00₹2.00

Text Processing

Priced per 1,000 characters, rounded to the nearest character.

ServicePay as you goProGrowth
Translate (formal and colloquial)₹2.00₹1.70₹1.50
Transliteration₹2.00₹2.00₹1.80
Language Identification₹0.35₹0.35₹0.31

Document Intelligence

Priced per page.

ServicePay as you goProGrowth
Document Digitization API₹0.50₹0.50₹0.50
Document Extraction API₹1.00₹1.00₹1.00

Document Translation

Priced per 1,000 billable characters, per target language. Character count is computed after parsing; each target language in a job is billed separately. Charges round up to the nearest rupee; minimum ₹1 when any billable text is present.

ServicePay as you goProGrowth
Document Translation API₹5.00₹5.00₹4.50

Dubbing

Priced per minute of source media, multiplied by the number of target languages. Duration is rounded to whole seconds before billing.

ServicePay as you goProGrowth
Dubbing API (editor_flow: false)₹40₹40₹38
Dubbing with Editor Flow (editor_flow: true)₹80₹80₹75

Editor Flow costs about twice the standard API rate and should only be enabled when the interactive editor workflow is required. See the Dubbing overview.


Rate Limits

Rate limits restrict the number of API requests your account can make within a given time window. Key points:

  • Per-account enforcement: limits apply to your account as a whole, not individual API keys. All keys share the same rate limit pool.
  • Continuous replenishment: capacity refills steadily over the window period rather than resetting all at once (token bucket model).
  • Per-API granularity: each API has its own independent rate limits. WebSocket, Document AI, and LLM APIs have different limits from standard REST APIs. Check your specific API below.

Your current limits are on the Dashboard → Rate Limits page.

Rate limits vary significantly by API type and plan. Review the limits for each API below before building your integration.

Speech to Text limits

Real-time REST

Pay as you goProGrowth
Rate Limit60 req/min100 req/min4,000 req/min

WebSocket Streaming

Pay as you goProGrowth
Rate Limit20 concurrent100 concurrent100 concurrent

Batch

Pay as you goProGrowth
Rate Limit20 req/min100 req/min500 req/min

For batch endpoints, avoid tight polling loops. Poll no faster than your plan’s rate limit allows, for example every 3 seconds on Pay as you go’s 20 req/min.

The SDK’s wait_until_complete() uses safe defaults out of the box:

  • Batch STT / Speech-to-Text-Translate: 5-second poll interval. See Polling Defaults.
  • Document Digitization (legacy document_intelligence): 2-second poll interval.

Document AI has no wait_until_complete() helper. You poll get_status() yourself, so pick your own interval (the examples use 5 seconds).

If you poll manually instead of using the SDK helper, match or exceed these intervals.


Text to Speech limits

Limits are the same for Bulbul v3 and Bulbul v4 Flash.

Real-time REST and HTTP Streaming

Pay as you goProGrowth
Rate Limit60 req/min200 req/min1,000 req/min

WebSocket Streaming

Pay as you goProGrowth
Rate Limit60 concurrent200 concurrent1,000 concurrent

Instant Voice Cloning limits

Pay as you goProGrowth
Sustained60 req/min200 req/min1,000 req/min
Burst100 req300 req1,200 req

The sustained figure is the steady-state rate; short spikes are allowed up to the burst figure before requests are rejected with a 429. Limits are subject to change.


Translation & Text Services limits

Text translation (POST /translate)

Pay as you goProGrowth
Rate Limit60 req/min200 req/min1,000 req/min

Transliteration and Language Identification share the same limits.

Document Translation

Job lifecycle endpoints (POST /translate/document/jobs, start, live-status, export, export/status):

Pay as you goProGrowth
Rate Limit200 req/min500 req/min1,000 req/min

Document Translation is asynchronous. Poll live-status every 10–15 seconds (see the overview) rather than tight loops that burn your per-minute quota.


Language model limits

Default models

Pay as you goProGrowth
Rate Limit50 req/min200 req/min1,000 req/min

Applies to: gemma4, glm5.3, deepseekv4.1-flash-1017

Sarvam-105B model

This large model has lower limits due to its compute requirements.

Pay as you goProGrowth
Rate Limit60 req/min200 req/min300 req/min

Applies to: sarvam-105b, sarvam-105b-conversations


Dubbing limits

Pay as you goProGrowth
Rate Limit5 req/min50 req/min300 req/min

Document AI limits

Document AI limits are set per operation and scale with your plan. Each limit assumes the number of pages per request shown below.

OperationPages per requestPay as you goProGrowth
Parse20200 req/min300 req/min400 req/min
Extract3030 req/min50 req/min60 req/min
Split50060 req/min120 req/min180 req/min
Classify20100 req/min150 req/min200 req/min

Exceeding Your Limits

REST rate limits (429 / 503)

When your account exceeds a rate limit, the API returns a 429 Too Many Requests response:

{
"error": {
"message": "Rate limit exceeded",
"code": "rate_limit_exceeded_error"
}
}

A 503 Service Unavailable can also occur under high backend load. Retry it the same way you would a 429, using a fixed exponential backoff. See Retry with exponential backoff for a reference implementation.

Exhausted credits (402)

A 402 Payment Required is not a rate limit. It means the organisation’s credit balance is empty, and no retry will clear it. Add credits on Settings → Billing and the account resumes immediately, with no key rotation or redeploy. See Billing & payments and Out of credits.

WebSocket connection limits

The limiter reacts to how fast new connections are opened, not how many are held open at once:

  • Connections opened in a fast burst can be rejected well below the concurrent ceilings listed above.
  • The same number of connections opened gradually (for example, 300ms apart) and held open simultaneously can succeed past those ceilings.

A rejected connection is closed, not queued. The close code is 1003, with this reason text:

Rate limit exceeded. Visit the API Dashboard to review and manage your subscription.

This differs from the 4xxx range described elsewhere on this site for application-specific closures.

The burst threshold is not a fixed number and can vary between runs at the same burst size. Space out new connections rather than relying on a specific count.


Upgrading Your Limits

1

Check your current limits

Visit the Dashboard → Rate Limits to see your exact per-API limits.

2

Upgrade your plan

Purchase a higher plan directly from the dashboard. Your rate limits increase immediately after upgrade, no downtime.

3

Need custom limits?

For limits beyond the Growth plan, contact our team for an Enterprise arrangement.