Skip to main content
Procore (en-CA)

Assign Default Cost Types To Cost Codes


To assign a cost code cost type to a standard cost code from an integrated ERP system.


In the construction industry, cost codes are used to account for the various cost types on a project and to identify the specific work being done on a construction project. Many construction accounting teams base their cost code structure on the CSI Master Format (see What are Procore's default cost codes?). Other teams might design a unique cost code structure to suit their company's specific business requirements. To learn about the types of cost code structures supported in Procore, see Import Cost Codes to Procore

If your company has enabled the ERP Integrations tool to work with an integrated ERP system where the 'Cost Type' concept is supported, your accounting team might classify their cost codes into different classes. For example, Sage 300 CRE® 'Classes' are equivalent to Procore 'Cost Types.' Some common examples of 'Cost Types' that might be used to group cost codes include: E=Equipment, L=Labour, M=Materials, O=Overtime and so on.

Grouping individual cost codes into one or more cost types is a common practice for subcontractors and other construction businesses whose expenses are primarily internal. For example, DE=Direct Expenses and L=Labour. For general contractors, who might need to track a large number of subcontractors, it might be less common to group codes into cost types.

Things to Consider

  • Required User Permissions:
    • 'Standard' or 'Admin' level permissions on the company's ERP Integrations tool. 
  • Additional Information:
    • You can assign one or more cost type(s) to each standard cost code. For example, both L=Labour and E=Equipment. 
  • If your company has enabled the ERP Integrations tool:
    • Sage 100 Contractor® or Sage 300 CRE®
      • Do NOT use the steps below if you have:
        • Created a new job in Sage and want to import it into Procore. Instead, see Add a Sage 100 Contractor® Job to Procore or Add a Sage 300 CRE® Job to Procore.
        • Enabled the Budget tool on the project. Instead, choose one of these options:
          1. Set up the project cost codes on your budget with the appropriate cost type assignments. This automatically sets the cost types in the project's Admin tool when it's pushed to Sage 100 Contractor® and Sage 300 CRE®.
          2. Temporarily disable the Budget tool on the project. Then set the cost type assignments as described below and then re-enable the Budget tool on the project.
        • Use the steps below ONLY when you are creating a new Procore project and want export it to create a new job in Sage 100 Contractor® and Sage 300 CRE®.
        • After the Procore project and the Sage 100 Contractor® and Sage 300 CRE® job are synced, the cost code cost type assignments are locked in the ERP Integrations tool and the following rules are applied:
          • If you want to add a new cost code cost type assignment in Procore, you may do so using the Steps below. Your changes must then be sent to the ERP Integrations tool and accepted by an accounting approver. Upon acceptance, the cost codes and assignments will be synced with Sage 100 Contractor® and Sage 300 CRE®. 
          • You are not permitted to remove cost code cost type assignments in Procore.
  • Alternative Method:


  1. Navigate to the company's ERP Integrations tool.
  2. Click the Std. Cost Codes & Cost Types tab. 
  3. For each standard cost code in your company's list, mark one (1) or more checkboxes to assign the code to one (1) or more cost type.
    • To apply a specific cost type to all of the cost codes in the list, double-click the desired cost type column. 
    • You can hover your mouse cursor over the column headings, to reveal a tooltip that shows the full name for the cost type.
    • Cost Types are created in the Sage 100 Contractor® and Sage 300 CRE® systems. 

    The cost type assignments are automatically saved.