top of page

Quickbooks Online Job Costing – The Negative Duplication Method to Labor Allocation

Quickbooks Online provides simple job costing capabilities. We are equipped with the functionality to tag revenue and expenses to a particular job so we can run a Profit & Loss report and gather profitability analytics by filtering on that job. So then we can see how much we received and spent on that particular job. This includes payments to subcontractors, supplies/materials, permits (and other legal fees), travel, etc. Sounds simple, right?

Not so fast, unfortunately.

One thing we cannot yet accomplish is allocating labor costs to jobs. If your employees spent time working on a specific job or project, these costs will not be reflected on your P&L. From their timesheets, we can manually compute labor wages by multiplying employee hours by their hourly rate. To skip this step, you can mark all employee timesheets as billable and run a “Time Activities by Employee Detail” report in QBO to see total hours and labor. If you are OK with running two separate reports to view profitability by job, then you can skip everything below.

If you want to equip yourself or your manager with one-stop job profitability reports with everything under one roof, look no further! Here is a super awesome and kind of weird workaround. We will be using the power of negative multiplication in conjunction with timesheets, time charges, deposits and undeposited funds. But don’t be scared, it will all make sense and work perfectly if you follow every step carefully.

For starters: When we refer to jobs in Quickbooks Online, we are actually referring to sub-customers. If you provide services to clients with multiple locations or are contracted for multiple projects with one client, set each location or project up as a sub-customer of your client (or customer).

Follow the five steps below in order to configure your QBO account properly.

Set Up

Step 1: Create a new expense account and name it “Allocated Labor."

Step 2: Create a new product/service and also name it “Allocated Labor.” Within the Sales Information section, select the “I sell this product/service to my customers” checkbox and choose the “Allocated Labor” expense account that you set up in Step 1 as your income account. Also, make sure “Is taxable” is selected.

Step 3: Create a new sales tax account. Click on Sales tax from your menu and then choose “Add/edit tax rates and agencies”. Click New. Select single tax rate and input “Allocated Labor” as your tax name and agency name and set your rate to 100%.

Step 4: Go to Company Settings and click on the Sales tab. Within the “sales form content” section, make sure that “Deposit” is enabled.

Step 5: Also within Company Settings, click on the Advanced tab. Within the “time tracking” section, make sure that “Add Service field to timesheets” and “Make Single-Time Activity Billable to Customer” are enabled.

That’s it! The hard part is over. Now on to actually allocating the labor…

Time Charges and Labor Allocation

When your timesheets are marked as billable to a customer (or sub-customer), you will notice that a “time charge” will appear when you visit that customer’s account. You have the option to convert these time charges to invoices and bill them back to your customer. This is what we are going to use but we are not going to actually bill the customer.

Step 1: Go to your customer (or sub-customer) account and select “Start Invoice” next to the open time charge.

Step 2: Choose “Allocated Labor” as your sales tax account to calculate your invoice.

Step 3: In your “Deposit” field, enter in the total amount of your invoice. For example, if your time charge generated an invoice for 5 hours @ $15/hour for a total amount of $75, applying the Allocated Labor sales tax would yield a total invoice amount of $150. This is the amount that you want to enter into your Deposit field, ultimately leaving you with a $0 invoice.

Step 4: Because you indicated that there is a deposit, you will notice that a “Deposit to” box appears. Choose “Undeposited Funds” and click “Save and Close.”


Step 5: Create a bank deposit. Select your customer (or sub-customer) from the “Select Existing Payments” section. From the “Add New Deposits” section, choose your “Allocated Labor” expense account and enter in the amount that will convert this deposit into a $0 deposit. So if your deposit from the invoice is $150, then your new deposit here would be -$150. Also enable “Track returns for customers” and choose your customer (or sub-customer). Click “Save and Close.”

Step 6: Run a YTD balance sheet report and eyeball the amount sitting in your Allocated Labor liability account. Create a journal entry crediting this liability account by this amount and debiting the Allocated Labor expense account. Using our current example, your journal entry would credit your Allocated Labor liability account and debit your Allocated Labor expense account by $75. Do not allocate a customer or sub-customer here!

The Result

You will now be able to run a Profit & Loss report and filter on any customer (or sub-customer) and view a complete profitability report, including labor! You will also notice that your overall P&L and Balance Sheet are not impacted whatsoever. We created a $0 invoice, a $0 deposit and offset the balance in Allocated Labor on the P&L with the balance in the Allocated Labor liability account (on the balance sheet) via our journal entry.

Please feel free to drop us a line or comment if you run into any trouble and we will be glad to help.


bottom of page