Blog · November 9, 2026

How to reconcile MSP license billing at month-end

A step-by-step way to check the licenses you pay for against what each client is billed, and where the gaps usually hide.

License reconciliation is the monthly check that what you pay your vendors matches what you bill your clients. Skip it and the gap grows quietly. A few unbilled seats per client, across 30 clients, can be thousands of dollars a year.

Here's a process that works with a spreadsheet, whatever tools you use.

Export the current license counts from every place you buy: vendor portals, distributors and any direct subscriptions. You want one row per client, per product, with the quantity and your cost.

Do this as close to invoice day as you can. Counts pulled on the 1st are already wrong by the 15th.

Export each client's recurring billing lines from your PSA: product, quantity and sell price.

This is where most of the time goes. The same license has one name on the vendor side and another in your PSA. Build a small mapping table, vendor product name in one column and PSA item in the other, and keep it. Next month you'll only add new products.

For each client and product, put paid quantity next to billed quantity. Then add two columns:

Sort by that last column. Fix the biggest numbers first.

Add sell price minus cost for each line. It's common to find a product that's been billed at an old price since the vendor raised theirs. A negative margin is a gap too.

This process is fine for a handful of clients and one or two vendors. It tends to break somewhere around 15 clients or a third vendor. At that point, the export, mapping and comparison steps take a day or more each month, and one missed row costs real money.

That's the work Sinculate is being built to do for you.