MSP Pricing for Hosted Voice: Price VoIP, Protect Margin

Tom Reed · Updated 26 October 2026
Price hosted voice from your real costs up, not from a competitor's list price. Add up platform seats, carrier calls and numbers, onboarding hours and support time for each customer, then choose a model (per user, a per-seat bundle, or voice inside an all-in IT contract) that covers them with the margin you need. Review the price whenever carrier rates, seat counts or support load change.
This guide is for MSPs, ITSPs, VoIP providers and IT resellers working out how to price voice they resell to business customers. It stays vendor-neutral until the section on SessionPBX partner billing near the end. Teams Phone and Teams Business, mentioned there, are SessionPBX plans, not Microsoft Teams. We don't quote prices or margin benchmarks: your numbers depend on your own costs.
How should an MSP price hosted voice?
Work out what one seat really costs you to deliver, decide the margin you need on top, and only then pick how you present the price. MSP pricing for voice goes wrong when it starts at the other end, with a number copied from a rival's website.
A cost-up approach has four steps:
- List every cost line for a typical customer: the platform, the carrier, your onboarding time, your support time and your own admin.
- Turn those costs into a cost per seat, so you can compare small and large customers on the same basis.
- Add the margin you need to pay for your team, your risk and your growth.
- Choose a pricing model that suits how you already bill customers.
Your customers compare your quote with the extra costs they've read about, such as numbers, call charges and add-ons. Our guide to what hosted PBX pricing really includes shows that view from the buyer's side. For a refresher on what a PBX phone system does, start there.
If you're still deciding whether to sell voice at all, our guide on whether your MSP should add hosted PBX covers that decision. This guide assumes you've said yes and now need a price.
Which pricing model fits: per user, bundle or all-in contract?
There are three common ways to present a voice price. Each one can be profitable. The difference is who carries the risk when usage, team size or support load changes, and how easy the price is for the customer to read.
Pricing models for hosted voice
| Model | How it's billed | Best fit | Margin risk | What to watch |
|---|---|---|---|---|
| Per user, billed monthly | A set charge for each user or extension, every month | Customers whose headcount changes often, and MSPs who want a price that scales on its own | Low on seats, since revenue grows with each user; higher if call charges are bundled in | Users who share a login, idle seats nobody removes, and call usage that grows faster than seats |
| Per-seat bundle (a "voice pack" sized by team) | A fixed charge for a pack of seats, with a set charge to step up to the next pack | Small teams who like one simple line on the invoice | Medium, because a team at the top of its pack costs you more than one at the bottom | Customers who outgrow the pack without telling you, and pack sizes that no longer match your cost per seat |
| Voice inside an all-in managed IT contract | Part of a single monthly fee that covers IT support, security and voice | Customers who want one supplier and one bill for everything | Highest, because voice costs are hidden inside a bigger number and can creep up unnoticed | Support time spent on phones, carrier charges you absorb, and contract terms that stop you repricing |
Per user is the easiest MSP pricing model to explain and to keep honest, because the price follows the seats. Bundles are simpler for the customer, but you need to check pack sizes against your own costs. Voice inside an all-in contract helps you win and keep customers, but only if you track the voice costs inside it, or the margin quietly disappears.
Many MSPs use more than one model. That's fine, as long as every model is built on the same cost per seat.
Hosted and self-hosted platforms bill you differently, and self-hosting adds server costs. Our guide to multi-tenant PBX for MSPs compares the two.

What costs should your voice price cover?
A voice price that only covers the platform charge is a loss in disguise. The platform is the most visible cost, but your team's time is the one that grows without anyone noticing.
Cost lines to cover
- Platform seats. What you pay the platform provider for each seat, at your partner price. For SessionPBX, see current partner pricing on the Partner Programme page.
- Plan add-ons. Extras that some customers need, such as app logo branding on Teams Phone. On SessionPBX, app logo branding is included on Teams Business.
- Carrier costs. The SIP trunk, numbers and external call charges, billed by the carrier you choose.
- Onboarding hours for each customer. Discovery, call flow design, number setup and the app rollout to every user. A repeatable rollout keeps these hours down; our guide to secure softphone provisioning for MSPs shows how.
- Ongoing support time. Moves, adds and changes, call flow edits, user questions and the occasional call quality ticket.
- Your own billing and admin time. Raising invoices, reconciling carrier bills and chasing payment.
- Self-hosted costs, if you run your own server. On a self-hosted platform, the server, hosting and network costs are yours, along with the time to look after it.
Write your own figure next to each line for a typical customer. Don't skip the time lines: engineer hours spent on setup and changes have a real cost, and they belong in the price.
Onboarding is mostly one-off, so charge a setup fee or spread it across the contract. Support, platform and carrier costs repeat every month, so they belong in the recurring price.
How do you work out your margin on hosted voice?
Once you know your costs, the margin is simple arithmetic. Keep the formula in letters, then drop your own numbers in.
Margin formula
- P = the price you charge the customer for one seat.
- S = the platform seat cost you pay.
- K = the carrier share for one seat (that seat's portion of trunk, numbers and call charges you don't pass on separately).
- T = the time share for one seat (onboarding spread over the contract, plus monthly support and admin time, divided by the number of seats).
- A = add-ons for one seat, if any.
- C = your total cost for one seat = S + K + T + A.
- Margin per seat = P − C.
- Margin as a share of price = (P − C) ÷ P.
Worked example, with your numbers here: take your price per seat (P), subtract your platform seat cost (S), your carrier share (K), your time share (T) and any add-ons (A). What's left is your margin per seat. Divide that by P to see what share of the price you keep. Multiply the margin per seat by the number of seats to see what the customer is worth to you each month.
A few points make the formula more useful:
- Margin is not markup. Markup compares profit with cost, (P − C) ÷ C. Margin compares profit with price, (P − C) ÷ P. They give different answers from the same numbers, so agree on one and use it everywhere.
- The time share (T) is the one to watch. It's the hardest to measure and the easiest to leave out. Track the hours your team spends on each customer's phones and update T with real data.
- Calculate it per customer, not just across your book. A good average can hide one customer who costs far more to support than they pay.
What's a good reseller margin? There's no single answer, and we won't give you a benchmark. The right voip reseller margin is the one that covers your team's time, your risk and your growth plans once every cost line is in C. If the formula shows a margin you're not happy with, change the price, the model or the cost, not the formula.
How do carrier calls and numbers affect your pricing?
On a bring-your-own-trunk platform, external calls go through the SIP trunk you choose, and your carrier bills you for numbers and calls. Internal calls between team members stay on the platform. That split shapes how you price calls.
You have two main choices:
- Pass carrier charges through. You bill the customer for numbers and external calls at cost, or at cost plus a handling charge, on a separate line. Your seat price stays clean, and heavy callers pay for what they use.
- Bundle minutes into your price. You include a set amount of calling, or a fair-use allowance, in the seat price. The customer gets one predictable bill, and you carry the risk if they call more than you expected.
Pass-through suits heavy or unusual callers, such as outbound sales teams. Bundles suit offices with steady, modest calling. Either way, put it in writing, including what happens if usage goes well beyond the allowance.
Rates, number charges and trunk features vary between carriers. Our guide to choosing a SIP trunk provider for hosted PBX lists what to check. If your carrier charges by channel, our guide to how many SIP channels you need helps you size the trunk for each customer so you're not paying for capacity nobody uses.
How do you turn voice into recurring revenue?
Voice works best as a recurring revenue model: a monthly charge for each seat, backed by a contract, that grows as your customers grow. Done well, it adds steady MSP recurring revenue on top of the IT services you already sell.
Three habits help:
- Bill monthly for each seat. The customer pays for the seats they use, and your revenue rises when they add staff. Make seat changes part of your moves, adds and changes process, so the bill matches reality.
- Offer annual terms. An annual agreement gives you predictable revenue and gives the customer a reason to stay. Match the term to how your platform bills you, so you're not committed for longer than your customer is.
- Attach voice to your existing contracts. Your managed IT customers already trust you. Offering voice at renewal is often easier than winning a voice-only customer.
Keep the voice line visible on the invoice, even inside a wider contract. It makes repricing easier later.
Packaging voice into service plans is a separate question. Our guide to packaging hosted PBX for MSPs and telecom resellers covers bundles and plan design in detail.
When should you review your voice prices?
A price that was right at the start of a contract can drift out of line. Costs change, teams change and support load changes. Build reviews into your year rather than waiting for a surprise.
Price review triggers
- Your carrier changes its rates. Recheck the carrier share (K) for every customer whose calls you bundle.
- A customer's seat count grows or shrinks. A bundle that fitted a small team may no longer fit a larger one, and vice versa.
- A customer moves to a different plan. New features may bring new costs, or remove an add-on you were paying for.
- Support tickets start to rise. More time spent on a customer's phones means a bigger time share (T).
- The contract comes up for renewal. Renewal is the natural moment to reset the price with fresh cost data.
Use call reports to see what customers actually do. Call volumes, answered and missed calls, and talk time tell you whether a bundle is still the right size and whether a customer's needs have changed. Our guide to call reporting for small businesses explains which reports to look at and what they mean.
When the price needs to change, tell the customer early, explain why, and give notice in line with your contract.

How does SessionPBX partner billing work?
SessionPBX is a business phone system from SessionTalk. The SessionPBX Partner Programme is for PBX resellers, managed service providers, IT companies and communications providers that sell phone systems to business customers.
Partner pricing. Approved partners get partner pricing on every seat, hosted or self-hosted, with the same partner discount on both. We don't list figures here because they can change: current partner pricing is on the Partner Programme page, and your partner portal shows the current annual licence and add-on prices for self-hosted.
Your price, your invoice. You set your own price and invoice your customer. There are no commissions to chase and no payouts to wait for.
How SessionTalk bills you. SessionTalk bills your partner organisation for each customer subscription. Hosted plans offer monthly or annual billing; self-hosted licences are annual.
Self-hosted. Self-hosted is available to approved partners only. You run many customer tenants on your own server, with every customer kept separate and priced per seat, so you pay for the seats you sell. Server, hosting and network costs are yours.
Carrier costs. SessionPBX is bring-your-own SIP trunk: SIP trunk, numbers and call charges come from your chosen carrier, and any SIP-compliant carrier works. SessionPBX doesn't supply numbers or lines. Team-to-team calls never leave the platform, with no PSTN cost and no per-minute charges. There's no per-minute markup and no bundled minutes: you pay your carrier what your carrier charges, and you decide how to pass that on.
Plans and add-ons. Teams Phone and Teams Business are SessionPBX plans, not Microsoft Teams. App logo branding is included on Teams Business and is an add-on on Teams Phone. Teams Business includes call reports with call volumes, answered and missed calls, and talk time.
Apps. Your customers' users run the softphone apps for desktop and mobile on Windows, macOS, iOS and Android, with QR or link provisioning.
To see the phone system your customers would use, visit the hosted PBX your customers use. If you're comparing partner programmes, our checklist on how to choose a VoIP reseller program covers what to ask each vendor. When you're ready, see partner pricing and apply.
FAQ
What is a good margin on reselling VoIP?
It depends on your costs and your support model. Use the formula above: margin per seat = P − C, where C includes platform seats, carrier share, your time and any add-ons. A margin that looks generous on platform cost alone can be thin once support time is counted.
Should I charge per user or per seat bundle?
Per user scales with the customer and is easy to keep accurate. A per-seat bundle gives the customer one simple line but needs checking as teams grow. Many MSPs offer per user for voice-only customers and bundles for small offices.
Do I have to bundle call minutes?
No. On SessionPBX, external calls are billed by your carrier with no platform minute markup, so you decide whether to pass them through or include an allowance in your price.
Who invoices the end customer?
You do, at your own price. SessionTalk bills your partner organisation for each customer subscription.
Are there commissions or referral payouts?
No. You set your own price and invoice your customer. There are no commissions to chase and no payouts to wait for.
Where can I see partner pricing?
On the SessionPBX Partner Programme page. Your partner portal shows the current annual licence and add-on prices for self-hosted.


