- ₹50,000 a month → T3 at ₹3 / minute.
- ₹1,00,000 a month → T1 at ₹1 / minute. Call insights are on by default at ₹0.20 / minute; you can turn them off in Billing.
T3 and T1 are minimum monthly spend plans, funded upfront. Paid workspace usage counts towards the minimum; any unused minimum is settled from the wallet at the end of the billing month. Promotional credit does not count towards the minimum. Extra top-up credit carries forward. Existing agreements keep their recorded terms. All prices exclude GST.
Enterprise: Custom voices, Dedicated deployment, SLA, A dedicated point of contact. Contact us for a custom plan. Top up anytime at the same rate.
Your workspace’s agreed contract determines your charges. Advertised rates do not replace an existing contract. T5 and T3 include Mirai phone calling and call insights. T1 adds optional Mirai phone calling at ₹0.30 / minute only on Mirai-managed phone calls. BYO telco, WhatsApp and browser calls have no Mirai telco charge. T1 call insights are on by default at ₹0.20 / minute and can be turned off in Billing.
One stack on every tier
Every tier runs on the same Mira stack. The price is the only difference. Choose a tier for what you want to commit to, not for what the calls can do. Single-prompt and node-based agents are available on every tier. A node-based agent takes phone calls, browser calls and campaigns like any other agent, and is billed the same way. Create one in Agent Studio (Create agent → Node-based) from a description, call recordings, or both.Your plan
A company is on one plan, and every call it makes is billed at that plan’s rate.- Start today on T5. Complete Go live in the console — it is self-serve, with no monthly commitment. You pay for the minutes you use from prepaid credit.
- Or commit for a lower rate. Choose T3 (₹50,000 a month) or T1 (₹1,00,000 a month) when you go live. A company already on T5 moves up by contacting us today; moving up from the console’s Billing page is coming.
- Commitments are minimum spend. Fund the minimum upfront each month. Paid workspace usage counts towards it. At the end of the billing month, only the unused minimum is settled from your wallet. Extra top-up credit carries forward. Promotional credit does not count towards the minimum. Existing agreements retain their recorded terms.
- Top up at the same rate. Credit you add is spent at your plan’s rate.
What a minute costs
Billing is pro-rated in 10-second blocks, rounded up, with a one-block minimum. Rates are quoted per minute; the billing unit is a sixth of one. A part-block is a whole block, and nothing smaller than 10 seconds is billed.
Every tier: All models and features. Single-prompt and node-based agents. Bring your own telco, WhatsApp or browser calling. T5: Mirai phone calling and call insights included. T3: Mirai phone calling and call insights included. T1: Optional Mirai phone calling: ₹0.30/min. Call insights on by default: ₹0.20/min; turn them off in Billing. All prices exclude GST. On T1 only, Mirai phone calls add ₹0.30 / minute and insights add ₹0.20 / minute while enabled.
Metering
duration_secs on the call object is the true
media duration in seconds. Voice AI and T1 insights round it up to the
next 10 seconds, with a one-block minimum. T1 Mirai phone calling uses the same
10-second blocks. If your existing agreement has its own provider rates, that
provider’s billing block applies instead. Voice AI and insights are added
together, then rounded to the paisa. The phone calling charge is rounded on its
own and added to the total. A call that never connected costs nothing; see the
table below.
cost.amount_inr on the
call object and the debit row in the
ledger are the real figures. Use the formula to
forecast, not to reconcile.
What is and is not billable
The rule underneath: if media went live, you pay for it. A voicemail
consumed a real dial, real TTS and real carrier time, so it is billed. A call
our own pipeline broke is not.
Forecasting a month
Take your answer rate and your mean answered-call duration. Round each answered call up to a whole 10 seconds first, then multiply. The rounding is small, but it never cancels out, so averaging the seconds first will under-forecast slightly.Wallet
Billing is prepaid against one INR wallet per workspace.- Debits happen at call end, one ledger row per billable call, carrying the
call_id. - Top up from the console. Once your company has gone live, add credit from the Billing page of the console whenever you need it. On T3 and T1, each monthly commitment is credited to the same wallet. Before you go live, your Mirai contact credits the workspace.
- Top-up credit carries forward. The monthly minimum still applies to T3 and T1. In Billing, review paid usage, the remaining minimum and promotional credit. Each month-end shortfall appears separately in your wallet statement.
- The ledger is the source of truth for reconciliation:
GET /v2/wallet/transactions.
At zero balance
Before dialling, we check the wallet can cover at least one minute at the call’s tier. Billing is per 10-second block, but the pre-dial check asks for a full minute of headroom. If the wallet cannot cover it:402 Payment Required
- No phone rings. No charge. No call object is created.
-
The
Idempotency-Keyis not consumed — retry with the same key after topping up. - Calls already in flight are not killed. A call that started with credit runs to its natural end and then debits. Your balance can therefore dip below what the pre-dial check implied during a busy minute.
-
Inside a campaign this is not an error. The campaign
pauses itself with
pause_reason: "insufficient_balance", keeps every contact’s place, and continues from there once you top up and start it again.
402 mid-campaign is an expensive way to find out.
- Python
- Node.js
Setting the tier
Your plan sets the tier. A key created after your company goes live carries your plan’s tier, and every call and every campaign placed with it inherits that tier — leavetier out of the request:
tier, it must be your plan’s. A call at any other tier is
refused with 403 contract_unavailable before anything is dialled. There is no
per-call switch to a different rate: to change what your calls cost, change
your plan.
Before you go live, you are on T5. You can look around the
sandbox without signing up. The first
time you test, create or generate something, it asks for your work email.
Confirm that email from the message we send, and your sandbox workspace gets
its ₹200 of starter credit. Every call and campaign in it is billed at T5, ₹5
a minute, whatever tier your key carries or your request sends.
When you read a call, it shows the tier it ran at next to its cost, so you
can always see which rate card it was billed under. A
campaign takes its tier at create time, and every call it
places inherits it.
Model API pricing
Text to speech is priced per character — see TTS billing. Speech to text is priced per second of audio — see STT billing. The LLM is priced per token:
Input, cached input and output tokens are priced separately. Cached input is the part of a prompt that repeats the start of a recent request, so it is read from cache instead of processed again. Prices are billed in INR; USD amounts are provided for reference. Top-ups use the same rates.
Rate limits apply per workspace across all API keys. Shared endpoint. No contractual SLA. Monthly commitments are credited to your wallet. Unused credit never expires. All prices exclude GST.
Enterprise: Custom volume pricing, rate limits, dedicated endpoint and SLA. Top up anytime at the same rate.
Contact us to activate your LLM plan. Your workspace’s agreed contract determines your charges and limits.
Offline transcription
Transcribing a recorded call costs ₹18 per hour of audio on every tier. A job is charged once, when it completes, for the length of the recording to the millisecond, rounded up to the paisa: a five-minute call costs ₹1.50. Degraded and failed jobs are free. See pricing.AI flow drafts
Generating a flow from a brief or from call recordings is charged to your wallet at what the model’s provider reports it cost, plus 20%. Each response’scost says what was charged. The token rates below are
the published guide, and what an attempt is charged when the provider reports
no cost for it. The same rates apply on every tier.
- A draft from two example calls is larger: typically ₹8–12.
- A recording is priced as audio, which costs more than text, so a transcription is charged the provider’s reported cost plus 20% rather than a token rate. The audio is not stored.
- The cost of every attempt in a generation is added up and rounded up to the paisa once.
- A generation that fails (
422), or stops after the model had answered (503), is charged for what the model did. So is a recording in which no conversation was heard (422). Nothing is charged when the model never answered. - Charges appear on the billing statement as AI flow drafts, and in
wallet transactions with kind
flow_generation.