Real-time dashboards in Metabase
Technician Scorecard, Revenue Command Center, Good-Better-Best Analysis, and Membership Performance all update from live warehouse data instead of manual spreadsheet pulls.
Client work - HVAC data
Connected ServiceTitan records to a warehouse and operating dashboards, with agreed metrics and representative revenue reconciliation.
The Challenge
A growing HVAC company running on ServiceTitan had all the data — jobs, invoices, technician performance, memberships — but it was trapped inside a system that only showed surface-level reports.
Decisions were made on gut feeling because no one had time to dig through the numbers or stitch together what was really happening across sales, dispatch, invoicing, and memberships.
Revenue was growing, but nobody could clearly explain where it was coming from, where it was leaking, or which technicians and workflows were actually driving performance.
What the operation was fighting
What We Built
The work covered the warehouse, dashboards, and the custom tooling needed to get ServiceTitan data into usable form.
Technician Scorecard, Revenue Command Center, Good-Better-Best Analysis, and Membership Performance all update from live warehouse data instead of manual spreadsheet pulls.
We built ServiceTitan -> Fivetran -> BigQuery infrastructure with Bronze, Silver, and Gold layers so the business had clean data it could trust.
AI tools can query jobs, invoices, customers, dispatch, technicians, and more directly through a controlled interface tied to the business's real data.
Power users can pull jobs, revenue, estimates, memberships, and technician data directly from the terminal without clicking through the web UI.
How We Built It
The stack was designed to make ServiceTitan data accurate, queryable, and usable across both human dashboards and machine interfaces.
The pipeline runs ServiceTitan -> Fivetran -> Google BigQuery -> Metabase. Bronze holds raw immutable source data, Silver handles cleansing and deduplication, and Gold exposes business-ready marts optimized for real reporting patterns.
On top of the warehouse, we built two open-source tools: a Model Context Protocol server that lets AI assistants query ServiceTitan data directly, and a CLI with 88 named commands for jobs, revenue, technicians, estimates, memberships, and more.
Representative revenue output was reconciled against the ServiceTitan Reporting API source used by the dashboard. That check supported this implementation's operating reports; it does not certify every report or company.
Implementation notes
The Result
The business gained a clearer view of pipeline, close rates, technician performance, and revenue, with agreed definitions and representative source checks.
The dashboards surfaced $1.3M-2.1M in unsold pipeline that was sitting in ServiceTitan the entire time, invisible. A 46% close rate was made visible, giving the sales team a concrete number to improve against. The pipeline figure describes unsold estimate value identified, with no recovered-revenue claim.
The custom integration platform connected dispatch, invoicing, customer history, and technician performance into a single system the business fully controls. Two open-source tools came out of this work and are now public for ServiceTitan teams with API access.
Next Step
If your business software is full of data you still cannot act on, let's fix that.
hello@rowvyn.com