By
Mendy Green
June 9, 2021
•
20 min read
Business

In any business where you’re not billing Time and Materials, the amount of time you spend on a project directly correlates to how profitable you are. In an MSP, this applies even more. MSP Businesses were designed years ahead of their time, bringing into practice concepts such as recurring revenue, outsourcing, efficient resources, and more; before people even realized the value. It’s the reason that today the MSP Businesses are blowing up with everyone you meet starting their own. Unfortunately, there’s a complex side to the framework of an MSP that is very often overlooked, especially by those just starting out.
Let’s discuss how the MSP business model is built. MSPs pitch to their prospective clients that they can provide the same level (or often times better) IT Services to their organization than they themselves can find if they go with someone internally. They ask for less money, and offer a bigger team with greater experience. These same MSPs then have to turn around and hire the same people that would have been hired directly, and not just one, but two or three or more depending on the size of the MSP.
MSPs have to pay the same salary with a smaller budget. How can these numbers possibly work?
This is where efficient resources come in; an MSP needs to stack multiple clients reusing the same resources for each client so that together all the clients combined pay enough money for the MSP to pay the technicians salary and make a profit. The income also needs to cover all base expenses of the MSP which includes infrastructure such as an RMM, PSA, Email, Phones, over-night team for emergencies and so on.
With an internal IT resource, that resource would be solely focused on the business they were working for and getting paid a full salary of say $52k/year, now the same resource at an MSP is getting paid $52k/year and needs to stay on top of not one company IT needs, but actually 3 or 4 (or more depending on the contract size of each). This kind of expectation is unreasonable and when maintained results in high-stress work environments and eventual burn out for the technician. The saying “trial by fire” is very applicable to the technicians who work at an MSP. They are under constant barrage of tickets and stress, jumping from company to company each ticket wildly different from the next. This makes them unusually skilled and also rapidly exposes them to a wide range of experience they may not have received working for just one company. A good MSP technician of the lowest tier can easily go head to head in ability (if not knowledge) to a mid-tier internal IT resource.
Now keep in mind that when MSPs started we were a new phenomenon. There was no standard to follow, no existing business to copy, except for the existing internal IT department within a Company. We didn’t know what kind of pay structure was fair to offer a Tier 1 or Tier 2 technician because there was no “average pay” metric. The only thing we did know is that we are building a business with a stress on smaller dollar amounts per client, and more total clients. This means what we paid our technicians had to be less too, or that we keep the MSP as lean as possible with only the amount of technicians truly needed. Following the 80/20 rule we determined that 80% of the time with our clients running smoothly we would be fine and only 20% of the time when some kind “perfect storm” would occur we would need to motivate our technicians to put in more effort (or what was generally called “figure something out”).
What’s being described is not a sustainable long term plan. Simon Sinek likes to stress that business is an Infinite Game and that those who are not playing by those rules are doomed to failure eventually. The only way to stay in the game is by having resources, and the will to keep playing. We’ve already established that MSPs do not have the same pockets as a normal business, not without drastically imposing upon “will”, our employees, making them work in stressful environments and constantly being battered by the next broken issue.
The fix for this is easy, and its an iteration of what we already started. Efficient use of resources. Efficiency can help us spend less time per ticket, less time per client, and improve our technicians stress in the environment. There are two side to the efficient use of resources, one of which we already started (Sharing resources among companies) but the other is often overlooked “Work load management”. If we can make our work load efficient we can easily improve upon all the issues we just brought up. Here are some ideas that can be used to help facilitate the efficient workload.
Efficient resources is way more than just sharing resources. Making your workload efficient is just as important. Remember how profitable you are directly correlates to how efficient you can be
Remember, in the MSP business time isn’t a loss of potential profit, its actual profit lost as your contracted rate is the same every month. Automation and bulk actions are extremely important as the less time you spend doing something the more your Per Hour amount goes up.

In Episode 12 of By the [run]Book, Mendy and Connor continue their deep dive into HaloPSA release v2.204, covering the second half of this massive update. They break down critical enhancements across SLAs, custom fields, assets, chat, Google Workspace, billing, documentation, and integration workflows. This episode is ideal for MSP operators, service managers, and Halo administrators looking to understand not just what changed—but how those changes impact real-world processes.
Here's a few Key impactful updates featured in this episode:
· ATimezone option has been added to Agent details (998146)
Ensures holiday/PTO allowances calculate correctly based on each agent’s actualtimezone—preventing mid-day rollovers for distributed teams.
· Improvementsto the Google Workspace integration (987605)Updated user-matching options to now allow the use of both username and email.
· Restrictedasset relationship types (897671)
Allows admins to control which relationship types can be used between differentasset classes, preventing illogical or messy asset mappings.
· Separatepermission for impersonating users (747369)Impersonation no longer requires full admin rights, enabling safertroubleshooting and testing by leads, onboarding teams, or QA staff.
· Optionto select different email templates when sending invoices (574826)
Staff can now choose from multiple invoice email templates—helpful for voided,corrected, or specialized billing communications.
· NewSLA setting: user replies reset the response target even when on hold (920093)
Fixes unpredictable SLA behavior by ensuring user updates always reset theresponse timer, eliminating false breaches.
· Ticketlist filters now support Client, Site, and User custom fields (965190)
A major visibility upgrade that allows filtering by Client, Site, User customfields, and other options.
· Pre-paybalance type can now be set per contract (758980)
MSPs can now choose hours or currency on a per-contract basis—ideal for clientswith mixed prepay models like retainer hours and project funds.
Watch Now: By the [run]Book: Episode 12
For easier tracking, check out haloreleases.remmy.dev to filter and search HaloPSA updates by ID, version, and keyword.
Full Feature review:
A Timezone option has been added to Agent details which initially will only be used to ensure that the Holiday allowance calculations are correct | v2.204 #998146 | 2:04
Ensures holiday allowance calculations respect each agent’s timezone.
Various Embeddable Chat Widget API improvements | v2.204 #993194 | 7:42
Adds more customization and event capabilities to Halo’s external chat widget.
Various improvements to SAF management | v2.204 #987889 | 9:23
Enhances the Service Architecture Framework.
Improvements to the Google Workspace integration | v2.204 #987605 | 13:02
Adjusts Google user matching behavior.
Added a ticket setting to show the department a team belongs to when assigning/re-assigning | v2.204 #983485 | 15:29
Displays department context during ticket assignment.
The FAQ list now shows in the portal URL when navigating through the Knowledge Base | v2.204 #983353 | 16:02
Improves navigation clarity when browsing FAQs.
Slack notifications can now be triggered by CRM Note updates, Site updates and specific Agent Actions | v2.204 #982479 | 16:27
Expands Slack integration coverage.
Added Agent Team Mappings to Microsoft Entra ID | v2.204 #979667 | 16:36
Allows syncing team membership from Entra ID.
The change management fields ‘Impact’ and ‘Risk’ can now be used in Risk Score calculations | v2.204 #975163 | 19:31
Improves accuracy of Change Management scoring.
Added a general Ticket setting that when enabled, the Can Edit Advanced Ticket Details permission is required to bulk change Ticket Priority | v2.204 #971319 | 21:58
Adds protection against mass-priority edits.
Charge Rates/Types can now be ordered by a sequence number set on the Charge Rate/Type setup | v2.204 #969791 | 22:33
Enables custom sorting of charge rates.
Minor report Chart filtering UX improvements | v2.204 #969514 | 23:20
Improves visual continuity when filtering dashboard charts.
You can now use Client, Site and User Custom Fields as criteria for Ticket List filters | v2.204 #965190 | 24:58
Significantly expands filter capabilities.
Added option to send an Email to a specified Agent when a Runbook fails | v2.204 #957580 | 27:45
New notification option for automation failures.
Added a notification trigger for when a User uploads a document to a specific folder | v2.204 #955651 | 27:53
Useful for client-upload workflows.
Added Access Control to Folders when using Document Management | v2.204 #955650 | 28:09
Brings permissioning to folder-level document storage.
‘Top Level’ field now available when creating an Account/Prospect from the new Opportunity screen | v2.204 #923428 | 30:08
Allows proper top-level assignment for accounts/prospects.
Customer & Site level custom fields now have the option to be displayed under the customer record when logging a ticket | v2.204 #920539 | 32:06
Surfaces client metadata during ticket creation.
Added a global SLA setting to allow user updates to reset the response target regardless of whether the ticket is on hold | v2.204 #920093 | 34:13
Fixes a major SLA limitation.
Added the ability to restrict the allowed relationship types when relating assets | v2.204 #897671 | 39:30
Prevents invalid asset relationship mappings.
You can now import Service Level Agreements (SLAs) & Priorities using an XLS spreadsheet | v2.204 #841750 | 40:34
Enables bulk-import of SLA structures.
Added asset and service business and technical owners as notification recipients | v2.204 #801201 | 41:42
Provides more targeted asset/service notifications.
Improvements to the Jira Software integration | v2.204 #796046 | 43:04
Enhances mapping, syncing, and mention handling.
Unapproved holidays now show with a dotted border | v2.204 #795392 | 44:59
Better visibility in calendars.
You can now save emails from Mail Campaigns as email templates | v2.204 #762793 | 45:06
Allows reuse of campaign email layouts.
Pre-pay balance type can now be set per contract | v2.204 #758980 | 46:33
Adds contract-specific prepay logic.
You can now view the amount of hours invoiced so far on the billing tab of a ticket | v2.204 #749755 | 48:13
Adds visibility into billed time totals.
Added a separate permission for impersonating users | v2.204 #747369 | 48:37
Impersonation no longer requires full admin.
Added option to select different email templates when sending out invoices | v2.204 #574826 | 49:02
Choose among different invoice email templates.
Creating a Purchase Order from a Sales Order line will now set the Sales Order line Supplier field and updating the Purchase Order line price will update the Sales Order line cost | v2.204 #417125 | 50:38
Fixes cost/supplier syncing between SO → PO.

This discussion guide is part of Rising Tide’s Fall 2025 book club, where we’re reading The Go-Giver by Bob Burg and John David Mann.
If you’re just joining us, here are a few pages you’ll likely benefit from:
In Chapter 11, Joe learns more about “Gus,” who he is, and why he does what he does!
Use these open-ended prompts to guide reflection and conversation. Remember, there are no right answers!
Rising Tide helps MSPs and service-focused teams build better systems: the kind that align people with purpose.
Every Friday at 9:30 AM ET, we host Rising Tide Fridays as an open conversation for MSP owners, consultants, and service professionals who want to grow both professionally, technically, and emotionally. In Fall/Winter 2025, we’re walking through The Go-Giver, chapter by chapter.
If that sounds like your kind of crowd, reach out to partners@risingtidegroup.net for the Teams link.
Bring your coffee and curiosity…no prep required.

This discussion guide is part of Rising Tide’s Fall 2025 book club, where we’re reading The Go-Giver by Bob Burg and John David Mann.
If you’re just joining us, here are a few pages you’ll likely benefit from:
In Chapter 10, Joe learns the Fourth Law of Stratospheric Success — “The Law of Authenticity” — from a now-successful saleswoman who found this truth when she was at her lowest.
Use these open-ended prompts to guide reflection and conversation. Remember, there are no right answers!
Rising Tide helps MSPs and service-focused teams build better systems: the kind that align people with purpose.
Every Friday at 9:30 AM ET, we host Rising Tide Fridays as an open conversation for MSP owners, consultants, and service professionals who want to grow both professionally, technically, and emotionally. In Fall/Winter 2025, we’re walking through The Go-Giver, chapter by chapter.
If that sounds like your kind of crowd, reach out to partners@risingtidegroup.net for the Teams link.
Bring your coffee and curiosity…no prep required.