For most MSPs, billing is where time goes to die. Chasing unbilled hours, fixing contract mismatches, manually reconciling invoices with your accounting system — these are the hidden costs of a PSA that hasn't been configured to work for you.
Autotask has one of the most mature billing engines in the PSA market. The problem isn't what it can do — it's that most MSPs are using a fraction of its capabilities. They've set up the basics, got billing running well enough, and never gone back to optimise.
This guide covers the key areas where Autotask billing can be automated and improved: how to think about contracts, why Work Types are the foundation of everything, how Contract Exclusions actually work, accounting integrations, and how to use the Billing Dashboard to stay in control. If you're already on Autotask and want to stop leaving money on the table, this is where to start.
The first thing to understand about Autotask contracts is that they rarely map one-to-one to the commercial agreements you sign with your clients. A single client contract — say, a managed service agreement that covers remote support, onsite visits, and out-of-hours cover — typically requires multiple Autotask contracts working together to bill correctly.
Think of them as billing arrangements rather than contracts in the legal sense.
Here's a practical example. A client signs a support agreement that includes:
In Autotask, this becomes three linked contracts:
The engineer doesn't need to know any of this. They select the appropriate Work Type when logging time, and Autotask routes the billing correctly — absorbed by the recurring contract, deducted from the block, or billed ad-hoc — automatically.
This is the power of a well-configured billing arrangement. And it only works if your Work Types and Exclusions are set up correctly.
Work Types are the single most important configuration element in Autotask billing — and the most consistently underbuilt.
Most MSPs create a handful of generic Work Types and leave it there. The result is that Contract Exclusions become hard to manage, billing routing is ambiguous, and engineers are left making judgement calls about how to log their time.
The right approach is to build a Work Type list that is descriptive enough to tell an engineer exactly what activity they're performing — without requiring them to know anything about how that activity is billed.
A good Work Type list removes billing knowledge from the engineer entirely. The engineer selects "Onsite Support", "New Installation", or "Out-of-Hours Support" based on what they're actually doing. The contract configuration determines whether that work is absorbed into the recurring fee, deducted from a block, or billed separately. The engineer never needs to think about it.
How to build your Work Type list:
Start from the bottom — identify the activities that are almost always billed separately. Onsite Support, New Installation, Project Work, Out-of-Hours Support, Emergency Callout. These are your baseline exclusions and should be the first Work Types you define.
Then work upward — identify the activities that are typically included in a managed service contract. Remote Support, Monitoring Response, Routine Maintenance, Vendor Liaison. These form the core of your recurring contract inclusions.
Finally, identify the edge cases — activities that are sometimes included and sometimes excluded depending on the client agreement. These are the Work Types that will drive your Exclusion Sets.
Keep your Work Type list as short as it can be while still being unambiguous. Every Work Type you add is a decision an engineer has to make. The goal is clarity, not completeness.
Contract Exclusions are one of the most powerful features in Autotask billing — and one of the least understood.
An Exclusion tells a contract: "don't absorb time logged against this Work Type." Instead, that time falls through to the next applicable contract or gets flagged for T&M billing. Exclusion Sets are named groups of exclusions that can be applied consistently across multiple contracts.
The reason most MSPs don't use this effectively is that the underlying logic isn't immediately obvious. Many resort to workarounds — separate contracts for every exception, manual overrides, or just accepting that some billing will always require manual correction. None of these scale.
The key insight: Exclusions work at the Work Type level, which is exactly why your Work Type list matters so much. If your Work Types are descriptive and well-defined, your Exclusions are simple. If your Work Types are generic, your Exclusions become complex and unreliable.
Using the example above: the Recurring Contract has Onsite Support and OOH Support excluded. The Block Hour Contract has OOH Support excluded. When an engineer logs time against OOH Support, it bypasses both contracts and lands in the T&M contract automatically. No manual intervention required.
Build your Exclusion Sets by client agreement type rather than by individual client. Most MSPs have three or four standard agreement structures — full managed service, partial managed service, project-only, ad-hoc. Define an Exclusion Set for each and apply it consistently. When a client's agreement changes, you update one Exclusion Set, not twenty individual contract configurations.
If your MSP offers tiered service packages — Bronze, Silver, Gold or Standard, Advanced, Complete — Exclusion Sets are the natural tool to mirror that structure in Autotask.
Each tier of your offering has a defined scope of included and excluded activities. A Bronze package might include remote support only, with onsite visits, out-of-hours cover, and project work all excluded. A Gold package might include remote support, onsite support, and routine maintenance, with only out-of-hours and new installations excluded.
Each of these scope definitions becomes an Exclusion Set. When you onboard a new client on a Silver package, you apply the Silver Exclusion Set to their contract — and the billing logic is immediately correct, without any custom configuration. When a client upgrades from Silver to Gold, you update the Exclusion Set on their contract. One change, immediate effect.
This approach also makes your service catalogue easier to maintain over time. If you add a new activity to your Gold package — say, you start including quarterly IT reviews — you update the Gold Exclusion Set once, and every Gold client's contract reflects the change automatically.
Autotask allows contracts to run for up to 20 years. If a client signs an agreement with automatic renewal, there is nothing stopping you from setting the contract end date to the maximum available.
Some consultants argue this is bad practice because it distorts profitability reporting. This is incorrect. Autotask's reporting engine is perfectly capable of generating accurate profitability data regardless of contract duration — it simply requires building the right reports. Setting artificial short durations and renewing contracts manually introduces far more risk of billing gaps and configuration errors than a well-maintained long contract.
If you want a proper automatic renewal mechanism, it is possible to build one outside Autotask's native features using the API. The approach involves two automated flows: a notification to the client 90 days before renewal, and an API call — triggered at contract expiry or shortly before — that extends the contract by a defined period. I've implemented this using Power Automate. If you're interested in how this works in practice, get in touch and we can walk through it together.
Before you connect Autotask to your accounting system, the groundwork needs to be done in Autotask first — not after.
Your Autotask service catalogue and billing codes need to mirror the data structure of your accounting software. Does your accounting system use categories? Subcategories? Product families? Tax codes? Whatever structure your accounting software uses, Autotask needs to replicate it. If the structures don't align, synced invoices land in the wrong accounts, tax is applied incorrectly, and your accountant spends time correcting entries that should have been right from the start.
Client names matter more than you think. When Autotask syncs a client record to your accounting system, it matches on the legal entity name. Spaces, punctuation, abbreviations — any discrepancy between how the client is named in Autotask and how they appear in your accounting system will create duplicate records or failed syncs. Before activating any integration, audit your client list in both systems and resolve every mismatch.
Autotask integrates natively with the most common international accounting platforms — QuickBooks, Xero, and Sage among them. For MSPs using these systems, the native integration is the right starting point. Configure the product mapping carefully, test with a sample invoice before going live, and monitor the integration logs regularly — failed syncs don't always generate visible alerts.
If your accounting system isn't natively supported, there are two alternatives worth exploring: a CSV import of billing lines, or a middleware integration via Zapier or a similar platform — provided your accounting software has a compatible connector.
The Billing Dashboard is one of the most underused tools in Autotask — and one of the most valuable.
The dashboard collects every billing item that has not yet passed through the Approve & Post stage — meaning time entries, charges, and services that exist in the system but haven't been invoiced. Think of it as a live view of unbilled revenue.
The problem with relying solely on the Approve & Post page is that it requires you to re-enter filters every time you use it. For a busy billing admin, this means important items get missed. The Billing Dashboard solves this by letting you build pre-configured widgets with saved filters — one widget for completed ticket time awaiting approval, one for charges in "ready to deliver" status, one for a specific contract category, and so on.
Build your Billing Dashboard at the start of your Autotask configuration, not as an afterthought. A well-built dashboard makes it possible to see at a glance what needs to be billed, who it belongs to, and whether anything is stuck in an approval bottleneck. Review it weekly, not just at invoice time. Items that have been sitting in the billing queue for more than a few days are almost always a sign of a configuration problem or a process breakdown that needs to be addressed.
A well-configured Autotask billing setup runs largely on its own — Work Types route time correctly, contracts handle inclusions and exclusions automatically, invoices sync to your accounting system, and the Billing Dashboard gives you visibility over everything that's pending.
Getting to that point requires the right foundation. If your billing process still relies on significant manual effort each month, the configuration is doing work that automation should be handling instead.
kinesys.it • info@kinesys.it • HaloPSA Official Partner & Autotask Experts