How to Set Up HubSpot for an MSP or IT Services Company
A managed service provider does not close a deal and move on. It signs an agreement that keeps accruing against itself every month for years. Seats drift away from the contracted number. Hours consumed erode the effective hourly rate. A margin that was acceptable at signature becomes a loss nobody noticed. None of those numbers can live on a deal record, because a deal closes once. This walkthrough sets out the object model RevOps HQ installs for MSPs and IT services firms. It covers why the service agreement rather than the deal is the object the business is run from, and the renewal and margin reporting that becomes possible once it exists.
Key takeaways
- Service agreement and site are custom objects added to HubSpot’s standard four. The agreement carries contracted seats, monthly recurring revenue, seat drift, hours consumed, the effective hourly rate and a margin status.
- A deal closes once; an agreement keeps accruing. Holding recurring economics on the deal record is what makes seat drift invisible until a renewal conversation, by which point the repricing argument has already been lost.
- Site is separate from company because MSP economics are per location. One client with a head office and four branches is one company and five sites, and the branch consuming every on-site visit is the one the margin depends on.
- Tickets attach to the site rather than only to the company, which is what makes ticket volume and on-site travel reportable by site type instead of by account.
- Seat drift is caught in the month it happens by a workflow, not at renewal by an audit. The true-up is a task assigned to a person rather than a discrepancy discovered later.
- Effective hourly rate is the number that decides whether an agreement is worth renewing unchanged, and it is computable only when hours consumed and monthly recurring sit on the same record.
- Onboarding ends at adoption rather than at handover, and the agreement records which of the two actually happened.
- The reporting follows from the model: renewal status by margin health, ticket volume by site type, effective hourly rate by margin status, and one screen the owner can read without asking for a report.
The Object Model Decides What Can Be Reported
HubSpot ships four objects: contacts are people, companies are organisations, deals are transaction opportunities, and tickets are service issues arising from them. Those four describe a business that sells something once and supports it afterwards. They do not describe a managed service. The two things an MSP actually runs on have no table at all: the standing agreement, and the physical site.
The consequence is not aesthetic. Three questions turn on it. Whether seat drift can be caught in the month it occurs. Whether an agreement’s effective hourly rate can be computed at all. Whether ticket volume can be read by site type rather than by account. Each is a consequence of the model rather than of the reporting tool above it.
A Deal Closes Once; An Agreement Keeps Accruing
The distinction that defines this model is temporal. A deal has a close date, after which it is history. An agreement has an effective date, after which it starts consuming: hours are logged against it every month, seats are added and removed without anyone amending the contract, and the margin it was signed at moves continuously.
Firms holding this on the deal record end up with a closed-won deal carrying a monthly recurring figure. It was true on the day it closed and has been wrong ever since. The numbers that matter have nowhere to live: seat drift, hours consumed, effective hourly rate, margin status. So they live in a spreadsheet, reconciled shortly before a renewal. By that point the repricing conversation has already been lost.
- Agreement status, so an active agreement is distinguishable from one in renewal and one already repriced
- Contracted seats against actual seats, and the drift between them as its own property
- Hours consumed, accruing monthly rather than reconstructed at renewal
- Effective hourly rate, which is monthly recurring divided by hours actually delivered
- Margin status, as a defined set rather than an impression: healthy, watch, at risk, loss-making
Site Is Not the Same Thing as Company
An MSP’s cost is incurred per location, not per customer. A client with a head office and four branches is one company and five sites, The numbers that decide profitability belong to the site rather than to the account above it: seat count, on-site travel minutes, ticket volume, site health.
Collapsing sites into the company record produces an account that looks acceptable in aggregate while one branch consumes every on-site visit. Separating them makes the question answerable: ticket volume by site type, on-site travel by site, and site health across a portfolio, each of which is a report rather than an afternoon of reconstruction.
Drift Caught in the Month, Not at the Renewal
Seat drift is the characteristic leak in a managed service. Seats are added when a client hires and are rarely removed when a client does not, and the gap between contracted and actual accumulates quietly across a contract year.
With both counts on the agreement, the gap is a computed property and a workflow can act on it. When drift passes a threshold, a true-up task is assigned to a named person in the month it happened. The alternative is an audit before renewal, which finds the same number twelve months later and has to argue for it retrospectively.
Onboarding Ends at Adoption
The sequence the model supports runs from inquiry through environment assessment, pricing, signature, onboarding and into standing service. The step firms most often mismodel is the last transition: onboarding is treated as complete at handover, when the work is finished on the provider’s side.
Adoption is the more useful marker: the client’s people using the service desk, and tickets arriving through the portal rather than by direct email. Recording completion there changes what the agreement says about itself in its first quarter, which is while a loss-making arrangement is still cheap to correct.
The Reporting the Model Produces
Each of the following is a consequence of the object model rather than an addition to it. None requires an export, and none is available to a portal where the agreement is a closed deal.
- Renewal status broken down by margin health, so the loss-making agreements coming up for renewal are a list rather than a memory
- Effective hourly rate by margin status, which is the number that decides whether an agreement renews unchanged
- Monthly recurring revenue by margin status and agreement status together, which distinguishes healthy revenue in renewal from at-risk revenue already repriced
- Ticket volume by site type, and total on-site travel minutes over a chosen period
- Seat drift by agreement status, and site health across the portfolio by site type
- Seats by agreement type, separating fully managed from co-managed and per-seat arrangements
The renewal report is the one that changes behaviour. Filtering to loss-making agreements inside the renewal window produces the list a leadership team can act on, The action follows while there is still time to take it: reprice, restructure, or decline to renew.
What Installation Involves
The object model, the properties, the workflows and the reporting described here are built. An installation configures them in the client’s portal and then adapts the remainder to how the firm actually operates, which is ordinarily a matter of agreement types, site classifications and the thresholds at which a workflow should fire.
Every managed service provider differs at the edges, and none differs in the middle: an agreement accrues, sites incur cost, and margin moves whether or not anyone is watching it. The customisation sits at the edges.
Frequently asked questions
Why not keep the recurring revenue on the deal record?
A deal closes once and stops changing. An agreement accrues hours every month, drifts against its contracted seat count, and moves in margin continuously. Holding those numbers on a closed deal means they are correct on the close date and progressively wrong afterwards, which is why the reconciliation ends up in a spreadsheet shortly before each renewal.
Does this replace our PSA or RMM tool?
Ordinarily not, and the assessment says so where it does not. Tools in that category carry monitoring, automation and technical functions that a CRM does not replace. What the model does is make HubSpot the record of the commercial relationship: the agreement, the sites, the economics and the client-facing service history. The technical platform integrates into it rather than being duplicated by it.
Can clients log their own tickets?
Yes. A customer portal is available on the appropriate subscription tier, with registration and authentication handled by HubSpot, and single sign-on available where an identity provider is already in use. Tickets raised through it attach to the site and the agreement like any other.
How is seat drift actually caught?
Contracted seats and actual seats are both properties on the agreement, so the difference is computed rather than observed. A workflow watches it and raises a true-up task against a named owner when it passes an agreed threshold, in the month the drift occurs rather than at the renewal.
What does an installation cost relative to building it?
A partner building this specification from an empty portal is ordinarily a five-figure engagement, because the object model, the properties, the workflows and the reporting are all bespoke work. This model is already built; the engagement configures it and adapts the remainder, which is a materially smaller piece of work.
Talk through the MSP & IT Services build
Book a timeOpens HubSpot in a new tab. The in-page calendar needs the cookies you declined.
Setting up HubSpot for your MSP or IT services firm?
The object model, workflows and reporting described here are already built and can be installed in an existing portal, then adapted to how the firm actually operates. A short call establishes whether the model fits before any work is scoped.