What an AI Call Costs
These are standard prices. A negotiated price replaces them.
Each price is the line plus the AI. A test call in the browser has no phone line, so it pays the AI part alone. A test call to a real phone is an ordinary outbound call.
Line Prices by Zone
A zone groups countries by what the phone line to them costs, from Zone 1 (the cheapest) to Zone 4.
To see which zone a country is in, use the country lookup at topcalls.ai/pricing. Zone 3 countries are off until you ask us to enable the country on your account. To enable one, email hello@topcalls.ai with the country and your account email. We reply with the price before we turn it on.
A call to a Zone 3 country your account hasn’t enabled, to a Zone 4 country, or to a number that can’t be called returns
422 with code: destination_not_allowed. Its reason says which: country_not_enabled for Zone 3 (email us, as above), not_available for Zone 4 (nothing to enable), and the others for a mistyped number, a toll-free or premium-rate number, or a dear range. Making Calls lists each reason with its next step. A refused call places no call and holds no credit.
A country’s zone can change when we change our routes, so the country lookup is the current list. A few number ranges cost more than their country. A call to such a range is priced at the zone of the range itself, and a range dearer than TopCalls dials is refused with reason: range_above_cap.
Browser Dialer
The browser dialer lets a person on your team place a call by hand from the dashboard. It has two prices: a seat for each person, and the phone line for each minute.
A seat includes no minutes. Someone who manages billing switches a seat on for each person on the Members page, for people whose role can place calls. A seat turned on mid-month pays for the days left in that month, taken at once, then $29 on the 1st of each month. Seats are paid from purchased credit, never from the starter credit. If your purchased credit can’t cover a seat on the 1st, that seat switches off, and about three days before, the people who manage billing get an email.
A dialer call has no AI part, so it pays the line of the number’s zone and nothing more. It’s billed by the second, rounded up, with a limit of 60 minutes and never longer than your credit allows. Zone 3 countries are turned on when you ask, and Zone 4 countries are never available. The guide covers how seats work and where you can call.
Price a Number Before You Call
GET /v1/pricing/quote?to=%2B14155551234 returns (write the + as %2B in a URL) the zone and the price per minute in US dollars for that number on your account, or the reason it can’t be called. It places no call and holds no credit. Add from= with one of your own numbers to price a call that presents it. Making Calls shows the answer.
After a call, price_per_minute_usd and cost_usd on the call report the price it was placed at and what it cost. To cap what a call can cost, use max_duration times the price you were quoted.
Your Own Carrier
On standard pricing, when a call’s line runs on a number you brought (your own carrier), you pay only the AI part: $0.15 a minute, inbound and outbound, in any zone. We charge the line only when a call goes through our carriers. The rules above on which countries you can call still apply. An outbound call uses your own carrier when itsfrom_number is a number on one of your own carriers: add the carrier with POST /v1/phone-numbers/carriers, then the number with POST /v1/phone-numbers. An inbound call does when the number called is on your carrier. A from_number on the TopCalls carrier, or the default number, pays the line. A call to a +1 number (the US, Canada and the rest of North America) from a number verified for US calling goes out through our US carrier and pays the line, even when that number is on your own carrier; without that verification, a number on your own carrier calls +1 through your carrier and pays the AI part alone.
Negotiated Prices
A negotiated price is one price per minute for every AI call, whatever the destination or the carrier. It has no zones and no separate line.GET /v1/balance reports it as rate.pricing_model: "contract". It covers AI calls only: a call in the browser dialer pays the line prices above, and each dialer seat is $29.
Billing
Calls are billed per second, rounded up to the whole second, from your credit balance. Credit never expires. A new account gets $10 of starter credit, which is the trial, and you add credit in Settings > Billing. What isn’t charged is covered in How Calls Are Charged.Credit and Billing
How a call holds credit, what happens when it runs out, and how to read your balance.
Inbound Calls
Answer calls on your numbers, or bring your own trunk.