Running Voice AI for Clients: Multi-Tenant Setup, Billing, and Support Boundaries


Running voice AI for clients is a different job from building one agent well. The work that decides whether it scales past five accounts is structural: how client data is separated, how each client's usage gets attributed to their invoice, who is allowed to change an agent, and what you will and will not fix on a Friday night.
Agencies, BPOs, and platforms reselling voice agents hit the same three walls in the same order. Tenancy, billing attribution, and support.
This is how to set each one up before it becomes a problem, plus the offboarding terms worth agreeing while everyone is still happy.
Multi-tenancy means one system serving many clients while keeping each one's data, configuration, and users separate. For a voice AI agency, that separation has to hold across four things at once.
Get the first three right and the fourth becomes easy. Get the first three wrong and the fourth becomes a spreadsheet you maintain by hand every month.
One workspace per client, in almost every case.
Putting every client's agents in a single workspace is faster to set up and produces three problems that get worse with headcount.
Workspace-level separation with role-based access solves all three, and it maps onto how Retell separates things: each workspace is a fully isolated boundary, with its own agents, API keys, members, webhooks, telephony settings and billing. The developer docs are the place to start on everything else, but provisioning is manual. Retell does not expose an API to create, delete or switch workspaces, so each new client workspace is set up by hand in the dashboard. Budget the time per onboarding and put the steps in a runbook before client eleven rather than after.
Two cases justify a shared workspace. A handful of tiny accounts running an identical agent where no client ever gets direct access, and a pilot you intend to migrate. Both need an explicit plan for the day they stop being true.
Keep a naming convention from client one. Client code, use case, environment, in that order, on every agent, number, and knowledge base. It costs nothing on day one and saves an afternoon per incident later.
Numbers cause more client friction than anything else in the stack, because they are the one part of the setup the client already owns.
Three decisions to make before the first launch.
One trap worth naming. If you buy numbers under your own account for convenience and the client later leaves, you are holding a number their customers dial. That is a dispute waiting to happen, so decide the release terms at signing rather than at exit.
It comes from per-client usage records, and you need them to reconcile to the usage totals on each client's workspace to the minute.
Build the invoice from three components and keep them separate on the client's bill.
| Component | What it covers | How to bill it |
|---|---|---|
| Platform usage | Call minutes, per client, per agent | Pass through at cost or at your rate, from that client's workspace usage records |
| Fixed per-client costs | Numbers, integrations, any per-client tooling | Flat monthly line item, so small accounts are not subsidized by large ones |
| Your work | Management, changes, monitoring, reporting | Retainer or included-changes allowance |
Reconcile monthly, not quarterly. If a client invoice and that client's workspace usage disagree, the gap is nearly always a number or an agent sitting in the wrong workspace, and it is much easier to find inside 30 days.
Per-workspace usage records make this arithmetic clean, because the number you pass through to a client is the number that workspace was charged. Each workspace carries its own payment method, credit balance, invoices and usage totals, so there is no aggregated bill to unpick at month end. Read the whole bill when you design the invoice. Recurring charges for phone numbers, extra concurrency, knowledge bases, verified numbers and SMS sit alongside the usage rate, and they belong in your fixed per-client line rather than in the pass-through. Check the current pricing model before you design your invoice around it.
Add a margin check to the same monthly ritual. Minutes per client, revenue per client, and support hours per client, in one view. The account that is quietly losing money is usually the one with the most pleasant client.
Someone has to, and the answer should be written down before launch rather than discovered during an incident.
Both extremes fail. If only you can make changes, you become the bottleneck on every holiday message and price update, and the client experiences your ticket queue as the product. If the client can change anything, someone edits a live prompt on a Friday and you get the call about it on Monday.
The workable middle is a split by risk.
The capability that makes this split safe is versioning and a test path. Change in a non-production version, test it on calls, then promote. Without that, every change is a live experiment on the client's customers. The call transfer rules are the ones to be strictest about, because a broken transfer is invisible in the dashboard and obvious to the caller.
The reason to keep this inside your own hands rather than a platform vendor's is speed, and it is the pillar the whole operating model rests on. You own the CX improvement loop for every client on your book. Unlike managed AI vendors and BPOs, a change does not become a ticket, a queue, or another SOW. Across the platform, 80% of production minutes run through agents customers build and manage themselves, which is the same arrangement you are offering your clients one level down.
When the person who heard the failed call can fix it that afternoon, agents improve weekly. When every change is a vendor ticket, agents decay as the client's business moves.
Support is where agency margin goes to die, so it needs to be specified as tightly as the price.
Write three things into the agreement.
A severity table that clients accept without argument usually looks like this.
| Severity | Example | What you commit to |
|---|---|---|
| Critical | Calls not being answered, or going to dead air | Response within a stated window, including out of hours |
| High | Transfers failing, bookings not writing to the calendar | Same business day |
| Normal | Wording, hours, FAQ content, reporting questions | Within the included-changes allowance, next business day |
| Project | New agent, new integration, new call type | Quoted separately with a timeline |
What to refuse: open-ended availability, unpriced rebuilds, and taking responsibility for systems you do not control. Refusing these is what keeps the rest of the service sustainable at twenty accounts.
One more boundary that saves real time. Route the client's reports of call problems to a single channel with the call ID attached. A screenshot of a text message from the client's customer is not a bug report, and chasing the call it refers to can take longer than the fix.
Monitor at the portfolio level, not per client, or you will only ever see the problem the loudest client noticed.
This is what makes a multi-client book manageable by a small team. Post-call analysis gives you the per-call record, and AI quality assurance scores calls against criteria you define, so you find the failures the client has not complained about yet. Fixing those is the difference between a renewal conversation and a rescue.
If you deliver through an agency platform your clients already use, check the integration path early. The Go High Level integration is one of the most common paths, and how leads and call outcomes flow back into the client's existing system usually decides whether they consider the deployment finished.
Agree the exit in the first contract, because every term is easy to write now and contested later.
Clients rarely negotiate these at signing and always ask about them at exit. Writing them early also signals that you have done this before, which helps close the deal you are writing them into.
If you are setting this up now, do these in order.
None of it is difficult. All of it is much harder after client ten than before client one.
Use one workspace per client with role-based access, so recordings, transcripts, configuration, and usage are scoped to that client. Each workspace is a fully isolated boundary. Scope client logins to their own workspace only, and invite your own team into each client workspace with the role that job needs, because roles are assigned per workspace rather than above it. The invite dialog offers Admin, Developer and Member. Confirm what a given role can reach before you hand a client a login, since separation is what you are selling.
Yes. Either the client owns the number and forwards or ports it to the agent, or you buy it on their behalf with release terms agreed in writing. Sharing a number across clients breaks attribution and caller identity.
Bill three separate lines: platform usage taken from that client's workspace usage records, fixed per-client costs such as numbers and integrations, and your own work as a retainer or change allowance. Reconcile monthly, workspace by workspace, because each workspace carries its own invoices and usage totals.
Give them the low-risk surface, such as hours, holiday messages, and knowledge base content, and keep prompts, transfer rules, and integrations with your team behind a test-then-promote path.
Define severity levels rather than one response time. Calls not being answered warrants an out-of-hours response; a wording change does not. Then state how many changes are included per month and what sits outside scope.
Whatever your contract says. Cover number release, recording export, data deletion, and whether the agent configuration transfers. Decide it at signing, because at exit it becomes a negotiation.
Retell is a Customer Experience AI Platform for Autonomous Customer Relations. Set up one client workspace, run that client's real calls through it for a week, then check the isolation, the usage record and the call review against this checklist before you onboard the second. Run a pilot on your own calls.
##
See how much your business could save by switching to AI-powered voice agents.
Total Human Agent Cost
AI Agent Cost
Estimated Savings
A Demo Phone Number From Retell Clinic Office

Start building smarter conversations today.


