Case study · B2B Web
Settings page for Budget Code setup
ServiceTitan was losing out on significant market share of construction customers because the product was missing a core capability they couldn't work without: a way to track and reconcile project spend against a budget.
Construction businesses run on budget codes — structured cost classifications (phase, cost type, cost code) used to track spend across large, multi-phase projects. Without native support for this, customers had no reliable way to manage project financials in the product at all.
Two critical patterns emerged from talking to customers, and they shaped our entire approach to the problem.
“How might we create a shared budget-code system that lets customers consistently categorize and track costs across the construction project lifecycle?”
With limited time, we scoped the MVP down to the most important pieces project plan tasks and financials, with Purchase Orders and Pricebook planned for a later phase.
If the different squads that needed to utilize this budget code selector couldn’t come to an agreement on how this dropdown was going to function, we would be faced delay of the project or worst yet, a non functional tool for our users. With the help of Claude I worked to figure out alternatives of best displaying the right segments together.
Ideating on how to best display the different segments; displaying the entire code together, separating each segment and showing keyboard shortcut keys.
I worked directly with engineering and our finance/accounting stakeholders to align on an approach that served both groups: a searchable dropdown supporting direct code entry and full-text search, without fragmenting the experience into two separate tools.
The budget code dropdown is a single selector where each segment auto-populates the next once the previous one is selected. If a user makes an error, they simply click back into that segment in the text field, and its options repopulate.
Creating a cost tracking system throughout ServiceTitan to accurately track budgeted vs. actual costs against a project.
End-to-end workflow from setup to applying
We spoke with customers to understand how they structure and use budget codes to prevent an inconsistent experience from existing industry standards. Users configuring the system have different needs from someone simply assigning a budget code.
Setting up Budget Code foundation and structure in Settings
Key insights: There wasn't one universal budget structure. Customers needed flexibility at the project level, but the product still needed a consistent foundation to start.
A project manager can configure the budget code structure on a per project basis depending on how the type of project it is. ie. large complex has a lot more variables vs a single family home buids.
The challenge was designing a budget code experience that was easy to use, reusable, and consistent across multiple workflows.
Because different users interacted with budget codes in different contexts, their needs varied significantly: project managers prioritized speed and efficiency, often relying on memorized shortcuts, while accountants and occasional users needed a more discoverable experience.
Because budget codes connect costs across the product, a code entered in one workflow needed to remain consistent and recognizable wherever those costs were managed.


I measured success not just by shipping the feature, but by tracking it through the customer journey: setup completion, time-to-first-budget-code-created, and adoption across teams in the weeks after release.
This project enabled ServiceTitan to move beyond a residential-based product and opened the door for customers to manage heavy commercial construction projects. To make it even easier for customers, we want to build industry-specific cost structure templates.