Almost every quote for an AI phone agent is priced per minute, and almost none of them show how the number was built. That matters more than it sounds. The per-minute rate is rarely the whole bill, and the charges left out of it tend to be the ones that grow as the thing starts working.
So here is ours, with the arithmetic.
The rate
Osokoro Phone bills 23 cents per minute of connected call time.
That number is derived rather than chosen, and the derivation is in the code — PHONE_RETAIL_CENTS_PER_MINUTE
in lib/phone-pricing.ts — so the pricing page and the landing page cannot quietly disagree about it:
| Component | Per minute |
|---|---|
| Realtime speech model | 80,000 µUSD |
| Session infrastructure | 10,000 µUSD |
| Cost | 90,000 µUSD |
| Markup, 150% | 135,000 µUSD |
| Retail | 225,000 µUSD |
225,000 micro-dollars is $0.225, which rounds up to 23 cents. A micro-dollar is a millionth of a dollar; the unit exists because a tenth of a cent per minute is a real amount of money at volume and rounding it away at every step is how a margin quietly disappears.
The underlying model rates were read on 2026-08-20, and the pricing table carries the version
string 2026-08-21. Both dates are in the repository on purpose. A per-minute cost that depends on a
vendor's published rate is correct on the day it was written and stops being correct without
announcing itself, so the honest thing is to date it and let you judge how stale it is.
What the 23 cents does not include
This is the part worth reading twice, because it is where per-minute quotes usually mislead.
Your phone number and your carrier are yours, and they bill you separately. Osokoro Phone connects to a SIP number you already have — Twilio, Telnyx, Plivo, or anyone else who speaks SIP. We do not resell minutes and we do not mark up your carrier. Depending on who you use and what kind of number it is, expect inbound termination to be somewhere in the region of a cent a minute plus a small monthly rental per number. Get that figure from your own carrier's invoice rather than from us; we cannot see it and would only be guessing.
Search is billed as it is used. The agent can look things up while it talks:
| Tool | Price |
|---|---|
| Web or X search | $5.00 per 1,000 searches |
| Document search over your own material | $2.50 per 1,000 searches |
Half a cent per web search sounds like nothing, and it usually is. It is listed because a call where the agent searches eight times costs measurably more than one where it searches none, and you should be able to see that on a bill rather than discover it.
There is a ceiling of 20 completed searches in a single call, after which the agent hangs up. That is a cost control and a safety valve at the same time — a model that has searched twenty times in one phone call is not converging on an answer.
Calls bill in whole minutes, with a one-minute minimum. A connected call that lasts eleven seconds bills a full minute. A call that never connects is released and bills nothing. If most of your calls are very short, that minimum is the single biggest distortion between the headline rate and what you will actually pay, and it is worth modeling before anything else.
Working out whether it beats what you pay now
I am not going to quote you a competitor's price. Answering-service pricing varies by state, by industry, by whether they bill per minute or per call, and by how hard you negotiated — and a number I looked up once and repeated for a year is worse than no number. What I can give you is the shape of the comparison.
Pull three figures off your own last invoice or timesheet:
- Calls per month. Not the number you remember. The number on the bill.
- Average call length, rounded up to the whole minute, because that is how you will be billed.
- What you pay now, all in. If it is a person, that is loaded cost — wage plus payroll tax plus the hours they are on shift and the phone does not ring.
Then:
monthly AI cost = calls × ceil(avg minutes) × $0.23
+ calls × searches per call × $0.005
+ your carrier's inbound rate × total minutes
+ number rental
Two things usually fall out of that sum, and they point in opposite directions.
If your calls are long — genuine support conversations, five or ten minutes — the per-minute rate dominates and the comparison is close to arithmetic. If your calls are short and numerous, which is what a booking line or a "what time do you close" line looks like, the one-minute minimum inflates the AI side and the human side wins on cost far later than the headline rate suggests.
The other thing: a human answering service is priced for the calls it takes. An AI line is priced for the calls it takes and costs nothing for the hours nobody rings. If your call volume is spiky — one brutal Monday morning and four quiet afternoons — that difference is usually larger than the rate difference, and it does not show up in a per-minute comparison at all.
Where the money is not
Two costs that people expect and that are not there.
There is no per-seat charge and no monthly platform fee on the AI service itself. The line costs what the calls cost.
There is no transcript storage bill, because there are no transcripts. What is kept after a call is a content-free journal row: status, duration, how many turns, how many searches, the pricing version, and the cost estimate. No recording, no transcript, no caller number. Those rows are deleted after thirty days.
That is a deliberate design decision and it cuts both ways, so it belongs in a pricing article: it means there is nothing to leak and nothing to subpoena, and it also means you cannot go back and read what a caller said last Tuesday. If reviewing call content is central to how you run the line, this is the wrong product today and no price makes it the right one.
The limits that change the math
Three constraints will decide whether the arithmetic above is even relevant to you.
It answers; it does not dial. The agent is inbound only. There is no outbound campaign mode, no dialer, no callback queue. If what you are costing out is a sales team making calls, none of this applies.
Calls are capped. The default maximum call length is five minutes and the hard ceiling is ten. A timer ends the call — it does not trail off. For a booking line or a hours-and-directions line that is generous. For technical support it is not, and you should assume a transfer rather than a resolution.
Transfers go to one number you configure. The agent can hand a caller to a person, but it cannot choose who; the destination is server configuration, not something the model decides mid-call. That is a security property rather than a limitation we intend to remove — a model that could pick the forwarding number is a model that can be talked into picking a different one.
The honest status
Osokoro Phone is in a private beta, approved manually, one business at a time. There is no self-serve checkout, and the rate above is the proposed rate rather than a billing commitment — production metering is still gated. Number provisioning is done by an operator, not by you in a dashboard.
I would rather write that down than have you find it after reading two thousand words about cost. If you want the arithmetic to become an invoice, the next step is a conversation, not a credit card.