Bill your clients for chats
Client billing sells your clients chats the same way it sells minutes. Each plan can bill web chat, WhatsApp and SMS per conversation or per message, include a monthly allowance, and price the extra chats a client uses. Clients top up with chat packs, by request or by card, or turn on chat auto top-up so they never run out.
Chats never use minutes. They have their own balance, their own warnings and their own packs, so a client who runs out of minutes keeps chatting, and a client who runs out of chats keeps calling.
- Voice AI Portal
Plan renews, chats added
This period’s chat allowance
- Voice AI Portal
Every chat counted
Per conversation or per message
- Voice AI Portal
Warning as chats run low
At 80% of plan chats unless you change it
- Your client
Tops up if needed
Chat pack, or auto top-up by card
- Voice AI Portal
Extras billed at renewal
At the plan’s price per extra chat
Set up chat billing, step by step
Section titled “Set up chat billing, step by step”You need client billing switched on (see Set up client billing) and the agency owner or an admin to make plans and packs. Step 4 needs the agency owner.
-
Measure the client’s chats. Put the client on a plan without a chat allowance and on Track only for a few weeks. The Usage card on its Billing page then shows its chats and messages, for example “186 chats, 1,532 messages (no minutes used)”. That is the number to size the allowance from. Selling now? Start from an example bundle on Track only and resize at renewal.
-
Choose per conversation or per message. See Per conversation or per message below.
-
Add the chats to a plan. Go to Client billing, then Plans, and select New plan or Edit. In the Chats section, choose Bill chats by, enter the chats per month and, if you want extras billed, a price per extra chat. Select Create plan or Save plan. See Plan fields for chats.
-
Check your chat defaults. Go to Client billing, then Settings. Under Defaults for clients, set the Chat warning (80% to start with) and check Stop text channels too is on if chats should stop at the limit on Track and enforce. Leave Chats left needed to start a new chat under Calls and payments at 1: it counts in each client’s own unit, so 10 would refuse new chats to a client billed per conversation with 9 conversations left. Select Save settings. For clients billed per message, set it to 10 per client in Client settings, under Chats (see Chat options for one client).
-
Create matching chat packs. Go to Client billing, then Packs, choose Chats and create packs that hold the same kind of chats as your plan. See Chat packs.
-
Give chats their own agent (ElevenLabs). Answer WhatsApp and web chat with a chat-only agent, so their conversations are billed as chats and keep going when minutes run out. See When chats run out.
-
Give the plan to the client. Open the client, select Billing in the Agency only box, then Change plan or Assign plan. See Create client plans.
-
Check what the client sees. The client’s Billing page now shows Chats this period, and Need more chats? with your chat packs. See What your client sees.
For a full voice plus chat package with prices, see Sell voice, WhatsApp and web chat bundles.
How a chat is counted
Section titled “How a chat is counted”A chat is one conversation as the provider records it. There is no 24-hour window in billing: each conversation the provider lists is counted once, for as long as it lasts.
| Provider | One chat is | When it ends |
|---|---|---|
| ElevenLabs web chat and WhatsApp | One conversation | When the agent ends it, at its maximum duration, or on WhatsApp after 15 minutes with no new message following the agent’s last reply. A customer who writes again later starts a new chat. |
| Retell AI SMS and chats | One chat | When Retell AI ends the chat. |
| Vapi chats | One chat session, or one chat thread | When the session completes. Later messages in the same thread add messages, not a new chat. |
For plans billed per message, every message with text from the customer and the agent counts. Tool calls, tool results and empty entries never count. The portal reads each chat’s message count from the provider, and keeps reading an open chat until it ends, so messages that arrive later are counted too. Messages that arrive after a renewal count in the new period.
Per conversation or per message
Section titled “Per conversation or per message”A WhatsApp chat where the customer sends 5 messages and the agent replies 5 times counts as:
| Plan setting | Counted |
|---|---|
| Conversation | 1 chat conversation |
| Message, Customer and agent messages | 10 chat messages |
| Message, Agent replies only | 5 chat messages |
| Choose | When |
|---|---|
| Conversation | The simplest to explain: “300 chats a month”. Best when chats are short and similar, such as website questions or booking requests. |
| Message, Customer and agent messages | Chats vary a lot in length, or you want your price to follow your cost. ElevenLabs prices text per message (ElevenLabs pricing). |
| Message, Agent replies only | You want to bill only for the work the agent does. Each exchange counts once, so allow about half the messages and charge about twice the price per message. |
Plan fields for chats
Section titled “Plan fields for chats”Every plan has a Chats section: “Web chat, WhatsApp and SMS. Chats never use minutes.”
-
Go to Client billing, then Plans, and select New plan, or Edit on a plan.
-
In the Chats section, choose Bill chats by: Conversation or Message. For Message, also choose Messages that count: Customer and agent messages or Agent replies only.
-
Enter the chats per month, for example
2000. Left empty, chats are unlimited: counted, not billed. The fields below appear once you enter a number. -
Optional: enter a price per extra chat, for example
0.02per message or0.25per conversation, billed at renewal. Then, if you like, the extra chats allowed per month: on Track and enforce, chats stop after that many extras, or at the allowance when it is empty. -
Choose what happens to unused chats (Expire at renewal or Roll over for one period, with a cap), and any trial chats for a client’s first period.
-
Under Channels that count, tick the channels to bill: Web chat, WhatsApp, SMS and Other (API and integrations) are all ticked to start with. Chats on unticked channels still show in usage.
-
Select Create plan or Save plan.
Each field, with its limits and exact hints, is listed in Create client plans. The labels follow the unit you choose: a plan billed per message shows Chat messages per month (optional), Price per extra message (optional) and so on. In the Plans table, the allowance shows under Included, for example “2,000 chat messages”, or “1,000 chat messages (agent replies)”.
Example chat plans
Section titled “Example chat plans”These fictional plans are the ones used across these guides, for an agency billing in GBP with a fictional all-in cost of £0.01 a chat message (about £0.10 a chat conversation). They are explained in full in Sell voice, WhatsApp and web chat bundles.
| Growth 500 + WhatsApp | Practice 1000 | Chat 1000 | |
|---|---|---|---|
| Monthly price | £169 | £229 | £25 |
| Included minutes per month | 500 | 1,000 | 0 |
| Bill chats by | Message | Conversation | Message |
| Messages that count | Customer and agent messages | Customer and agent messages | |
| Chats per month | 2,000 messages | 300 conversations | 1,000 messages |
| Price per extra | £0.02 per message | £0.25 per conversation | £0.02 per message |
| Extra allowed per month | 1,000 | 100 | 500 |
| Unused chats | Expire at renewal | Roll over for one period, at most 100 | Expire at renewal |
| Channels that count | WhatsApp and Web chat | WhatsApp and Web chat | All |
When you change a plan’s chats
Section titled “When you change a plan’s chats”| What you change | When clients on the plan get it |
|---|---|
| Chats per month on a plan that already has an allowance | From each client’s next renewal. |
| Chats per month on a plan with unlimited chats | Straight away. Clients on the plan get this period’s chats at once, so nobody is cut off mid-month. |
| Price per extra, Extra allowed per month | Straight away, including the current period. |
| Bill chats by, Messages that count | From each client’s next period. |
A client’s chats are only used in the unit they were bought in, so Bill chats by can’t change while a client on the plan holds unused chat packs or added chats, has an open chat pack payment, or has a chat pack payment in progress. Create a new plan and move clients to it at renewal instead.
Chat options for one client
Section titled “Chat options for one client”Open the client’s Client settings and go to Client billing. The Chats block changes chats for this client only:
| Option | What it does |
|---|---|
| Chat messages per month for this client (or Chat conversations per month for this client) | The client’s own allowance in place of the plan’s. “Empty uses the plan’s. Applies from the next billing period, or straight away (with this period’s chats) when the plan has unlimited chats.” Select Save. |
| Chats left needed to start a new chat | On Track and enforce, a new chat starts only while at least this many are left, in the client’s own unit, so one chat can’t run far past the limit. Set 10 for clients billed per message. Empty uses the agency default. |
| Unlimited extra chats | “For clients you trust: chats continue past the allowance and every extra one is billed at the plan’s price.” Needs a plan with a price per extra chat. |
How chats are used
Section titled “How chats are used”Every grant of chats is kept separately, with its own expiry. Each chat uses them in this order:
| Order | Chats | Notes |
|---|---|---|
| 1 | Plan chats, including chats carried over | This period’s allowance. |
| 2 | Trial chats | Given once, the first time a client gets a plan, if the plan offers them. |
| 3 | Chat pack | Earliest expiry first. |
| 4 | Added by agency | Chats you add by hand. |
| 5 | Extra chats | Past every grant: billed at renewal at the plan’s price, or counted if extras are not priced. |
The Chats this period card
Section titled “The Chats this period card”On the client’s Billing page, Chats this period shows how the client is billed, for example “Billed per message, from the customer and the agent. Chats never use minutes.”, the included chats used with a progress bar, Left to use, From packs and added chats, Used this period and any Extra, marked Billed at renewal or Counted, not billed. A Replies paused badge shows while new chats are stopped.
You also see every grant, with its Source (Plan chats, Carried over, Trial chats, Chat pack or Added by agency), Granted, Used, Left and Expires, and two actions:
- Add chats: enter the number and a Reason (up to 200 characters, saved in the audit log), then select Add chats. “Adds chat messages that don’t expire, used after the plan’s chats and chat packs.”
- Remove: enter the number and a Reason, then select Remove chats. “Removes unused chats, newest first (added chats, then packs, then plan chats).”
Clients on a plan with unlimited chats don’t see this card. You see it as “Unlimited chats on this plan: counted, not billed.”
Chat packs
Section titled “Chat packs”A chat pack is a bundle of extra chats, such as 1,000 chat messages for £15, that a client can get on top of their plan.
-
Go to Client billing, then Packs, and choose Chats. “Extra chats clients can request or buy. Pack chats are used after the plan’s chats, earliest expiry first, in the same unit as the client’s plan (conversations or messages).”
-
Select New chat pack and enter the Name.
-
Choose what it Holds: Chat messages or Chat conversations, the same as the plans you sell it with. This is fixed once the pack is created.
-
Enter the number of chats, the Price and the Currency, and choose when the Chats expire after (30 days, 90 days, 6 months, 12 months, 2 years or Never expire; 12 months to start with).
-
Choose Only for clients with a plan and Can be used for auto top-up, then select Create pack. You see Pack created.
A chat pack is offered to clients billed the same way: a pack of chat messages to clients whose plan bills per message, and a pack of chat conversations to clients billed per conversation. Clients with unlimited chats don’t need packs, so they are not offered any. Clients without a plan are billed per conversation, so they can live on packs of chat conversations alone. To sell another kind, create a new pack.
Price a chat pack above your cost and a little below your price per extra chat, so buying a pack is the better deal for the client. For example, 1,000 chat messages for £15 is £0.015 a message, against £0.02 for an extra message.
How clients get chat packs
Section titled “How clients get chat packs”| Way | Who starts it | When the chats arrive |
|---|---|---|
| Request chats | The client, under Need more chats? on their Billing page | When you record the payment, or straight away with Grant chats now, collect later |
| Buy now by card | The client, once your Stripe account is taking payments | As soon as the card payment goes through |
| Request payment for a pack | You, on the client’s Billing page | When you record the payment, or straight away with Grant chats now, collect later |
| Chat auto top-up | Automatically, once the client turns it on | When each top-up payment goes through |
| Add chats | You, on the Chats this period card | Straight away |
When a client on Track and enforce has run out of chats, a pack lets new chats start again within a minute.
Chat auto top-up
Section titled “Chat auto top-up”Chat auto top-up buys a chat pack automatically when a client’s chats run low. It works like minute auto top-up, with its own pack, threshold and consent, on the same saved card. It needs your Stripe account taking payments.
-
Turn on Can be used for auto top-up on the chat packs you offer for it.
-
The client’s billing contact opens their Billing page. On the Chat auto top-up card, they choose the Pack to buy and When chat messages fall to (50 to start with; When chat conversations fall to for conversation packs).
-
They read the terms, for example: “When my chats fall to 50 chat messages or fewer, buy 1,000 chat messages for £15.00 with this card, at most 5 times a calendar month, until I turn chat auto top-up off.”
-
They select Agree, buy now and turn on and pay for the first pack in Stripe Checkout. The card is saved for top-ups.
Once it is on: “Chats are added automatically before they run out.” At most one top-up runs at a time, and never more than 5 in a calendar month. Either side can stop it with Turn off chat auto top-up. If the pack’s name or price changes, or the client moves to a plan that bills chats another way or has unlimited chats, chat auto top-up switches off before buying anything, and the client turns it on again.
Refunds
Section titled “Refunds”Refunding a chat pack bought by card takes back the refunded share of its unused chats, as for minute packs. Refunds and credit notes on a plan’s invoice take back that share of the period’s minutes and chats. See Create minute and chat packs.
Extra chats
Section titled “Extra chats”Chats past the allowance and every pack are extra chats.
- Priced extras. With a price per extra chat, they are billed at renewal: as an Extra chats payment request for clients on manual payments, or a line on the next Stripe invoice. For example “Extra chat messages: 240, Growth 500 + WhatsApp”.
- Unpriced extras. Counted, and shown on the client’s Billing page, but not billed.
- A cap on extras. With Extra conversations allowed per month (optional) set, a client on Track and enforce can use that many extra chats, then new chats stop. Without a cap, new chats stop at the allowance.
- Track only. Chats never stop. Every extra chat is counted, and billed when extras are priced.
- Unlimited extra chats. For clients you trust, turn on Unlimited extra chats in the client’s Client settings. It needs a plan with a price per extra chat.
When chats run out
Section titled “When chats run out”With Track only, chats keep going and are counted. With Track and enforce and Stop text channels too on, new chats stop once no chat may start, until chats are added or the next period begins:
| Channel | What stops |
|---|---|
| Retell AI SMS | New inbound SMS chats. |
| ElevenLabs WhatsApp | WhatsApp messaging on the client’s WhatsApp numbers. |
| ElevenLabs chat-only agents | New conversations, including web chat. |
| WhatsApp messages and template campaigns sent from the portal | Each send is checked first, and refused with “This client has used all its chats.” A campaign shows Paused: chats used up and resumes by itself within a minute of chats being added or the allowance resetting. |
Other chats, such as Vapi chats and Retell AI chats outside SMS, keep going and count as extra chats. Calls are never affected by chats.
Chats and minutes are judged separately on a plan with a chat allowance. A client whose minutes run out keeps chatting while it has chats left, and a client whose chats run out keeps calling while it has minutes. On a plan without a chat allowance, text stops when calls stop.
Chats left needed to start a new chat keeps a long chat from running far past the limit: with Track and enforce, a new chat starts only while at least this many are left. It counts in each client’s own unit. Keep the agency default at 1 (set by the owner under Client billing, Settings, Calls and payments), and set 10 or more per client, in Client settings under Chats, for clients billed per message.
Stopping inbound text changes settings in the client’s provider account. These provider changes are off until our team enables them for the client. Checks on WhatsApp sends from the portal work without them. See When minutes run out.
Warnings and emails
Section titled “Warnings and emails”| When | Who hears | What they get |
|---|---|---|
| The client reaches the Chat warning share of its plan chats | Billing contacts and your team | “You’ve used 80% of your chats”, with the chats used and left, and the reset date. |
| All plan chats are used | Billing contacts and your team | “You’ve used your 2,000 chat messages”, with what happens next: chats continue from packs, continue as billed extras, continue as normal, or are paused. |
| A chat top-up fails | Billing contacts and your team | The same top-up failed email as for minutes. |
| A chat top-up needs bank confirmation | Billing contacts only | The same confirmation email as for minutes. |
The owner sets Chat warning under Client billing, Settings, Defaults for clients: Off, or At 50%, 70%, 75%, 80%, 85%, 90% or 95% of plan chats (80% unless changed). Once the plan chats are used, billing contacts also see a banner such as 2,000 of 2,000 chat messages used, saying whether chats continue from packs, continue as extras, or are paused.
What your client sees
Section titled “What your client sees”Billing contacts see, on their Billing page:
- Chats this period, while their chats are billed.
- Need more chats? with your chat packs, and Request chats or Buy now on each.
- Chat auto top-up, when you offer a chat pack for it and your Stripe account is taking payments.
- Their chats and messages under Usage.
See Client billing for your clients.
Usage and exports
Section titled “Usage and exports”The client’s Usage card totals billable minutes, calls, chats and messages, for example “1,240 billable minutes · 412 calls · 186 chats, 1,532 messages (no minutes used)”. Each chat in the list shows its messages, such as “12 msgs”, or “4 msgs so far” while it is open. Statement CSV adds three columns for chats: messages, chat_units (the chats billed) and chat_unit (conversation or message).
The Overview tab and the Clients list show each client’s chats used against its allowance next to its minutes, for example “320 of 1,000 chat messages”.
Privacy
Section titled “Privacy”Chat billing keeps only IDs, times, channels, message counts and money. It never stores what was said: no messages, transcripts, names or phone numbers.
Troubleshooting
Section titled “Troubleshooting”| Problem | What to do |
|---|---|
| A client doesn’t see Need more chats? | Check the client is billed for chats (a plan with a chat allowance, or no plan), that you have an active chat pack in its currency and unit, and that Client can request packs is on for it. |
| This client’s plan has unlimited chats, so chat packs aren’t needed. | Set chats per month on the plan, or give the client its own allowance in Client settings. |
| This client is billed for chat messages, and this pack holds a different kind of chat. | Offer a pack that holds the same kind of chats as the client’s plan. |
| A plan change says the client would stop counting its chats | The client holds chats in another unit. Use them up, remove them or settle the request first, or choose a plan that bills chats the same way. |
| A client on this plan has unused chat packs or added chats, so how chats are billed can’t change. | Create a new plan with the other unit and move clients to it at renewal. |
| Unlimited extra chats is greyed out | Give the plan a price per extra chat. |
| Chats stop when minutes run out | Check the plan has a chat allowance, and that WhatsApp and web chat are answered by a chat-only ElevenLabs agent. |
| Chats keep going on Track and enforce | Check Stop text channels too is on, and that provider changes are enabled for the client. Vapi chats and Retell AI chats outside SMS count as extra chats rather than stopping. |
| “This client has no plan, so new chats can’t start.” | Assign the client a plan, or switch it to packs only. |