Skip to content
Mesa Web Designers

Dashboards & analytics

Custom ServiceTitan Dashboards & Analytics

ServiceTitan's reports tell you a lot. A custom dashboard tells you what your company measures, in your definitions, on one screen built for the person reading it.

Illustrative · sample data

Operations overview

Last 30 daysAll business units

Completed jobs

412

Sample data

Invoiced revenue

$268K

Sample data

Average ticket

$651

Sample data

Open estimates

96

Sample data

Invoiced revenue by week (sample)

W1W2W3W4W5W6W7W8
Operations overview, sample table
Business unitJobsRevenue
HVAC Service188$104K
HVAC Install31$121K
Plumbing193$43K
Illustrative layout. Every figure, business unit and trend shown here is sample data, not results from any contractor.

Monday morning shouldn't take four reports and a spreadsheet.

In a lot of shops the weekly numbers come together the same way. Someone runs a few ServiceTitan reports, pastes them into a spreadsheet only that person understands, and emails a summary by noon. It works until that person is on vacation, or until two managers bring different revenue figures to one meeting because one counted sold estimates and the other counted invoices.

ServiceTitan's own reporting is capable, and plenty of companies never need more than its built-in reports, dashboards and scheduled exports. Custom work earns its place when the question is specific to your company: a metric defined your way, data joined from somewhere ServiceTitan doesn't see (ad spend from Google, targets the owner sets), or a screen designed for one audience, such as a TV in the shop or a branch manager's phone.

A custom dashboard is a small web application. It reads the data your admin approves through ServiceTitan's API, calculates each metric as written down, and shows it only to the people allowed to see it.

What a dashboard is made of

The parts are familiar. What makes a dashboard useful is that every number on it has a written definition behind it.

  • KPI cards

    A handful of headline figures with the period and the comparison printed on the card: invoiced revenue this month against last month, open estimate value, booking rate. If a number needs a footnote to be read correctly, it gets one.

  • Trend charts

    Weekly or monthly bars and lines, so a slow August reads as a pattern or a blip. Trends need history, which raises the storage question covered below.

  • Filters

    Business unit, branch, job type, technician, campaign, date range. Each filter is defined once, so it means the same thing on every screen.

  • Drill-down tables

    Click the open-estimates figure and see the estimates behind it, with job numbers to look up in ServiceTitan. A total nobody can trace is a total nobody trusts.

  • Roles and views

    The owner sees the company, a branch manager sees one branch, a technician sees their own board. Access is enforced on the server, not by hiding buttons.

How a custom dashboard gets built

The order matters. Most dashboard projects that disappoint skipped the first step.

  1. 1

    Write the definitions first

    Before any code, each metric gets a written definition: which records count, which date decides the period, and how warranty jobs, $0 invoices, recalls and adjustments are treated. The pages in this section show what those definitions look like.

  2. 2

    Map each metric to ServiceTitan data

    Most metrics come from the API's resource families: jobs, estimates, invoices, payments, campaigns, technicians, business units. Where your team already trusts a ServiceTitan report, the Reporting API can return that report's data instead. Which source fits depends on the metric and on the permissions your admin approves.

  3. 3

    Agree storage and refresh

    Decide what is read live, what is summarized, how often it refreshes and what, if anything, is kept. ServiceTitan's API Terms limit storage, so this is settled with its rules in mind before anything is built.

  4. 4

    Build the pipeline on a server

    Credentials stay server-side. The integration pages through results, stays inside ServiceTitan's rate limits, backs off and retries when throttled, and logs every run. The mechanics are the same as any customer and job data sync.

  5. 5

    Build the screens and the roles

    Laid out for the device each role actually uses. A wallboard and a phone screen are different designs, not one design shrunk.

  6. 6

    Reconcile, then hand over

    Each figure is checked against the matching ServiceTitan report for the same period. Where they differ, the reason is written down; it's usually a definition, not a bug. You get the definitions document with the dashboard.

Native ServiceTitan reporting vs a custom dashboard

Start with what ServiceTitan already does. Custom work is for the gaps.

NeedIn ServiceTitanCustom-built
Metric definitionsBuilt-in reports and dashboards with their own definitions, configurable within what the product allows.Your definitions, written down and applied the same way on every screen, including edge cases like recalls and $0 warranty invoices.
Data from other systemsServiceTitan's data, plus marketing data from ServiceTitan products your account includes.ServiceTitan data shown next to ad spend from Google Ads or other platforms, or targets the owner enters, in a design agreed with ServiceTitan's storage and third-party rules in mind.
AudienceStaff with ServiceTitan logins and the permissions to open the report.A screen built for one audience: the owner's phone, a shop TV, a branch manager who doesn't need the rest of the system.
Exports and schedulesReports can be exported and scheduled inside ServiceTitan as PDF or Excel files.Live screens that don't depend on someone opening an attachment. For numbers delivered to an inbox, see scheduled report emails.

Where to start

Most owners start with one screen. The executive KPI dashboard is the usual first build because it forces the definitions conversation: what revenue means here, what counts as a completed job. From there, companies add the view that matches their biggest open question: booked versus invoiced versus collected revenue, technician performance, marketing ROI by channel, the lead-to-booked-job funnel, branch comparisons or job profitability.

If what you want is the data in a tool your team already uses, a Power BI integration or a feed into Google Sheets may fit better than a custom screen. Both move ServiceTitan data into a third-party service, so they're also designs to confirm against ServiceTitan's rules for your account.

A dashboard is a custom web application like any other we build. The HVAC Web Designer project includes sales dashboards that attribute booked calls to their source, which is the same discipline: decide what counts, then count it the same way every time. Web apps, portals and integrations start from $575, priced by complexity.

In this category

What to have ready before we talk

None of this is required for a first call, but each answer makes the scope and the quote sharper.

  • The questions the dashboard must answer, in the owner's own words
  • The metrics you track today and how each is calculated (bring the spreadsheet)
  • Which business units, branches or ServiceTitan accounts are included
  • Who views it, on which device, and what each role may see
  • Data to show beside ServiceTitan's, such as ad spend or monthly targets
  • How fresh the numbers need to be: hourly, daily or weekly

Related ServiceTitan development

Mesa Web Designers is an independent developer. We are not affiliated with, endorsed by, or a partner of ServiceTitan. ServiceTitan is a trademark of its owner. What an integration can do depends on your ServiceTitan products, the permissions your admin grants, and the APIs available to your account.

Start the conversation

Get a dashboard you can trust on Monday morning.

Send us the reports and spreadsheets you use now. We'll show you which numbers a custom dashboard would define differently, and what it depends on.

  • Web apps, portals and integrations start from $575, priced by complexity
  • The developer who scopes it builds it and answers the phone
  • Built for ServiceTitan contractors nationwide
Step 2 of 4 · The details50%

What do you need built?

Pick what fits (pick any)

Rather talk? (480) 525-7582. 0% financing on any project, 25% down. See all pricing

Dashboards & analytics: questions we hear a lot.

Why not just use ServiceTitan's built-in reports?

Often you should. ServiceTitan's reports and dashboards cover a lot, and reports can be exported and scheduled. A custom dashboard makes sense when you need your own metric definitions, data from another system beside ServiceTitan's, or a screen designed for a specific audience.

How current are the numbers on a custom dashboard?

As current as the refresh schedule you choose, within what the API allows. Most owner dashboards refresh hourly or overnight. The same report can run only once per minute per tenant through the Reporting API, and bulk export data generally shows changes after about 15 minutes, so to-the-second figures aren't the goal.

Will the dashboard match ServiceTitan's reports exactly?

Where the definitions are the same, it should, and we check that against matching reports before go-live. Where you've chosen a different definition, such as counting revenue by payment date instead of invoice date, the numbers will differ and the dashboard states why.

Where is our ServiceTitan data kept?

Only what the design needs, in a location agreed up front. ServiceTitan's API Terms limit storing API data unless its documentation permits it, so retention and refresh are settled with ServiceTitan's rules in mind before the build. We recommend confirming the plan with ServiceTitan's integrations team.

Can branch managers or technicians have their own view?

Yes. Each login gets a role, and the server returns only the data that role may see. A branch manager can see one branch and a technician their own numbers without access to the rest of the company.

Get a dashboard you can trust on Monday morning.

Send us the reports and spreadsheets you use now. We'll show you which numbers a custom dashboard would define differently, and what it depends on.