Salta al contenuto principale

The MSP Chart of Accounts: Separating Recurring, Resale, and Project Revenue

7 minuti di letturaMike ThriftMike Thrift
The MSP Chart of Accounts: Separating Recurring, Resale, and Project Revenue

Ask a managed service provider owner how profitable their business is, and most will point to one number: the bank balance at the end of the month. Ask them which line of business actually generates that cash — the monthly recurring contracts, the hardware they resell, or the one-off migration projects — and the answer gets vague fast.

That vagueness is expensive. An MSP that blends recurring labor, resold hardware, and project work into a single revenue line can be profitable on paper while quietly losing money on every server it resells, or discover a year late that the "growth" client with the biggest contract has been running at a loss the whole time. Managed services typically carry gross margins of 50–60%, break/fix and hardware resale sit closer to 30–40%, and project work swings anywhere from 45–60% depending on how tightly it's scoped. Average those together into one number and you can't tell which lever to pull.

The fix isn't more spreadsheets. It's a chart of accounts built for how MSPs actually make money.

Why "IT Services Revenue" Is Too Blunt an Instrument

A generic bookkeeping setup — one revenue account, one cost-of-goods account — was designed for businesses that sell one thing. MSPs sell at least three fundamentally different things, each with its own cost structure, its own margin profile, and its own seasonality:

  • Recurring managed services (MRR): flat or per-seat monthly fees for help desk, monitoring, patching, and security. High margin, predictable, the backbone of enterprise valuation.
  • Hardware and software resale: firewalls, switches, endpoints, license renewals bought from a distributor and marked up. Thin margin, lumpy, easy to underprice if you're not tracking vendor cost against resale price.
  • Project and time-and-materials (T&M) work: migrations, buildouts, one-off consulting billed hourly or as a fixed-fee scope. Margin depends entirely on whether the project was estimated correctly.

When all three land in the same "Service Revenue" bucket, you lose the ability to see which one is actually carrying the business. It's common for recurring support to fund the whole company while hardware resale loses money on every deal — and the owner has no idea, because the P&L never separates them.

Building an MSP-Specific Chart of Accounts

The minimum viable structure separates revenue and its matching cost of goods sold into at least four categories:

1. Recurring Managed Services Revenue Monthly contract fees — help desk, RMM/monitoring, patch management, backup, security. Match this against a "Recurring Services COGS" bucket containing technician salaries for support staff, RMM/PSA tool licensing, and any subcontracted NOC costs. This is where your headline gross margin should land in the 50–60% range; if it's lower, either pricing or staffing utilization needs attention.

2. Hardware and Software Resale Revenue Every device, license, or subscription you buy from a distributor and resell — firewalls, switches, Microsoft 365 seats, endpoint licenses. Match against "Resale COGS": the actual vendor invoice cost. Track this margin separately and don't let it hide inside recurring revenue; a distributor price increase or a poorly negotiated markup shows up immediately here instead of dragging down your whole P&L average.

3. Project / T&M Revenue Migrations, network buildouts, security assessments, anything scoped and billed outside the monthly contract. Match against "Project COGS": technician time allocated to the project (even if it's the same techs who do support work — track their hours by project code), plus any contractor or specialist costs.

4. Deferred Revenue (a liability, not income) Annual contracts paid up front are a classic MSP trap. If a client prepays $24,000 for a 12-month contract, recognizing all $24,000 as January revenue overstates that month and understates the other eleven. Book the full payment to a Deferred Revenue liability account, then recognize 1/12th as earned revenue each month as service is actually delivered. This is a straightforward application of the matching principle — revenue is recognized when earned, not when cash arrives — and it's the difference between a P&L that reflects reality and one that just reflects your billing calendar.

If you sell into multiple lines of business at real scale, mirror this structure with classes or locations in your accounting software so you can pull a profitability report by segment without rebuilding your chart of accounts from scratch every quarter.

The Metrics That Actually Tell You Something

Once revenue is separated, a handful of numbers turn bookkeeping into a management tool:

  • Recurring revenue as a percentage of total revenue. Best-in-class MSPs run 65–90% of revenue as contracted MRR; the higher that number, the more predictable — and more valuable at sale — the business is.
  • Gross margin by revenue line, not blended. If your combined gross margin looks fine at 42% but recurring services is actually running 58% while hardware resale is running 8%, you now know exactly where to renegotiate vendor terms or reprice.
  • Technician utilization rate: billable (or service-delivery) hours divided by total available hours. A healthy range is roughly 65–75%; above 85% usually means techs are overbooked and burnout — and quality problems — are coming. Below 60% usually means you're overstaffed for current contract volume.
  • Revenue per technician. A useful sanity check on pricing and staffing efficiency; healthy MSPs typically land in the $150K–$200K range per full-time technician, though this varies with service mix.
  • Recurring revenue retention rate. Net of upgrades, downgrades, and churn, this tells you whether the contract base is actually growing or just being replaced.

None of these are visible from a single blended revenue number. They only become visible once the chart of accounts does the separating for you.

Cash Flow Habits That Compound

Beyond the chart of accounts, a few operational habits keep an MSP's books — and cash position — healthy:

  • Automate recurring invoicing so contract billing goes out on schedule without a manual step every month.
  • Collect via pre-authorized debit or auto-charge for recurring fees rather than waiting on net-30 invoices; this alone removes most of the "why is our AR aging out" conversations.
  • Chase outstanding invoices on a fixed cadence — biweekly is a reasonable default — rather than reactively when cash gets tight.
  • Allocate expenses by client and project as they happen, not at month-end from memory. A receipt-capture tool that tags spend to a client or project code makes the project-margin numbers above meaningfully more accurate.

Where This Connects to Your Own Books

Every principle here — separating revenue streams, matching costs to the income they generate, deferring prepaid revenue until it's earned — is standard double-entry bookkeeping. The reason MSPs get it wrong isn't that the accounting is exotic; it's that most small-business accounting tools nudge you toward one flat revenue account because it's simpler to set up, and nobody goes back to fix it once contracts and resale volume grow.

Beancount.io takes the opposite approach: plain-text accounting where your chart of accounts is a file you control, not a black-box dropdown. Setting up recurring-services, resale, and project revenue as distinct top-level accounts — with their own COGS matched underneath — is a text edit, not a support ticket, and every change is version-controlled so you can see exactly when and why your account structure evolved. If you've been meaning to split your MSP's revenue lines apart but dread the software migration, give Beancount.io a try and see how much clearer a properly segmented P&L makes your next pricing decision.

Simplify Your Financial Management

Untangling recurring services, hardware resale, and project margins doesn't require new software — it requires a chart of accounts that matches how your business actually earns money. Beancount.io offers plain-text accounting that's transparent, version-controlled, and easy to restructure as your service mix changes — no black boxes, no vendor lock-in. Get started for free and see your MSP's real margins by revenue line, not just the number in your bank account.

Condividi questo articolo