Overview
Budget Codes allow you to standardize and configure detailed project segments, like cost codes and cost types, to gain better control and visibility into your project financials. These segments ensure you can break down complex projects with comprehensive views into every cost category across every phase.
Who uses this feature
Administrators, office employees, managers, accountants, bookkeepers, dispatchers, and customer service representatives (CSRs)
Primarily for Residential Construction and Commercial Construction business types
Feature configuration
Account configuration is required to use this feature. Please contact Technical Support for details.
Things to know
All budget segment codes and descriptions must be unique.
Only project estimates can be imported into the project plan.
The Cost Codes settings screen was previously named Work Breakdown Structure. If you search Settings for "work breakdown structure," ServiceTitan still finds Cost Codes.
To see Cost Codes in Settings, you need the View and edit Cost Codes settings and View and edit an individual Project Cost Codes settings permissions to access cost codes settings. Owners and Admins have it by default.
Create budget code segments
By default, ServiceTitan creates three segments: Cost Code, Cost Type, and Phase. Cost Code and Cost Type are required and always part of your budget code structure. Phase is turned off until you enable it. For more, see Enable and rearrange budget code segments. To create new segments:
Go to the top toolbar and click Settings
.In the side panel, go to Operations > Cost Codes.
Click Create Segment.

Enter a name for the segment and click Create.

In the Segments list, click the name of the segment you created.
Click Create "Segment Name."

Enter a Code and Description.
When finished, click Save.

Repeat steps 6-8 until your segment has every budget code it needs.
Import budget codes using Excel templates
Instead of creating each individual budget code in a segment manually in ServiceTitan, you can download the Excel template, fill it out, and then upload it. To use Excel templates:
Go to the top toolbar and click Settings
.In the side panel, go to Operations > Cost Codes.
Create a new segment or click an existing one to edit it.
Click Download Template to download a blank Excel spreadsheet.

Open and fill out the Excel sheet on your device by entering a Code and Description for each budget code.

(Optional) If you're importing cost codes, add child codes to the sheet by naming them "Parent code-Child code." Add a description for each child code as normal.

Save any changes you make to the sheet.
When finished, go back to ServiceTitan and click Import.
Select the Excel file you just saved.

Create cost codes
By default, ServiceTitan creates Cost Code as a segment. To create cost codes within that segment:
Go to the top toolbar and click Settings
.In the side panel, go to Operations > Cost Codes.
Click Cost Code.

To create a new parent cost code, click Create Cost Code.

Enter a Code and Description for the cost code.
When finished, click Save.

To add a child cost code, go to the Actions column and click Add
. 
Note: Only the Cost Code segment can have child codes, and they can be one level deep.
Enter a Code and Description for the child cost code.
When finished, click Save.
Repeat steps 4-9 until all cost codes are created.
Create cost types
By default, ServiceTitan creates Cost Type as a segment. To create cost types within that segment:
Go to the top toolbar and click Settings
.In the side panel, go to Operations > Cost Codes.
Click Cost Type.

To create a new cost type, click Create Cost Type.

Enter a Code and Description for the cost type.
Select one of the following Cost Categories from the dropdown:
None
Material
Labor
Equipment
Subcontract
Overhead
Other
When finished, click Save.

Repeat steps 4-7 until all cost types are created.
Enable and rearrange budget code segments
To edit the structure of your budget codes:
Go to the top toolbar and click Settings
.In the side panel, go to Operations > Cost Codes.
Click the Budget Code tab.

Tip: You can also access this screen by clicking Edit.
Click the checkbox for each segment to enable or disable them.

Note: Cost Code and Cost Type cannot be disabled.
Click, hold, and drag any enabled segment to rearrange the order of your budget codes.
Note: Any changes made here do not impact existing projects.
Assign cost codes and cost types to your pricebook items
After you have cost codes and cost types set up, you can assign them to the services, materials, and equipment in your pricebook using the Budget Code dropdown. For more information on editing items in the pricebook, see Edit pricebook items and Import and export your pricebook.

Assign cost types to GL accounts
You can assign a cost type directly on the GL account to ensure job cost is captured and categorized properly if no budget code is assigned to a pricebook item.
To assign a cost type to a GL account:
On the top toolbar, click Settings
.In the side panel, click Accounting > General Ledger Accounts.
In the General Ledger Accounts settings screen, find the GL account you want to assign a cost type to.
Click the Action
> Edit.On the Edit GL Account screen, select a Cost Type from the dropdown.
When finished, click Save.

Use budget codes in projects
Change the budget code structure for a project
The Budget Code Structure set in settings automatically applies to any new projects, but you can also edit this structure for each project individually. To edit the budget code structure for a project:
Open the project.
Click Project Budget Code Structure
. 
Click the checkbox for each segment to enable or disable them.

Note: Cost Code and Cost Type cannot be disabled.
Click, hold, and drag any enabled segment to rearrange the order of your budget codes.
When finished, click Save.
Budget codes in project jobs
Once you have your budget codes set up, you can manually assign them to any job that is attached to a project. To use budget codes in jobs:
Go to the Jobs & Appointments section of your desired project.
Open the job you want to add budget codes to.
Click Edit Job.

Select a budget code from the appropriate dropdown.

Note: The available budget segments depend on the budget code structure set for the job's project.
When finished, click Save.
Budget codes in project estimates
Once you have your budget codes set up, you can manually assign them to line items in your project estimates. To use budget codes in project estimates:
Go to the Estimate section of your desired project.
For any line item that you want to have a budget code, click any section of the Budget Code column you want to edit.
Select a budget code from the appropriate dropdown.

Repeat steps 1-3 until every line item that needs a budget code has one assigned.
Budget codes in Project Plans
As estimates are built and sold, their line items contain budget codes that can be imported into a project's plan for a detailed breakdown of the project's cost categories and phases. This can be done if you want your project plan to mirror your financials and budget code structure.
To use budget codes in project plans:
Go to the Estimate section of your desired project.
Review every sold estimate and ensure their line items have the correct budget codes assigned.
Go to the Project Plan section of the project.
Click Import from estimate.

Note: Only budget codes with a cost type that is using the Labor cost category can be imported into the project plan.
Select which budget code segments you'd like to include from the dropdown. If you'd like to change the budget code order, see Change the budget code structure for a project.

Tip: If you don't want to import the full structure, start by importing the highest level segment and then assign jobs to each code as needed.
When finished, click Add.

The Budget Code column is populated and each line item in the project is categorized by their corresponding code. For more information about project plans, see Project Plan overview.

Update and remove budget code segments from a project plan
If any of your budget codes have been edited in ServiceTitan, click Update to apply those changes to the budget codes currently assigned to a project plan.

If you need to start over or if budget codes were added to a project by mistake, click Remove Segments and click Remove to confirm your choice. Doing so removes every budget code from the project plan.
