Industry guide · Accounting

MSP Billing and Cloud Licence Reconciliation Software: Where Is Your Margin Actually Leaking Each Month?

Msp Billing Reconciliation software visual showing cloud, git compare arrows, and billing receipt.
The short answer

$45,000 to $100,000 over 10 to 14 weeks covers a first release that pulls counts from Microsoft Partner Center, your RMM, your security and backup consoles and your distributor invoices, resolves them to clients, and produces a per client variance report you can act on. Adding automatic agreement sync into your professional services automation system, proration and mid month change handling, bundle mapping and true margin per client takes it to $130,000 to $320,000 over 6 to 10 months. Build once you are past roughly 150 clients or 4,000 billable seats. Under 40 clients, Gradient MSP will cost less than the leak.

Why MSP billing leaks in a direction you never notice

It is the second working day of the month. Someone in finance exports agreements from ConnectWise or Autotask, downloads a seat report from Partner Center, pulls a device list from the RMM, opens the Pax8 invoice, and starts comparing. A client shows 62 seats in the tenant, 58 on the agreement, 54 devices in the RMM, and the distributor billed for 62. Another client offboarded eleven people in March and nobody removed them from the agreement, so you are paying for licences you no longer resell. A third had a new site go live in the middle of last month and the seats were never added anywhere.

Notice the asymmetry. The client always tells you when you overbill. Nobody has ever called to report that they are being undercharged. So the errors that survive are systematically the ones that cost you, and they compound quietly, month after month, on agreements you renew without ever recomputing. This is why MSP owners who finally reconcile properly usually find a number that changes their view of the business, and why they are often annoyed rather than pleased.

What Gradient MSP, Rev.io and Datagate actually leave you doing

Gradient MSP is the closest fit to this problem and genuinely useful. It connects to a set of supported vendors, compares those counts against your agreements, and surfaces variances. Rev.io is a capable billing platform with strong rating and invoicing, and Datagate is well regarded where telecom billing and its tax handling are involved.

Two limits recur. Coverage: the reconciliation is only as good as the supported integrations, and every MSP has a handful of services that matter commercially and are not on anyone's list, whether that is a niche compliance tool, a hosted line of business application, or your own managed service with a seat count you maintain by hand. Those are exactly the ones nobody checks. And model: these tools compare counts to agreement lines, but your commercial reality is bundles, tiers and minimum commitments. When you sell a Complete package at one price per user that contains six underlying products at four different vendor costs, a per SKU variance report cannot tell you whether the bundle is priced correctly, whether a client dropped below their commitment, or what your true margin per client is after distributor cost. Billing platforms invoice beautifully from numbers you give them. The hard part is deciding what the numbers should be.

Problem 1: entity resolution is the actual engineering problem

Everyone assumes reconciliation is subtraction. It is not. It is deciding what belongs to whom. A tenant maps to a client, usually. A device in the RMM maps to a client via a site that was named differently three years ago. A backup job maps to a server whose hostname tells you nothing. A distributor invoice line references a subscription identifier that appears nowhere in your PSA. Meanwhile some counts should legitimately be excluded: shared mailboxes, resource accounts, spare laptops on a shelf, your own internal tenant, a test account, the licence you gifted the client's owner.

What a build does: an explicit mapping layer with client, site, tenant, subscription and device as separate entities, plus exclusion rules that are recorded with a reason and an owner rather than silently applied. Unmapped items go into a queue rather than disappearing, because an unmapped device is either a billing opportunity or a security blind spot and both deserve a human. Every MSP we have built this for underestimates this layer and every one of them ends up saying it was the part that mattered.

Problem 2: your commercial model is bundles, and the data is SKUs

You sell tiers. Essential, Advanced, Complete. Each is a promise made of components: a Microsoft 365 plan, endpoint detection, managed backup, email security, a patching service, maybe a phone seat. Vendors bill you per component. Clients pay you per user per tier. Nothing anywhere holds the mapping between the two except a spreadsheet and your memory.

A build makes the bundle a first class object with a component list, an effective date and a price, so the system can answer the questions that matter: is every user on this client's Complete tier actually receiving all six components, which is a service delivery question as much as a billing one, and what is the cost of that bundle this month given what the distributor actually charged. Clients who are paying for Advanced but missing a component are a churn risk, and clients receiving Complete components on an Essential agreement are pure loss. Neither is visible in a per SKU variance report.

Problem 3: mid month changes and commitment terms fight each other

A client adds nine users on the 12th and removes four on the 26th. What do you bill. Your agreement may say full month on adds and full month on removes, or prorate both, or use a count on a specific day. Underneath, your cost behaves differently: annual term subscriptions in the Microsoft cloud programme carry commitments that cannot simply be reduced mid term, so a seat removed by the client can remain a cost to you until renewal. If your billing prorates the client down while your cost stays flat, you have just funded their downsizing.

A build encodes the billing rule per agreement and the cost behaviour per subscription separately, then shows both. That immediately answers a question most MSPs cannot: which clients are shrinking faster than your commitments can follow, and what that is costing this month. It also flags a change that should trigger a conversation, such as a client reducing seats on a term subscription who might accept a co term extension instead of an argument at renewal.

Problem 4: the variance report nobody acts on

Plenty of MSPs have a reconciliation report. Fewer have a process where variances get resolved. A report with 340 lines every month becomes wallpaper by month three.

What a build does: treat each variance as a work item with a state, an owner, an age and a value. Sort by dollars, not by client name. Group by cause, since twelve variances that all stem from one offboarding process failure are one problem, not twelve. Auto resolve the categories that are safe to automate, such as a seat added in the tenant that simply needs the agreement quantity updated, with an approval step and an audit record. Escalate anything above a threshold. And track aging, because a variance that has been open for four months is a process defect and should be reported as one. The measure of success is not that you produce a variance report, it is that the count of open variances trends down while your client base grows.

Problem 5: you do not know your margin per client

Most MSPs know revenue per client and total cost of goods. Very few can state margin for one client this month including distributor cost, the labour hours that client consumed on tickets, and the licences you are carrying for them that nobody is paying for. That number is the one that decides pricing, renewal strategy and whether a difficult client is actually worth keeping.

A build joins agreement revenue, actual vendor cost from distributor invoice lines, and time logged in the PSA into one margin view per client per month. It usually produces two surprises: the client everyone complains about is fine because the contract is priced right, and a quiet client is unprofitable because they were priced in 2021 and have doubled in size on a per site fee. Once you can see it monthly, renewal conversations change from a negotiation about price to a conversation about scope.

What this costs and how long it takes

Across the 2,000-plus projects Digital Heroes has delivered, this category prices as follows. A first release with count ingestion from your main vendor sources, the entity resolution and exclusion layer, and an actionable per client variance workflow runs $45,000 to $100,000 and ships in 10 to 14 weeks. Adding bundle modelling, proration and commitment handling, automatic agreement sync back into the PSA, distributor cost ingestion and margin reporting brings the total to $130,000 to $320,000 across 6 to 10 months.

What drives cost up: the number of vendor sources, because each has its own interface, its own identifiers and its own idea of what a seat is. Writing back into ConnectWise or Autotask, which is a different order of care than reading, since a bad write hits invoices. Multiple distributors, since Pax8, Sherweb, Ingram and TD Synnex all present cost data differently. Telecom, if you resell voice, because tax and rating are their own discipline and it may be genuinely better to keep Datagate for that piece. And multi currency if you operate across borders.

What keeps cost down: starting read only. A first release that only reports variances, with no write back, ships faster, builds trust in the numbers, and lets you fix the process problems before you automate them. Automating a broken offboarding process just makes the wrong number arrive faster.

Build versus buy, and when buying is right

Buy if you have under about 40 clients and a straightforward stack of two or three vendors. Gradient MSP costs a fraction of a build and will find most of what you are missing. Buy if your gap is invoicing and tax rather than counts, in which case Rev.io or Datagate is the correct answer and building your own rating engine is a poor use of money.

Build when two or more apply. You are past roughly 150 clients or 4,000 billable seats, where a percentage of leakage becomes a real salary. Commercially important services sit outside any packaged tool's integration list. You sell bundles and tiers rather than raw SKUs, so per SKU variance reporting does not answer your questions. You have acquired another MSP and now run two agreement structures, which is the single most common trigger we see. Or you want margin per client monthly and your current answer is an annual spreadsheet.

How to choose a developer

Ask them how they would decide which client a device belongs to. The right answer discusses an explicit mapping layer, an unmapped queue and recorded exclusion rules with reasons. A developer who says they will match on client name has never seen your RMM's site list.

Ask how they would handle writing agreement changes back into your PSA. Listen for an approval step, an audit record and the ability to reverse a change. Anything that syncs silently will eventually put a wrong quantity on an invoice and you will not know which system did it.

Ask what they have actually integrated by name: Partner Center, the specific RMM, the specific distributor. Distributor cost data in particular is fiddly and quite different from vendor seat data, and experience shows fast.

Ask who owns the code and settle it before kickoff. You should own the repository, the cloud accounts and the right to hire anyone else. At Digital Heroes the client owns the code from the first commit. An MSP of all businesses understands what vendor lock in costs, and it would be an odd thing to accept in the system that decides your own revenue.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. Independent reporting of Gartner's 2025 survey confirms 59% of finance leaders use AI, up from 37% in 2023, with error and anomaly detection (34%) and accounts payable automation (37%) among the leading use cases. Source: CPA Practice Advisor (reporting Gartner) (2025) →
  2. McKinsey found that currently demonstrated technologies can fully automate about 42% of finance activities and mostly automate a further 19%, indicating roughly 60% of finance work is technically automatable. Source: McKinsey & Company (2018) →
  3. Across ten outpatient clinics the mean no-show rate was 18.8%, and the marginal cost of no-shows reached $14.58 million per year for those clinics, at roughly $196 per missed appointment (2008 figures). Source: BMC Health Services Research / PubMed Central (Kheirkhah et al.) (2015) →
  4. Per Sensor Tower's State of Mobile 2026, worldwide consumers spent about $85 billion on apps in 2025 (up 21% YoY), and for the first time non-game apps surpassed games in consumer spending; generative-AI in-app purchase revenue more than tripled to top $5 billion. Source: Sensor Tower (via TechCrunch) (2026) →
Harper D. · Senior Account Director · APAC · Sydney

Harper is a senior account director for APAC, the person clients talk to when a project needs to change direction, grow or get back on track. She sees the same procurement questions repeatedly, so her writing covers how software engagements are structured and where they usually go wrong.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How much does custom MSP billing reconciliation software cost for a 200 client MSP?
A first release with count ingestion from your main vendor sources, entity resolution with exclusion rules, and an actionable per client variance workflow runs $45,000 to $100,000 and ships in 10 to 14 weeks, based on Digital Heroes delivery experience. Adding bundle modelling, proration and commitment handling, PSA write back, distributor cost ingestion and margin reporting takes the total to $130,000 to $320,000 over 6 to 10 months. At 200 clients the recovered billing usually settles the business case within the first year.
Is Gradient MSP enough, or do we need something custom?
For an MSP under roughly 40 clients with a stack of two or three well supported vendors, Gradient is the sensible purchase and a build would cost more than the leakage. The custom case appears when commercially important services fall outside the supported integration list, when you sell bundles and tiers rather than raw SKUs so per SKU variance reports do not answer your questions, or when you need true margin per client including distributor cost and logged labour.
Why is reconciling Microsoft 365 seat counts so difficult?
Because it is not subtraction, it is deciding what belongs to whom. Tenants map to clients, devices map through sites that were renamed years ago, and distributor invoice lines reference subscription identifiers that appear nowhere in your professional services automation system. On top of that, some counts should be excluded legitimately: shared mailboxes, resource accounts, spare devices and internal tenants. Getting that mapping and exclusion layer right is the actual engineering work.
How should software handle mid month adds and removes?
It needs to hold the billing rule per agreement and the cost behaviour per subscription as separate facts, then show both. Your agreement might prorate, bill full months, or count on a fixed day, while annual term cloud subscriptions carry commitments that cannot simply be reduced mid term, so a seat the client drops can remain your cost until renewal. Without separating those two, you can prorate a client down while your own cost stays flat.
Can it update agreements in ConnectWise or Autotask automatically?
Yes, but start read only. A first release that reports variances without writing back ships faster, builds trust in the numbers, and lets you fix process failures such as a broken offboarding routine before automating them. When you do enable write back, it needs an approval step, a full audit record and the ability to reverse a change, because a bad write lands directly on an invoice.
How long does it take to build MSP billing reconciliation software?
A first release ships in 10 to 14 weeks in our experience. The number of vendor sources is the main schedule driver, since each has its own interface, identifiers and definition of a seat. Distributor cost ingestion is usually the fiddliest part and is often better placed in phase two, after the variance workflow has already proven its value on seat counts alone.
Can we see true margin per client each month?
Yes, and it is usually the feature that changes decisions. Joining agreement revenue, actual vendor cost from distributor invoice lines, and time logged against that client in the PSA gives a monthly margin view per client. The common surprises are that the demanding client is fine because the contract is priced correctly, and a quiet client has become unprofitable after growing on a fee structure set years ago.
We just acquired another MSP with a different PSA. Does that change the answer?
It is the most common trigger we see for building. Two agreement structures, two vendor mixes and two sets of naming conventions make packaged reconciliation harder, because the tool assumes one coherent model. A custom layer can sit above both systems during the integration period and give you one view of counts, cost and margin while you consolidate, which also tells you where the acquired book was priced differently.
Who owns the code if an agency builds this for us?
You should own the repository, the cloud infrastructure accounts and the unrestricted right to hire another firm, agreed in writing before kickoff. At Digital Heroes the client owns the code from the first commit. An MSP understands vendor lock in better than most buyers, and it would be a strange thing to accept in the one system that determines your own revenue and margin.
I'm outgrowing FreshBooks. Is custom software the logical next step?
Usually not directly, because FreshBooks is an invoicing tool more than a full accounting platform, and the natural next step is QuickBooks or Xero for proper double-entry books. Custom development makes sense when those do not fit either, typically because of a billing model none of them handle, like usage-based or milestone billing. In that case a custom billing engine that feeds a standard ledger is often smarter than replacing everything.
We run everything on spreadsheets and Airtable. How do we know it's time for custom software?
The reliable signals are re-typing the same data into multiple tools, one employee acting as human middleware between systems, and errors appearing in handoffs between teams. Hard limits force the issue too: Airtable's Team plan caps at 50,000 records per base, and Business costs $45 per seat per month, so a 20-person team pays about $10,800 a year for a tool it has already outgrown. When workarounds consume more hours than the tools save, the spreadsheet era is over.
What can custom accounting software do that QuickBooks, Xero, and FreshBooks can't?
It encodes your actual business rules: progress billing tied to project milestones, revenue recognition for your specific contract types, landed cost tracking, or approval chains that match your org chart. Off-the-shelf tools handle generic bookkeeping well but force every business into the same chart of accounts and workflow. FreshBooks, for example, is built around freelancer-style invoicing, so inventory or multi-entity accounting means leaving the product entirely.
Can I build my product on a no-code tool like Bubble instead of hiring developers?
For testing whether anyone wants the product, yes, and Bubble's paid plans start at $29 a month, which is the cheapest validation you will ever buy. The ceiling arrives with complex data relationships, heavy integrations, performance at a few thousand users, and the fact that you cannot export a Bubble app to servers you control. A path many Digital Heroes clients take: prove demand on no-code, then rebuild custom once revenue justifies it, treating the no-code version as a paid prototype rather than a foundation.
What are the biggest mistakes companies make when building accounting software?
The three we see most across Digital Heroes rescue projects: replacing everything at once instead of automating the most painful workflow first, skipping the parallel run so errors surface in live books, and letting developers design the ledger without an accountant reviewing the data model. A fourth is quietly expensive: no assigned owner for tax rate and compliance updates after launch. Every one of these is cheap to prevent and costly to unwind.
How do I migrate years of QuickBooks data into a custom system?
Use a staged migration: export full history through the QuickBooks API or backup files, load it into the new system, then run both systems in parallel for at least one full closing cycle before cutting over. Expect cleanup work, because books older than three years almost always contain miscategorized transactions that surface during import. Digital Heroes schedules migration as its own project phase with its own sign-off, never as a launch-week task.
When does it make sense to move off QuickBooks to custom accounting software?
Move when you are paying people to work around the tool, not when the subscription feels expensive. Common triggers are hitting the 25-user cap on QuickBooks Online Advanced, consolidating multiple entities in spreadsheets, or a billing model that forces manual journal entries every month. If your team spends several hours a week exporting to Excel just to answer basic questions, you are already paying for custom software in salaries.
What does it cost to keep custom software running after launch?
Budget 15-20% of the original build cost per year, which on a $100,000 system means $15,000 to $20,000 for security patches, dependency updates, bug fixes, and small improvements as real usage reveals what the spec missed. Cloud hosting for a typical business application adds $50 to $300 a month on top. Skipping maintenance does not save the money; in Digital Heroes rescue work, unmaintained systems typically need a far more expensive rebuild within about three years.
Should I hire a freelancer or an agency to build my accounting software?
A strong freelancer is fine for a reporting dashboard or one integration; anything that holds your books needs a team. Ledger software requires backend, frontend, QA, and accounting domain knowledge, and one person rarely covers all four while staying available for the 5 to 10 year life of the system. The most common rescue job Digital Heroes takes on is a solo-built ledger with no tests and no documentation after the freelancer moved on.
How do I calculate whether custom software will pay for itself?
Divide the build cost by the monthly benefit, where benefit is hours saved times loaded hourly cost, plus subscription fees replaced, plus any revenue the software unlocks. Three staff saving 10 hours a week each at a $40 loaded rate is about $62,000 a year, which pays back a $60,000 build in roughly 12 months. Across Digital Heroes internal-tool projects, 12 to 24 months is the normal payback range, and anything projecting under 6 months usually means the spreadsheet is hiding costs.
Who can build a custom accounting software system?

Digital Heroes builds custom accounting software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other accounting software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?