Skip to main content

Cost Codes

Required Permission
Manage Company Settings - You must have the Manage Company Settings permission to access this setting.

Cost codes organize your business operations and enable accurate job costing across estimates, schedules, and reporting.

What Are Cost Codes?

Cost codes (also called categories) serve multiple purposes:

  • Organization - Group work by trade or type
  • Job Costing - Track costs against budget
  • Default Markup - Set markup rates per code
  • Reporting - Analyze profitability by category
  • Accounting - Map to QuickBooks accounts
  • Scheduling - Organize calendar by trade

Accessing Cost Codes

  1. Go to Settings
  2. Click Cost Codes (or Categories)
  3. View and manage your cost code structure

Cost Code Fields

FieldDescription
NumberNumeric code for sorting and identification
NameDescriptive name
ParentParent code (for hierarchies)
TypeProduction, Design, or Non-billable
MarkupDefault markup percentage
Sort OrderDisplay order in lists

Cost Code Types

TypeDescriptionUse For
ProductionStandard construction workMost codes
DesignDesign servicesDesign fees, consulting
Non-billableInternal costs not billedWarranty, overhead

Code type affects:

  • Which estimate types can use the code
  • How costs are reported
  • Whether items appear on customer documents
  • How time logged against the code is categorized. When an employee selects this code on the Time Clock, the resulting time entry takes the code's type as its Entry Type — a Design cost code produces a Design entry. See How the Entry Type Is Set.
Type drives time categorization

Because time entries inherit their type from the cost code, a code with the wrong type sends labour into the wrong bucket for job costing and payroll mapping. Review the Type on any code your crews select when logging time. Changing a code's type affects entries created from then on — existing entries keep the type they were saved with.

Allowing Cost Codes for Time Entry

If your company uses the Allowed list (ID-filtered) cost code strategy, you choose which cost codes can be selected when logging time — you manage that list yourself, no support request needed.

When the strategy is active for a cost code type, the cost code list gains an Allowed for Production / Design / Non-billable Time Entries column, and you can set it in either place:

  • From the list — flip the switch in that column on any row. It saves immediately.
  • From the cost code — open the code and use the same toggle in the edit dialog, then Save.

Turn it on to make the code selectable on time entries for that type of work; turn it off to hide it from the time-entry cost-code list.

Each type keeps a separate allowed list — turning a production code on or off does not affect the design or non-billable lists. The column only appears for the types set to the Allowed list strategy, so it is possible to curate the list for Production while Design still follows its estimate.

If your company does not use the Allowed list strategy, the column and toggle do not appear, and which codes are offered is decided by the strategy in use.

Default Markup

Set a default markup percentage per code:

  • New assemblies inherit the code's markup
  • Can be overridden at assembly or estimate level
  • Useful for trade-specific margins

Example:

  • Cabinets: 40% markup
  • Plumbing: 25% markup
  • Labor: 50% markup

Where Cost Codes Are Used

Estimating

  • Organize assemblies by cost code
  • Filter when building estimates
  • Set default markup rates
  • Track estimated costs by code

Scheduling

  • Assign cost codes to calendar events
  • Filter schedule by trade
  • Track time against codes

Reporting

Job cost reports break down by code:

  • Estimated vs actual by code
  • Profitability by category
  • Code trends over time

Job Costing

Track actual costs against estimates:

  • Labor hours by code
  • Material costs by code
  • Variance analysis

QuickBooks Integration

Map cost codes to QuickBooks accounts:

  1. Open the cost code
  2. Set QuickBooks Account
  3. Save

When syncing to QuickBooks:

  • Income posts to mapped revenue account
  • Costs post to mapped expense account

See QuickBooks Integration for setup.

Getting Started