Job Cost Accounting in ContractorTools
People in the construction industry use the term “Job Costing”, or sometimes “Cost Accounting”. To cover all bases, I’m going to call it “Job Cost Accounting”.
Job cost accounting means tracking the actual costs (as opposed to estimated costs) of construction jobs. In other words, the numbers in an estimate are what you think a job will cost, and the numbers entered in job cost accounting (“actual costs”) are what the job actually cost.
Why Do Job Cost Accounting?
There are basically two reasons to do job cost accounting.
1) Invoicing
One reason to do cost accounting is so that you can invoice your customers based on the actual cost of job items, as opposed to the estimated cost.
This brings up the idea of “contract type”: there are three types of construction contracts:
“Fixed Sum”
“Cost Plus”
“Time and Materials”.
Fixed Sum jobs are invoiced based on the estimated costs.
Cost Plus jobs are invoiced based on the actual costs, plus a markup percentage agreed upon in the contract. Both the actual cost and the markup is revealed to the customer.
Time and Materials jobs are invoiced based on the actual costs, plus a markup percentage that is not revealed to the customer.
One more thing... “Allowances”, or “Allowance Items".
Allowance Items are estimate line items for which you cannot provide an estimated cost until the customer selects a specific product or material for that line item. There are a million examples of this, including everything from roofing, windows, siding, trim, decking and flooring materials, and all finish fixtures and appliances.
So designating a line item as an Allowance item allows you to plug in a ball park number for the item in order to come up with an estimate, but also indicate to the customer that the amount for that item is what you are “allowing” for that cost, but that the customer will be invoiced based on the actual cost of the item; typically this means that if the actual cost is less, they will still get billed for that amount, but if the actual cost is higher, they will get billed based on the higher amount (with markups). So this is why you need to track the actual costs of allowance items in a fixed sum job.
The idea of an “allowance item” doesn’t apply to Cost Plus or Time and Materials jobs because all items in Cost Plus and Time and Materials jobs are allowances. So that means you need to track the actual costs of all items in Cost Plus and Time and Materials jobs.
2) Estimated vs Actual Cost Analysis
The other big reason to do job cost accounting is so you can compare the difference between what you estimated a job will cost, and what it actually did cost.
This is very important. With all due respect, a lot of contractors do a lot of jobs never knowing what the job actually cost, and with that being the case, never know whether they made or lost money on the job, or why. And if you don’t know where or why you made or lost money on a job, you’re flying blind. The only way to get a handle on this is by doing job cost accounting.
Job cost accounting is the fundamental tool that allows you to tune your business to be profitable. Good job cost accounting only allows you to see where you made or lost money in one job, and across multiple jobs. ContractorTools allows you to do that.
Entering Actual Costs
Before going into the details of how to enter actual costs in ContractorTools, it would be helpful to understand some important ideas related to how cost accounting works in ContractorTools.
In ContractorTools, estimated costs are entered for individual estimate line items. Estimate line items can be grouped in various ways, but estimated costs can only be entered on the detail line item level - separated by cost type: Materials, Labor, etc.
On the other hand, actual costs can be entered anywhere in a job: On the estimate line item level, but also on any estimate item group level, or the job level, and for change orders, on the line item level, or on the change order level. In other words, you can enter actual costs against an estimate line item, an estimate item group, or against the job (no item or item group in particular).
Why enter costs on levels higher than the line item detail level? Definitely the most accurate way to track costs is on the line item detail level, but there are a few reasons why that’s not always possible, or at lease very time consuming. A big reason is because sometimes purchases (for products, materials, or subcontracts) are for multiple estimate line items, and it’s too much hassle to scan through a receipt or invoice and figure out how much of the cost to apply to which estimate line items.
So how do you decide how/where to enter actual costs? The rule of thumb is:
Actual costs of “Allowance” items HAVE TO be entered on the detail line item level. Otherwise, it’s not possible to know how much to invoice the customer for the allowance item.
Other than Allowance items, the lower the level of detail the better, but when when that's not possible or convenient, enter it on the next level up.
For example, if you estimate multiple line items in a group called “Landscaping” that are broken out into costs for things like grading, sod, shrubs, trees, rocks, masonry, etc., but your landscape contractor gives you one invoice for all of it, if they itemized the invoice, you might want to go in and enter the separate costs for each detail line item, but that's not really necessary, and it would be a lot easier to just enter the total against the “Landscaping” item group.
Tracking costs on the detail line item level is great, but all that really matters is that you assign actual costs to a “Cost Category”.
Cost Categories
Cost categories are what the name implies: categories of costs. Cost categories allow you to summarize actual costs by cost category. This applies to costs within a job, but also across multiple or all jobs! That means that when you assign actual costs to cost categories, you can see reports that show estimated vs actual costs by cost category, within a job, or across multiple jobs.
Estimate line items have cost categories, so when you enter a cost against an estimate line item, the cost is automatically assigned to that cost category. But if you don’t enter actual costs against estimate line items, you can still assign them to cost categories, so in the end of the day, while you might not be able to compare estimated vs actual on the line item level, you will still be able to compare estimated vs actual costs on the cost category level, and that is really all you need: how much you estimated for a cost category, and how much you spent.
More About Entering Actual Costs
As I’ve said above, you can enter actual costs against line items, or against item groups (in the estimate or change order), or against jobs (or change orders), but you can also enter actual costs against purchase orders, and there’s a really good reason to do that.
If you create them, purchase orders already have everything you need to know in order to enter the actual cost for the purchase of each purchase order line item: the item quantity, and the cost per unit. When you enter actual costs for purchase orders, ContractorTools defaults the actual item quantity, unit of measure, and cost per unit to what is in the purchase order. If that’s actually was was purchased, just hit save, and you’re done. If there was any difference between what is in the purchase order and what was actually purchased, then just make those changes (to quantity or unit of measure, or cost per unit), hit save, and you’re done.
OK, so now how do you do all of this in ContractorTools…
