Quick Answer
You bridge ServiceTitan and Sage Intacct with Make.com sitting in the middle. ServiceTitan fires webhooks when jobs close. Make.com normalises the data, runs anomaly checks with its built-in AI module, then pushes financials into Sage Intacct and operational KPIs into a live dashboard. The board sees revenue per call, technician utilisation, and job margin updated hourly, not monthly. Setup takes a competent ops lead about a week. Running cost sits at roughly £25 a month on top of what you already pay for the three platforms.
Table of Contents
- Why enterprise FSM analytics turned into a competitive moat
- The three platforms and what each one is doing
- The numbers a 50-technician business needs on screen
- How the pipeline is wired together
- Step-by-step setup in Make.com
- Adding the AI anomaly layer
- Building the board-facing dashboard
- What this actually costs
- The five places this goes wrong
- What enterprise contractors are saying
- Recommended videos
- Frequently asked questions
- My verdict
ServiceTitan
Sage Intacct
Make.comWhy enterprise FSM analytics turned into a competitive moat

Most 50-technician businesses I see still run on month-end accounts. The finance director closes Sage on the 5th, the board meets on the 15th, and by then the data is six weeks stale. That used to be acceptable. It isn't any more.
The bigger HVAC and plumbing groups in the UK are now running live KPI dashboards. They know technician utilisation by lunchtime. They know revenue per call before the day finishes. They spot job margin slipping on a category before it bleeds into the quarterly numbers. ServiceTitan has put a lot of this analytics power into its own product, but the link to a proper finance system like Sage Intacct is where most operators get stuck.
The gap is real. ServiceTitan publishes an analytics suite. Sage Intacct publishes an open API. There is no off-the-shelf bridge that wires both into a single board-facing dashboard with AI on top. That's the gap this guide fills, and it's the gap Make.com is good at closing.
The three platforms and what each one is doing
Before we get into the wiring, get clear on the role each system plays. This is where teams go wrong, treating the three as overlapping rather than complementary.
ServiceTitan is the operational source of truth. Every booked job, every dispatch, every invoice raised in the field starts here. It already produces a dashboard, but the dashboard is fixed to ServiceTitan's view of the world. It doesn't know about your group structure, your inter-company allocations, or your cost-of-sale assumptions from finance. ServiceTitan's API documentation is the right reference for the integration itself.
Sage Intacct is the financial source of truth. It holds the chart of accounts, the multi-entity structure, the consolidated P&L. ServiceTitan's official Intacct integration syncs receipts, bills, inventory adjustments and invoices across. Useful, but limited. It moves accounting transactions, not operational KPIs.
Make.com is the orchestration layer. It pulls operational data from ServiceTitan, pushes accounting transactions into Sage Intacct, runs business logic on top, and emits the unified KPI feed into your dashboard tool of choice. Make has a native ServiceTitan connector with 9 modules covering jobs, customers, receipts and arbitrary API calls, and a Sage Intacct connector on the other side.
The numbers a 50-technician business needs on screen

Before you build, decide what gets displayed. The temptation is to put everything on the dashboard. Don't. A board dashboard is not a data exploration tool. It surfaces the four or five metrics that drive decisions in the next 24 hours, and it surfaces them with enough context to act.
These are the four I'd recommend for any 50-plus technician operation:
Each of these has a source system, a calculation method, and a refresh cadence. Get the definitions written down before you build the pipeline. I've seen operations teams burn a fortnight arguing about what counts as billable hours after the dashboard was already running.
Technician utilisation
Billable hours divided by scheduled hours. Source: ServiceTitan timesheets and job records. Cadence: hourly. The 80 to 90 percent band the NetSuite field service KPI guide cites is your benchmark. Anything below 70 percent over a week and someone needs to ring the dispatch team.
Revenue per call
Total invoiced revenue divided by number of completed jobs. Source: ServiceTitan invoices. ServiceTitan's own published technician productivity gains suggest contractors who optimise the platform typically see 20 to 35 percent improvement here. Set a category target, not a global one. Reactive plumbing repairs at £180 average is fine. Reactive plumbing repairs at £350 average is excellent. Boiler installations at £350 is a problem.
Gross job margin
Revenue minus direct cost, by job. Source: ServiceTitan revenue plus Sage Intacct cost-of-sale lines. This is where Make.com earns its keep. Neither system can compute this alone. ServiceTitan doesn't carry your full overhead and material-cost coding. Sage Intacct doesn't carry your job-level granularity. This mirrors the approach taken in real-time job costing integrations, just with different underlying platforms.
First-time fail rate
Jobs that need a return visit, expressed as a percentage. Source: ServiceTitan job history. A 4 percent threshold is the right tripwire for most trades. Above that and you've usually got a training or parts-stocking issue.
How the pipeline is wired together

The architecture is simpler than it looks. There is one Make.com scenario that runs every hour. It does five things in sequence, and each one is built from native Make.com modules without writing a line of code.
- Pull operational data from ServiceTitan. Make's
Search Customers,Search Receipts, and theMake an API Callmodules collect jobs, technician timesheets, and invoices for the last 60 minutes. - Pull cost lines from Sage Intacct. The Sage Intacct connector reads cost-of-sale entries and overhead allocations for the matching job codes.
- Calculate KPIs. Make's iterator and aggregator modules compute utilisation per technician, revenue per call by category, and gross margin per job.
- Run the AI anomaly module. Make's built-in AI module flags any KPI that has moved more than two standard deviations from the trailing 30-day average.
- Push to the dashboard and notify on anomalies. Compiled metrics land in a Google Sheets or Looker Studio source. Anomalies trigger a notification to the ops director.
Run that on the hour, every hour, and you have a board-facing dashboard that's never more than 60 minutes out of date. The accounting sync runs separately on its own ServiceTitan-to-Intacct connector and stays on the daily cadence the finance team is used to.
Step-by-step setup in Make.com
Here's the build sequence. Assume you've already got working ServiceTitan and Sage Intacct accounts with admin access to both APIs. Total time to first running scenario: roughly six to eight hours of focused work spread over a week.
Step 1: Generate API credentials in ServiceTitan
In ServiceTitan Settings, go to Integrations and request API access. ServiceTitan will issue a client ID, client secret, and a tenant ID. You also need the app key for your specific environment. Save these in a credentials manager, not a spreadsheet.
You'll need the following API scopes enabled: Jobs.Read, Invoices.Read, Customers.Read, Technicians.Read, Timesheets.Read. Don't request write scopes for this pipeline. The accounting writes happen on the native Sage connector, not through Make.
Step 2: Generate Sage Intacct sender credentials
In Sage Intacct, the developer portal issues sender credentials separately from user credentials. You need both. The sender ID and password authenticate your application. The user ID and password authenticate the company-level access. Sage Intacct's permission model is granular, so set up a dedicated integration user with read access on GL accounts, customers, and projects.
Step 3: Connect both platforms in Make.com
Create a new scenario in Make. Add a ServiceTitan connection using the credentials from Step 1. Add a Sage Intacct connection using the sender and user credentials from Step 2. Test each connection separately before wiring anything together. If ServiceTitan throws an auth error, regenerate the app key. If Sage Intacct throws a permission error, your integration user is missing a read scope.
Step 4: Build the pull side
Drop a Make scheduler module at the start of the scenario, set to run on the hour. Add a ServiceTitan Make an API Call module pointing at /jobs?modifiedAfter={{now-1h}}. This grabs every job that's been touched in the last hour. Add a similar call for invoices. Add a third for technician timesheets.
Then add the Sage Intacct module, querying GL line items tagged with job codes that match the ones you just pulled from ServiceTitan. Make.com's iterator handles the matching by job code.
Step 5: Build the calculation side
For utilisation, sum billable hours per technician from timesheets and divide by their scheduled hours. For revenue per call, group invoices by service category and average the totals. For margin, subtract the Sage cost line from the ServiceTitan revenue line per job code.
Make's aggregator module does the grouping. Make's arithmetic functions do the maths. None of this needs custom code. If you find yourself reaching for the JavaScript module to do basic arithmetic, you've taken a wrong turn somewhere.
Step 6: Push to the dashboard
Write the computed KPIs to Google Sheets, or directly into Looker Studio's BigQuery source. Each row is one timestamp, one set of KPIs. The dashboard reads off the most recent row. Keep 90 days of history at most. If you need long-term trend analysis, that lives in Sage Intacct's own reporting, not in your operational dashboard.
Adding the AI anomaly layer

This is the bit most operators skip and shouldn't. A dashboard that just shows numbers is useful. A dashboard that tells you when a number is unusual is transformative. Make.com's built-in AI modules can do this without you hand-coding any forecasting. For a deeper dive on automated dashboarding, similar approaches work with other platforms and tools if you're not locked into Make.
The setup is straightforward. Inside the same scenario, after you've computed each KPI, add a Make AI module. Feed it the last 30 days of values for that KPI. Ask it for the two-standard-deviation band. If the current value falls outside that band, branch to a notification module.
I'd recommend running anomaly detection on three things and three things only: technician utilisation by team, revenue per call by category, and first-time fail rate by trade. Run it on too much and you'll get alert fatigue. The ops director ignores notifications by week three and the whole layer becomes dead weight.
What to do when the AI flags something
The notification module should send to a single named person, not a distribution list. Distribution lists get ignored. The ops director gets the alert, decides whether it's real or noise, and either acts on it or marks it acknowledged. Once a fortnight, review the false-positive rate. If it's over 30 percent, tighten the standard deviation band. If it's under 5 percent, you might be missing real signals.
Building the board-facing dashboard
The dashboard itself isn't the hard part. Once you've got clean hourly KPIs landing in Google Sheets or BigQuery, any decent visualisation tool will render them. Most enterprise operations I've seen use Looker Studio because it's free and connects natively. Power BI works too, especially if you've already got a Microsoft estate. ServiceTitan's own analytics suite ships with prebuilt commercial dashboards, but they don't speak to Sage Intacct.
Build the dashboard with the board's reading pattern in mind. A non-finance director scanning their phone at 7am wants to see four things in five seconds: today's bookings against target, today's utilisation against target, this week's gross margin against target, and any anomaly alerts from overnight. Anything else is buried one tap down.
| Dashboard tool | Cost | Best for | Watch out for |
|---|---|---|---|
| Looker Studio | Free | Most enterprise trades teams | Slow on large data sets, but fine for 90 days of hourly KPIs |
| Power BI | £8.20/user/month | Microsoft-heavy organisations | Licensing gets expensive when you want every regional manager to log in |
| ServiceTitan Analytics Suite | Bundled, but add-on tier | Single-source ServiceTitan reporting | Doesn't see Sage Intacct cost lines, so margin reporting is incomplete |
| Tableau | £60+/user/month | Heavy analytics teams | Overkill for board KPIs, you'll pay for power you don't use |
Personally, I'd start with Looker Studio. It's free, it reads Google Sheets natively, and it's quick to mock up. If you outgrow it, you'll know which features you actually need before you spend on a heavier tool.
What this actually costs
Let's talk numbers honestly. The pipeline itself is cheap. The platforms it depends on are not.
| Platform | 50-tech monthly cost | Notes |
|---|---|---|
| ServiceTitan | £10,000 to £15,000 | £200 to £300 per technician on the mid tier, plus implementation fees you've already absorbed |
| Sage Intacct | £1,500 to £2,500 | From around £18,000 annually for a multi-entity enterprise tier, per ERP Research's 2026 UK guide |
| Make.com Teams plan | £22 to £29 | £29/month for 10,000+ operations, comfortably enough for hourly KPI sync |
| Looker Studio | £0 | Free with a Google Workspace account |
| Implementation labour | £2,000 one-off | One competent ops lead, one week, all-in |
If you're already running ServiceTitan and Sage Intacct as a 50-plus technician operation, you're paying roughly £140,000 a year for the two platforms. Adding Make.com and the dashboard layer is under £400 a year of recurring spend. That's the cheapest meaningful operational visibility you'll ever buy.
The five places this goes wrong
I've watched enough of these implementations to know where they fall over. Here are the five problems that show up most often, with the fix for each.
1. ServiceTitan invoice numbers don't match Sage Intacct reference numbers
The official integration pushes the ServiceTitan invoice number as a reference field, not as the invoice number itself. So your finance team can't reconcile by number. The fix is to push the ServiceTitan number into Sage Intacct's customer reference field via a Make.com pre-processor module. Map it once, never touch it again.
2. Sage Intacct API throttling
Sage Intacct caps client applications at 150 concurrent requests. Hourly syncs rarely hit this, but if you also have other integrations running, you can blow past it during month-end. Build a retry-with-backoff handler into the Make scenario. Make's built-in error handler module covers this without custom code.
3. Technician timesheet data lags
Technicians sometimes complete timesheets the next morning, not at end of shift. Yesterday's utilisation can be revised upward by 5 to 10 percent overnight. Either show a one-day rolling window on the dashboard, or flag yesterday's figure as provisional. Don't pretend the data is final when it isn't.
4. The dashboard becomes a permission-management nightmare
Regional managers want their region only. Finance wants everything. Technicians shouldn't see margin. Looker Studio's row-level security handles this, but it's fiddly. Build the permission structure on day one. Adding it retrofit is twice the work.
5. Nobody actually uses it
You build the dashboard, the board claps, the link gets bookmarked, and nobody opens it after week two. The fix is a Monday morning ops standup where the first ten minutes are spent reviewing the dashboard out loud. If the dashboard isn't part of the meeting cadence, it isn't a tool. It's decoration.
What enterprise contractors are saying
Recommended videos
Frequently asked questions
Because it doesn't see Sage Intacct cost lines. ServiceTitan can show you revenue and operational throughput, but it can't show you true job margin without finance-side cost data. For a 50-plus technician operation reporting to a board, that's a blind spot you can't accept.
Yes. n8n is a perfectly reasonable alternative if you've got someone comfortable self-hosting. Make.com wins on the visual scenario editor and the AI modules being built in. n8n wins on cost at high volumes and on self-hosted data residency. For most enterprise trades, Make is the lower-friction choice. For the highest-volume operations, n8n on a self-hosted instance starts to make sense.
A competent ops lead with Make.com experience needs about a week, spread across credential setup, scenario build, dashboard wiring, and testing. If you've never used Make before, double that. If you have to wait for ServiceTitan to approve API access, the calendar time can stretch to three weeks.
The dashboard stops updating. Your accounting sync between ServiceTitan and Sage Intacct keeps working because that runs on the native connector, not on Make. Make has good uptime, but the operational dashboard is best treated as an additional tool rather than a critical system. The board can still see yesterday's numbers from yesterday's data.
The architecture works anywhere. The platforms are all available in the UK. ServiceTitan is US-headquartered and historically had US-centric defaults around VAT handling and date formats, but the API doesn't care about that. Sage Intacct's UK entity handles VAT and HMRC reporting natively. Make.com is country-agnostic.
No. You need an ops lead who's comfortable with Make.com or a similar low-code platform, plus admin access to both ServiceTitan and Sage Intacct. If your finance director isn't willing to grant API access, that's your real blocker. Get that signed off before you start.
Make it part of a meeting cadence. The Monday ops standup spends the first ten minutes on the dashboard. The board pack includes screenshots. Anyone making a decision that touches utilisation, revenue per call, or margin references the dashboard in the discussion. If nobody references it, kill it. A dashboard nobody uses is worse than no dashboard.
My verdict
For a 50-plus technician operation already running ServiceTitan and Sage Intacct, this integration is the cheapest meaningful upgrade you'll make this year. Under £400 of recurring cost, one week of build, and the board sees operational reality the same day it happens. That is a competitive moat. The big national groups have been doing this for years through bespoke data teams. The middle market hasn't, mostly because nobody told them how cheap it actually is. Make.com closes that gap. Build it before your competitors do.
One more thing. The hardest part of this isn't the technology. It's getting the board to agree what utilisation means, what counts as a billable hour, what category structure to report on. Sort the definitions first. Build the pipeline second. If you do it the other way round you'll rebuild it three times.










