{"id":4716,"date":"2026-07-31T16:35:57","date_gmt":"2026-07-31T11:05:57","guid":{"rendered":"https:\/\/skillarbitra.ge\/blog\/?p=4716"},"modified":"2026-07-31T16:35:58","modified_gmt":"2026-07-31T11:05:58","slug":"construction-bookkeeping-job-costing-us-contractors","status":"publish","type":"post","link":"https:\/\/skillarbitra.ge\/blog\/construction-bookkeeping-job-costing-us-contractors\/","title":{"rendered":"Construction &#038; Job-Costing Bookkeeping for US Contractors"},"content":{"rendered":"<!--\n  Construction & Job-Costing Bookkeeping for US Contractors - VERSION-A\n  WP-paste-ready HTML. Paste directly into the WordPress block editor as\n  Custom HTML or via the Code Editor view.\n  - Slug: construction-bookkeeping-job-costing-us-contractors\n  - Last verified: 2026-07-31\n  - Schema (FAQPage) is included at the bottom in separate wp:html blocks.\n  - VERSION-A: clean (no CTAs \/ Expert Inserts)\n-->\n\n\n<p>Last verified: 2026-07-31<\/p>\n<p>A contractor can show a profit every month and still not know which job earned it. Construction bookkeeping fixes that by tracking money per job, not just per month. Every cost is coded to a project and a cost code, revenue is recognized as the work progresses, invoices go out as progress billings with retainage held back, and a monthly work-in-progress (WIP) report proves the numbers. Done well, it shows the profit on every job while the job can still be saved.<\/p>\n<p>This article sets out how construction and job-costing bookkeeping works for US contractors, from cost codes to certified payroll to the WIP report.<\/p>\n<p>The market behind this skill is large. US construction spending ran at a seasonally adjusted annual rate of $2.21 trillion in May 2026, per the Census Bureau, and the industry employs more than 8.3 million people.<\/p>\n<p>Most contractors are small firms with no accountant on staff. That is why construction is one of the better-paying niches for a remote bookkeeper: the work is specialized, and generic month-based books fail at it.<\/p>\n\n<hr>\n\n<p>The short version: give every job a number, code every cost to a job and a cost code, recognize revenue on percentage of completion, bill monthly against a schedule of values, hold retainage in its own account, and run a WIP schedule at month end to catch overbilling and underbilling.<\/p>\n\n<hr>\n\n<nav class=\"ls-toc\" aria-label=\"Table of contents\">\n<h2>Table of Contents<\/h2>\n<ol class=\"ls-toc-list\">\n<li><a href=\"#h2-1\">How is construction bookkeeping different from regular bookkeeping?<\/a>\n<\/li>\n<li><a href=\"#h2-2\">How does job costing work in construction?<\/a>\n<\/li>\n<li><a href=\"#h2-3\">Which accounting method should a contractor use?<\/a>\n<\/li>\n<li><a href=\"#h2-4\">How do progress billing and retainage work?<\/a>\n<\/li>\n<li><a href=\"#h2-5\">WIP reports, overbilling and underbilling<\/a>\n<\/li>\n<li><a href=\"#h2-6\">Payroll and compliance in construction bookkeeping<\/a>\n<\/li>\n<li><a href=\"#h2-7\">How can you learn construction bookkeeping from India?<\/a>\n<\/li>\n<li><a href=\"#h2-8\">Frequently asked questions<\/a>\n<\/li>\n<li><a href=\"#h2-9\">References<\/a>\n<\/li>\n<\/ol>\n<\/nav>\n\n<hr>\n\n<h2 id=\"h2-1\">How is construction bookkeeping different from regular bookkeeping?<\/h2>\n<p>Construction bookkeeping is different from regular bookkeeping because the unit of account is the job, not the month. A retail store asks one question at month end: did the business make money? A contractor has to ask that question separately for every open project.<\/p>\n<p>On a standard small business file, income and expenses fall into one profit and loss statement per period. That works because the business does the same thing in the same place every month.<\/p>\n<p>A contractor&#8217;s costs are scattered across job sites, and each job is priced individually. One total P&amp;L can hide a losing job behind two winning ones for months. By the time the loss shows up in cash, the money is gone.<\/p>\n<p>Five features force the different approach. Each job needs its own mini P&amp;L. Jobs run for months or years, so revenue has to be recognized before the job ends. Billing runs on progress invoices with 5% to 10% held back as retainage. Crews move between sites, cities and sometimes states, which complicates payroll. And much of the work is done by subcontractors, who bring their own paperwork.<\/p>\n<p>None of this replaces normal double-entry bookkeeping. The account list still follows the standard structure covered in our guide to the <a href=\"https:\/\/skillarbitra.ge\/blog\/us-chart-of-accounts-small-business\/\" target=\"_blank\" rel=\"noopener\">US chart of accounts<\/a>. Construction adds a job dimension on top of it, so every transaction carries two tags: an account and a job.<\/p>\n<h2 id=\"h2-2\">How does job costing work in construction?<\/h2>\n<p>Job costing works by assigning every cost to a job, a phase and a cost code, so each project reports its own costs and its own profit. If a dollar leaves the business for a job, that dollar must land on that job in the books.<\/p>\n<p>Costs come in four direct types. Labor is the crew&#8217;s time, priced at the full cost of employing them. Materials are what gets built into the project, from concrete to fixtures. Subcontractor costs are the invoices from electricians, plumbers and other trades. Equipment is owned machinery charged to the job at an hourly or daily rate, or rentals billed straight to it.<\/p>\n<p>Cost codes give those costs a consistent structure. Larger contractors use CSI MasterFormat, the industry standard that organizes construction work into 50 divisions, such as Division 03 for concrete and Division 26 for electrical. A small contractor does not need all 50. A custom list of 20 to 40 codes that mirrors how the contractor estimates is enough, as long as everyone uses the same list on every job.<\/p>\n<p>Here is what one coded transaction looks like. A lumber supplier invoices $2,840 for framing material delivered to the office fit-out at 2026-014.<\/p>\n<table>\n<thead>\n<tr>\n<th>Field<\/th>\n<th>Entry<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Vendor<\/td>\n<td>Ridgeline Lumber Supply<\/td>\n<\/tr>\n<tr>\n<td>Amount<\/td>\n<td>$2,840.00<\/td>\n<\/tr>\n<tr>\n<td>Account<\/td>\n<td>Job costs: materials<\/td>\n<\/tr>\n<tr>\n<td>Job<\/td>\n<td>2026-014 Office fit-out<\/td>\n<\/tr>\n<tr>\n<td>Cost code<\/td>\n<td>06-100 Rough carpentry<\/td>\n<\/tr>\n<tr>\n<td>Cost type<\/td>\n<td>Materials<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>In QuickBooks Online this is the Customer\/Project field plus a Products and Services item mapped to the cost code. The software matters less than the habit: no job, no posting.<\/p>\n<p>Labor needs one extra step, called labor burden. A carpenter&#8217;s cost to the job is not the wage. It is the wage plus employer payroll taxes, workers compensation and benefits.<\/p>\n<p>A typical calculation looks like this. Base wage $25.00 per hour. Employer FICA at 7.65% adds $1.91. Federal and state unemployment taxes add roughly $0.75. Workers compensation at $6.50 per $100 of payroll adds $1.63. Health cover and paid time off spread to $4.20 per hour. The burdened rate is $33.49, about 34% above the wage.<\/p>\n<p>Cost the job at $25 and every hour of labor looks cheaper than it is. A job that appears to earn 20% can really be earning 8%.<\/p>\n<p>Overhead is the last piece. Rent, insurance, office salaries and the owner&#8217;s truck do not belong to any one job. Either allocate them to jobs as a percentage of direct labor, or leave them below the job-cost line and judge jobs on gross profit. Both work. Pick one, write it down, and apply it the same way every month.<\/p>\n\n\n\n<figure class=\"ls-infographic-wrap\" style=\"margin:2rem 0;\">\n<div class=\"sa-ig-jobcost\" style=\"margin:2rem 0;max-width:860px;\">\n<style>\n.sa-ig-jobcost, .sa-ig-jobcost *, .sa-ig-jobcost *::before, .sa-ig-jobcost *::after { margin: 0; padding: 0; box-sizing: border-box; }\n.sa-ig-jobcost { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; color: #212121; }\n.sa-ig-jobcost .infographic { max-width: 860px; margin: 0 auto; border: 1px solid #e0e0e0; border-radius: 8px; overflow: hidden; background: #ffffff; }\n.sa-ig-jobcost .title-bar { background: #2941ba; color: #ffffff; padding: 20px 24px; font-size: 20px; font-weight: 700; text-align: center; }\n.sa-ig-jobcost .subtitle { background: #eef1fb; color: #1b2a8a; padding: 10px 24px; font-size: 13.5px; text-align: center; font-weight: 600; border-bottom: 1px solid #dfe4f7; }\n.sa-ig-jobcost .content { padding: 24px; }\n.sa-ig-jobcost .step { display: flex; gap: 16px; padding-bottom: 20px; position: relative; }\n.sa-ig-jobcost .step:not(:last-child)::before { content: \"\"; position: absolute; left: 17px; top: 40px; bottom: 0; width: 2px; background: #dfe4f7; }\n.sa-ig-jobcost .num { flex: 0 0 36px; height: 36px; border-radius: 50%; background: #2941ba; color: #ffffff; font-weight: 700; font-size: 16px; display: flex; align-items: center; justify-content: center; position: relative; z-index: 1; }\n.sa-ig-jobcost .body { flex: 1 1 auto; padding-top: 4px; }\n.sa-ig-jobcost .name { font-size: 16px; font-weight: 700; color: #1b2a8a; margin-bottom: 5px; }\n.sa-ig-jobcost .desc { font-size: 14px; line-height: 1.55; color: #333333; }\n.sa-ig-jobcost .entry { margin-top: 9px; background: #f5f5f5; border-left: 4px solid #feae2d; padding: 10px 13px; border-radius: 0 6px 6px 0; font-size: 13px; line-height: 1.6; color: #333333; }\n.sa-ig-jobcost .entry b { color: #7a3b1e; }\n.sa-ig-jobcost .tag { display: inline-block; margin-top: 8px; background: #fdf0d5; color: #7a3b1e; font-size: 11.5px; font-weight: 700; padding: 4px 9px; border-radius: 4px; }\n.sa-ig-jobcost .footnote { margin-top: 6px; padding: 12px 14px; background: #eef1fb; border-left: 4px solid #2941ba; font-size: 13px; line-height: 1.55; color: #333333; border-radius: 0 6px 6px 0; }\n.sa-ig-jobcost .branding { text-align: right; padding: 12px 24px; font-size: 12px; color: #9e9e9e; border-top: 1px solid #e0e0e0; }\n@media (max-width: 640px) {\n  .sa-ig-jobcost .title-bar { font-size: 16px; padding: 16px; }\n  .sa-ig-jobcost .subtitle { font-size: 12.5px; padding: 10px 16px; }\n  .sa-ig-jobcost .content { padding: 16px; }\n  .sa-ig-jobcost .step { gap: 12px; }\n  .sa-ig-jobcost .num { flex: 0 0 30px; height: 30px; font-size: 14px; }\n  .sa-ig-jobcost .step:not(:last-child)::before { left: 14px; top: 34px; }\n  .sa-ig-jobcost .name { font-size: 15px; }\n}\n<\/style>\n  <div class=\"infographic\">\n    <div class=\"title-bar\">How one invoice lands on a job<\/div>\n    <div class=\"subtitle\">Every cost carries four tags: job, phase, cost code, cost type<\/div>\n    <div class=\"content\">\n\n      <div class=\"step\">\n        <div class=\"num\">1<\/div>\n        <div class=\"body\">\n          <div class=\"name\">The cost arrives<\/div>\n          <div class=\"desc\">A lumber supplier invoices $2,840 for framing material delivered to the site. On a generic file this would post to one expense account and disappear into the month.<\/div>\n          <div class=\"entry\">Ridgeline Lumber Supply &nbsp;&middot;&nbsp; <b>$2,840.00<\/b> &nbsp;&middot;&nbsp; framing material<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"step\">\n        <div class=\"num\">2<\/div>\n        <div class=\"body\">\n          <div class=\"name\">Tag the job<\/div>\n          <div class=\"desc\">The invoice is assigned to job 2026-014, the office fit-out. In QuickBooks Online this is the Customer\/Project field. Without this tag the job report can never be right.<\/div>\n          <div class=\"tag\">No job, no posting<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"step\">\n        <div class=\"num\">3<\/div>\n        <div class=\"body\">\n          <div class=\"name\">Tag the cost code and cost type<\/div>\n          <div class=\"desc\">The cost lands on code 06-100 Rough carpentry as a Materials cost. Codes come from CSI MasterFormat&#8217;s 50 divisions or a shorter custom list that mirrors how the contractor estimates.<\/div>\n          <div class=\"entry\">Job <b>2026-014<\/b> &nbsp;&middot;&nbsp; Code <b>06-100 Rough carpentry<\/b> &nbsp;&middot;&nbsp; Type <b>Materials<\/b><\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"step\">\n        <div class=\"num\">4<\/div>\n        <div class=\"body\">\n          <div class=\"name\">The job report updates<\/div>\n          <div class=\"desc\">Job 2026-014 now shows $2,840 more in materials, against the estimate for that code. Actual versus estimated cost per code is the report the contractor actually reads.<\/div>\n          <div class=\"tag\">Job P&amp;L, not just company P&amp;L<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"footnote\">Labor follows the same path with one extra step: it is costed at the burdened rate, not the wage. A $25.00 per hour carpenter costs the job $33.49 once employer taxes, workers compensation and benefits are added.<\/div>\n    <\/div>\n    <div class=\"branding\">SkillArbitrage<\/div>\n  <\/div>\n<\/div>\n<\/figure>\n\n<h2 id=\"h2-3\">Which accounting method should a contractor use?<\/h2>\n<p>The accounting method a contractor should use depends on contract length and company size, and it is often two answers at once: one method for the tax return and another for the financial statements.<\/p>\n<p>Four methods are in play. Cash basis records income when money arrives and costs when they are paid. Accrual records them when earned and incurred. The completed contract method (CCM) defers all revenue and cost on a contract until the job is finished. The percentage of completion method (PCM) recognizes revenue gradually as the work is done.<\/p>\n<p>For tax, the starting rule sits in <a href=\"https:\/\/www.law.cornell.edu\/uscode\/text\/26\/460\" target=\"_blank\" rel=\"noopener\">section 460 of the Internal Revenue Code<\/a>. A long-term contract, meaning any contract not completed in the year it was started, must generally use PCM.<\/p>\n<p>Small contractors get an exemption. A contract escapes required PCM if the contractor expects to finish it within two years and the business meets the gross receipts test: average annual gross receipts of $32 million or less for the three prior years, per <a href=\"https:\/\/www.irs.gov\/pub\/irs-drop\/rp-25-32.pdf\" target=\"_blank\" rel=\"noopener\">Revenue Procedure 2025-32<\/a> for tax years beginning in 2026. The threshold was $31 million for 2025. Home construction contracts are exempt from required PCM regardless of size.<\/p>\n<p>Most small contractors therefore file on cash, accrual or CCM. The books are a different matter. Anyone who needs bonding, a bank line or accurate monthly margins needs PCM-style reporting, because it is the only method that shows profit while the job is running. Under US GAAP, ASC 606 reaches a similar over-time result for most construction contracts.<\/p>\n<p>PCM itself is one formula. Percent complete equals cost incurred to date divided by total estimated cost. Revenue earned equals percent complete times the contract price.<\/p>\n<p>Take job 2026-014: contract $500,000, estimated cost $400,000. Costs incurred so far are $100,000, so the job is 25% complete. Earned revenue is $125,000, and gross profit to date is $25,000. Next month the same formula runs again with updated numbers.<\/p>\n<p>The formula is only as good as the estimated cost. When the estimate moves, percent complete and profit move with it, which is why the estimate gets reviewed at every close. The tax-side mechanics of cash and accrual are covered in our guide to <a href=\"https:\/\/skillarbitra.ge\/blog\/accrual-vs-cash-basis-accounting-us-gaap\/\" target=\"_blank\" rel=\"noopener\">accrual and cash-basis accounting<\/a>.<\/p>\n<h2 id=\"h2-4\">How do progress billing and retainage work?<\/h2>\n<p>Progress billing works by invoicing the client each month for the share of the contract completed, and retainage is the slice of each invoice the client holds back until the job is done.<\/p>\n<p>The tool behind progress billing is a schedule of values. It breaks the contract price into line items, such as $40,000 for site work and $85,000 for framing, agreed before work starts. Each month&#8217;s invoice states the percent complete on each line.<\/p>\n<p>On commercial jobs the invoice usually follows the AIA format: form <a href=\"https:\/\/help.aiacontracts.com\/hc\/en-us\/articles\/1500009387461-summary-g702-1992-application-and-certificate-for-payment\" target=\"_blank\" rel=\"noopener\">G702, the application and certificate for payment<\/a>, with the G703 continuation sheet carrying the line detail. The bookkeeper prepares it, the architect certifies it, and payment follows the contract terms.<\/p>\n<p>Retainage is typically 5% to 10% of each billing, held until completion or a defined milestone. On federal jobs, <a href=\"https:\/\/www.acquisition.gov\/far\/52.232-5\" target=\"_blank\" rel=\"noopener\">FAR 52.232-5<\/a> lets the contracting officer retain up to 10% of a progress payment, and only when satisfactory progress has not been made. The money is earned. It is just not collectible yet.<\/p>\n<p>Here is the running example in numbers. Job 2026-014 bills $50,000 of completed work for June with 10% retainage. The invoice shows $50,000 completed, $5,000 withheld, $45,000 due now.<\/p>\n<p>The entry: debit accounts receivable $45,000, debit retainage receivable $5,000, credit progress billings $50,000. Retainage sits in its own account, not inside regular receivables. Mix them and the AR aging report shows money as collectible that will not arrive for months.<\/p>\n<p>The same discipline applies downward. Retainage the contractor withholds from subcontractors is booked as retainage payable, separate from accounts payable.<\/p>\n<p>How a job is billed follows the contract type. A lump sum contract bills against the schedule of values. A cost-plus contract bills actual cost plus a fee, which means the client can audit the job cost records. Time and materials bills labor hours and materials at agreed rates. Unit price bills quantities, such as dollars per cubic yard. iPleaders explains the legal side of these structures in its guide to the <a href=\"https:\/\/blog.ipleaders.in\/different-types-construction-contracts\/\" target=\"_blank\" rel=\"noopener\">different types of construction contracts<\/a>.<\/p>\n\n\n<figure class=\"ls-infographic-wrap\" style=\"margin:2rem 0;\">\n<div class=\"sa-ig-paycycle\" style=\"margin:2rem 0;max-width:860px;\">\n<style>\n.sa-ig-paycycle, .sa-ig-paycycle *, .sa-ig-paycycle *::before, .sa-ig-paycycle *::after { margin: 0; padding: 0; box-sizing: border-box; }\n.sa-ig-paycycle { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; color: #212121; }\n.sa-ig-paycycle .infographic { max-width: 860px; margin: 0 auto; border: 1px solid #e0e0e0; border-radius: 8px; overflow: hidden; background: #ffffff; }\n.sa-ig-paycycle .title-bar { background: #2941ba; color: #ffffff; padding: 20px 24px; font-size: 20px; font-weight: 700; text-align: center; }\n.sa-ig-paycycle .subtitle { background: #eef1fb; color: #1b2a8a; padding: 10px 24px; font-size: 13.5px; text-align: center; font-weight: 600; border-bottom: 1px solid #dfe4f7; }\n.sa-ig-paycycle .content { padding: 24px; }\n.sa-ig-paycycle .step { display: flex; gap: 16px; padding-bottom: 20px; position: relative; }\n.sa-ig-paycycle .step:not(:last-child)::before { content: \"\"; position: absolute; left: 17px; top: 40px; bottom: 0; width: 2px; background: #dfe4f7; }\n.sa-ig-paycycle .num { flex: 0 0 36px; height: 36px; border-radius: 50%; background: #2941ba; color: #ffffff; font-weight: 700; font-size: 16px; display: flex; align-items: center; justify-content: center; position: relative; z-index: 1; }\n.sa-ig-paycycle .body { flex: 1 1 auto; padding-top: 4px; }\n.sa-ig-paycycle .name { font-size: 16px; font-weight: 700; color: #1b2a8a; margin-bottom: 5px; }\n.sa-ig-paycycle .desc { font-size: 14px; line-height: 1.55; color: #333333; }\n.sa-ig-paycycle .entry { margin-top: 9px; background: #f5f5f5; border-left: 4px solid #feae2d; padding: 10px 13px; border-radius: 0 6px 6px 0; font-size: 13px; line-height: 1.6; color: #333333; }\n.sa-ig-paycycle .entry b { color: #7a3b1e; }\n.sa-ig-paycycle .tag { display: inline-block; margin-top: 8px; background: #fdf0d5; color: #7a3b1e; font-size: 11.5px; font-weight: 700; padding: 4px 9px; border-radius: 4px; }\n.sa-ig-paycycle .footnote { margin-top: 6px; padding: 12px 14px; background: #eef1fb; border-left: 4px solid #2941ba; font-size: 13px; line-height: 1.55; color: #333333; border-radius: 0 6px 6px 0; }\n.sa-ig-paycycle .branding { text-align: right; padding: 12px 24px; font-size: 12px; color: #9e9e9e; border-top: 1px solid #e0e0e0; }\n@media (max-width: 640px) {\n  .sa-ig-paycycle .title-bar { font-size: 16px; padding: 16px; }\n  .sa-ig-paycycle .subtitle { font-size: 12.5px; padding: 10px 16px; }\n  .sa-ig-paycycle .content { padding: 16px; }\n  .sa-ig-paycycle .step { gap: 12px; }\n  .sa-ig-paycycle .num { flex: 0 0 30px; height: 30px; font-size: 14px; }\n  .sa-ig-paycycle .step:not(:last-child)::before { left: 14px; top: 34px; }\n  .sa-ig-paycycle .name { font-size: 15px; }\n}\n<\/style>\n  <div class=\"infographic\">\n    <div class=\"title-bar\">The progress billing cycle<\/div>\n    <div class=\"subtitle\">From schedule of values to retainage release, on a $500,000 contract<\/div>\n    <div class=\"content\">\n\n      <div class=\"step\">\n        <div class=\"num\">1<\/div>\n        <div class=\"body\">\n          <div class=\"name\">Agree the schedule of values<\/div>\n          <div class=\"desc\">The $500,000 contract price is broken into line items before work starts, such as $40,000 for site work and $85,000 for framing. Every future invoice bills against these lines.<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"step\">\n        <div class=\"num\">2<\/div>\n        <div class=\"body\">\n          <div class=\"name\">Submit the monthly pay application<\/div>\n          <div class=\"desc\">Each month the contractor applies for payment on the work completed, usually on AIA form G702 with the G703 continuation sheet. The architect certifies it before payment.<\/div>\n          <div class=\"entry\">June application: work completed <b>$50,000<\/b><\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"step\">\n        <div class=\"num\">3<\/div>\n        <div class=\"body\">\n          <div class=\"name\">Retainage is withheld<\/div>\n          <div class=\"desc\">The client holds back 5% to 10% of each billing until completion. On federal jobs, FAR 52.232-5 caps retainage at 10% and ties it to unsatisfactory progress. The money is earned, just not collectible yet.<\/div>\n          <div class=\"entry\">Dr <b>Accounts receivable<\/b> 45,000 &nbsp;&middot;&nbsp; Dr <b>Retainage receivable<\/b> 5,000 &nbsp;&middot;&nbsp; Cr <b>Progress billings<\/b> 50,000<\/div>\n          <div class=\"tag\">Retainage sits in its own account, never inside AR<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"step\">\n        <div class=\"num\">4<\/div>\n        <div class=\"body\">\n          <div class=\"name\">Payment lands<\/div>\n          <div class=\"desc\">The $45,000 arrives on the contract&#8217;s payment terms. The AR aging stays honest because the $5,000 of retainage was never in it.<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"step\">\n        <div class=\"num\">5<\/div>\n        <div class=\"body\">\n          <div class=\"name\">Retainage is released<\/div>\n          <div class=\"desc\">At completion, or a defined milestone, the accumulated retainage is billed and collected. On a $500,000 job at 10%, that final release is $50,000 of cash flow.<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"footnote\">The same cycle runs downward: retainage the contractor withholds from subcontractors is booked as retainage payable, separate from accounts payable, and released when their work is accepted.<\/div>\n    <\/div>\n    <div class=\"branding\">SkillArbitrage<\/div>\n  <\/div>\n<\/div>\n<\/figure>\n\n<h2 id=\"h2-5\">WIP reports, overbilling and underbilling<\/h2>\n<p>A work-in-progress report compares what each job has earned with what has been billed on it, one row per open job. It is the report that makes construction books trustworthy, and the one sureties and lenders ask for by name.<\/p>\n<p>A WIP row carries seven numbers: contract value, estimated total cost, cost to date, percent complete, earned revenue, billed to date, and the difference between earned and billed.<\/p>\n<p>Here is job 2026-014 at mid-project.<\/p>\n<table>\n<thead>\n<tr>\n<th>WIP column<\/th>\n<th>Amount<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Contract value<\/td>\n<td>$500,000<\/td>\n<\/tr>\n<tr>\n<td>Estimated total cost<\/td>\n<td>$400,000<\/td>\n<\/tr>\n<tr>\n<td>Cost to date<\/td>\n<td>$200,000<\/td>\n<\/tr>\n<tr>\n<td>Percent complete<\/td>\n<td>50%<\/td>\n<\/tr>\n<tr>\n<td>Earned revenue<\/td>\n<td>$250,000<\/td>\n<\/tr>\n<tr>\n<td>Billed to date<\/td>\n<td>$280,000<\/td>\n<\/tr>\n<tr>\n<td>Overbilled<\/td>\n<td>$30,000<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Billed $280,000 against $250,000 earned means the job is overbilled by $30,000. That sits on the balance sheet as a liability, billings in excess of costs and estimated earnings. The cash is in the bank, but $30,000 of it belongs to work not yet done.<\/p>\n<p>Flip the billing to $220,000 and the job is underbilled by $30,000. That is an asset, costs in excess of billings, and a warning. Either the billing is behind, or costs are running ahead of the estimate and the margin is quietly shrinking.<\/p>\n<p>Mild overbilling is healthy, because it keeps the client&#8217;s money funding the work. Persistent underbilling is the classic early sign of a job in trouble. So is profit fade, where a job booked at 20% margin reports 17%, then 14%, as estimated costs creep up at each close.<\/p>\n<p>The WIP schedule is also the month-end adjusting entry. The difference between earned revenue and billings moves through the over- and underbilling accounts, which is what turns raw billings into GAAP-style revenue.<\/p>\n<p>Run it every month, not just at year end. A bonding company reviewing a contractor typically wants the WIP schedule with each financial statement, and stale estimates make every number on it wrong.<\/p>\n\n\n\n<figure class=\"ls-infographic-wrap\" style=\"margin:2rem 0;\">\n<div class=\"sa-ig-wip\" style=\"margin:2rem 0;max-width:860px;\">\n<style>\n.sa-ig-wip, .sa-ig-wip *, .sa-ig-wip *::before, .sa-ig-wip *::after { margin: 0; padding: 0; box-sizing: border-box; }\n.sa-ig-wip { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; color: #212121; }\n.sa-ig-wip .infographic { max-width: 860px; margin: 0 auto; border: 1px solid #e0e0e0; border-radius: 8px; overflow: hidden; background: #ffffff; }\n.sa-ig-wip .title-bar { background: #2941ba; color: #ffffff; padding: 20px 24px; font-size: 20px; font-weight: 700; text-align: center; }\n.sa-ig-wip .subtitle { background: #eef1fb; color: #1b2a8a; padding: 10px 24px; font-size: 13.5px; text-align: center; font-weight: 600; border-bottom: 1px solid #dfe4f7; }\n.sa-ig-wip .shared { padding: 16px 24px 4px; text-align: center; font-size: 13.5px; line-height: 1.6; color: #333333; }\n.sa-ig-wip .shared b { color: #1b2a8a; }\n.sa-ig-wip .cols { display: flex; gap: 16px; padding: 16px 24px 20px; }\n.sa-ig-wip .col { flex: 1 1 0; border: 1px solid #dfe4f7; border-radius: 8px; overflow: hidden; }\n.sa-ig-wip .col-head { padding: 12px 14px; font-size: 15px; font-weight: 700; color: #ffffff; text-align: center; }\n.sa-ig-wip .col-over .col-head { background: #1b2a8a; }\n.sa-ig-wip .col-under .col-head { background: #b4530a; }\n.sa-ig-wip .col-body { padding: 14px; }\n.sa-ig-wip .row { display: flex; justify-content: space-between; gap: 10px; font-size: 13px; line-height: 1.5; padding: 5px 0; border-bottom: 1px dashed #e6e9f5; }\n.sa-ig-wip .row:last-of-type { border-bottom: none; }\n.sa-ig-wip .row b { white-space: nowrap; }\n.sa-ig-wip .verdict { margin-top: 10px; background: #f5f5f5; border-left: 4px solid #feae2d; padding: 9px 12px; border-radius: 0 6px 6px 0; font-size: 12.5px; line-height: 1.55; color: #333333; }\n.sa-ig-wip .footnote { margin: 0 24px 6px; padding: 12px 14px; background: #eef1fb; border-left: 4px solid #2941ba; font-size: 13px; line-height: 1.55; color: #333333; border-radius: 0 6px 6px 0; }\n.sa-ig-wip .branding { text-align: right; padding: 12px 24px; font-size: 12px; color: #9e9e9e; border-top: 1px solid #e0e0e0; }\n@media (max-width: 640px) {\n  .sa-ig-wip .title-bar { font-size: 16px; padding: 16px; }\n  .sa-ig-wip .subtitle { font-size: 12.5px; padding: 10px 16px; }\n  .sa-ig-wip .cols { flex-direction: column; padding: 14px 16px 16px; }\n  .sa-ig-wip .shared { padding: 14px 16px 2px; }\n  .sa-ig-wip .footnote { margin: 0 16px 6px; }\n}\n<\/style>\n  <div class=\"infographic\">\n    <div class=\"title-bar\">Overbilled or underbilled?<\/div>\n    <div class=\"subtitle\">Same job, same 50% complete, two very different balance sheets<\/div>\n    <div class=\"shared\">Job 2026-014 &nbsp;&middot;&nbsp; contract <b>$500,000<\/b> &nbsp;&middot;&nbsp; estimated cost <b>$400,000<\/b> &nbsp;&middot;&nbsp; cost to date <b>$200,000<\/b> &nbsp;&middot;&nbsp; earned revenue <b>$250,000<\/b><\/div>\n    <div class=\"cols\">\n\n      <div class=\"col col-over\">\n        <div class=\"col-head\">Billed $280,000: overbilled<\/div>\n        <div class=\"col-body\">\n          <div class=\"row\"><span>Earned revenue<\/span><b>$250,000<\/b><\/div>\n          <div class=\"row\"><span>Billed to date<\/span><b>$280,000<\/b><\/div>\n          <div class=\"row\"><span>Overbilled by<\/span><b>$30,000<\/b><\/div>\n          <div class=\"row\"><span>Balance sheet<\/span><b>Liability<\/b><\/div>\n          <div class=\"verdict\">Billings in excess of costs and estimated earnings. The cash is in the bank, but $30,000 of it belongs to work not yet done. Mild overbilling is healthy: the client&#8217;s money funds the work.<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"col col-under\">\n        <div class=\"col-head\">Billed $220,000: underbilled<\/div>\n        <div class=\"col-body\">\n          <div class=\"row\"><span>Earned revenue<\/span><b>$250,000<\/b><\/div>\n          <div class=\"row\"><span>Billed to date<\/span><b>$220,000<\/b><\/div>\n          <div class=\"row\"><span>Underbilled by<\/span><b>$30,000<\/b><\/div>\n          <div class=\"row\"><span>Balance sheet<\/span><b>Asset<\/b><\/div>\n          <div class=\"verdict\">Costs in excess of billings. Either the billing is behind, or costs are running ahead of the estimate and the margin is shrinking. Persistent underbilling is the classic early sign of a job in trouble.<\/div>\n        <\/div>\n      <\/div>\n\n    <\/div>\n    <div class=\"footnote\">The WIP schedule runs this comparison for every open job at each month end. Sureties and lenders read it line by line, and the earned-versus-billed difference is also the month-end adjusting entry that turns raw billings into GAAP-style revenue.<\/div>\n    <div class=\"branding\">SkillArbitrage<\/div>\n  <\/div>\n<\/div>\n<\/figure>\n\n<h2 id=\"h2-6\">Payroll and compliance in construction bookkeeping<\/h2>\n<p>Payroll and compliance in construction bookkeeping cover four jobs that barely exist on a standard small business file: certified payroll, prevailing wages, workers compensation audits and the subcontractor paper trail.<\/p>\n<p>Certified payroll comes first. Under the <a href=\"https:\/\/www.dol.gov\/agencies\/whd\/government-contracts\/construction\" target=\"_blank\" rel=\"noopener\">Davis-Bacon Act<\/a>, contractors on federal or federally assisted construction contracts over $2,000 must pay locally prevailing wages and fringe benefits. Each week they file a certified payroll report, usually on Department of Labor <a href=\"https:\/\/www.dol.gov\/agencies\/whd\/forms\/wh347\" target=\"_blank\" rel=\"noopener\">Form WH-347<\/a>, listing every worker, classification, hours and pay.<\/p>\n<p>Many states run their own prevailing wage laws on top, often called little Davis-Bacon acts. A bookkeeper on a public-works contractor&#8217;s file prepares these reports weekly, and errors carry real penalties, including withheld contract payments.<\/p>\n<p>Workers compensation is the second layer. Premiums are set per $100 of payroll by class code, and the rates differ sharply: clerical staff cost a fraction of roofers. Insurers audit payroll annually. Clean job-costed payroll records, with hours split by class and state, are what keep the audit from producing a surprise bill.<\/p>\n<p>Subcontractors bring the third layer. Before the first payment, collect a Form W-9 and a certificate of insurance. Without the insurance certificate, the sub&#8217;s payroll can be added to the contractor&#8217;s own workers comp audit. Alongside payments, track lien waivers, the documents in which subs give up mechanics lien rights as they are paid.<\/p>\n<p>Then come the 1099s. Payments to unincorporated subcontractors are reported on Form 1099-NEC. For payments made in 2026 the reporting threshold is $2,000, raised from $600 by the One Big Beautiful Bill Act for payments after 31 December 2025, per the <a href=\"https:\/\/www.irs.gov\/faqs\/small-business-self-employed-other-business\/form-1099-nec-independent-contractors\/form-1099-nec-independent-contractors\" target=\"_blank\" rel=\"noopener\">IRS<\/a>. A general contractor can easily file dozens of them. The deadlines and mechanics are covered in our <a href=\"https:\/\/skillarbitra.ge\/blog\/1099-filing-season-bookkeepers\/\" target=\"_blank\" rel=\"noopener\">1099 filing season guide<\/a>.<\/p>\n<h2 id=\"h2-7\">How can you learn construction bookkeeping from India?<\/h2>\n<p>You can learn construction bookkeeping from India with the same tools US contractors use, because the work is remote by nature. The software is cloud-based, the source documents are digital, and the deliverables are reports.<\/p>\n<p>Start with the software. QuickBooks Online handles small-contractor job costing through its Projects feature, and QuickBooks Desktop remains common in construction offices. Above that sit construction-specific tools such as Buildertrend and Knowify, which manage estimates and pay applications, and Procore on the project management side. Learn QuickBooks first. The others follow the same logic.<\/p>\n<p>Then practice the core artifacts on a made-up job. Set up a project like 2026-014, code 20 or 30 transactions to cost codes, run the PCM formula, and build a one-row WIP schedule in a spreadsheet. Draft a G702-style progress invoice with retainage. Those four artifacts are the interview portfolio.<\/p>\n<p>The pay reflects the specialization. Virtual bookkeeping services typically charge a flat $300 to $1,500 per month per small business client, per QuickBooks&#8217; 2026 pricing data, and total monthly bookkeeping costs run from $300 for software-led service to $4,200 for a full-time US hire. Construction files sit at the top of the outsourced range and above, because job costing, pay applications and WIP work are specialist tasks most generalists cannot do. How to set and quote those fees is covered in our guide to <a href=\"https:\/\/skillarbitra.ge\/blog\/price-bookkeeping-services-us-clients-india\/\" target=\"_blank\" rel=\"noopener\">pricing bookkeeping services for US clients<\/a>.<\/p>\n<p>The best first clients are trade subcontractors: electricians, plumbers, painters and remodelers with 5 to 30 employees. They are big enough to need job costing and too small to employ a controller. General contractors with bonding requirements come next, once the WIP work is second nature.<\/p>\n<p>Before taking on a US client, put the engagement in writing: scope, fees, data access and liability. LawSikho&#8217;s guide to the <a href=\"https:\/\/lawsikho.com\/blog\/consultancy-professional-services-agreement\/\" target=\"_blank\" rel=\"noopener\">consultancy and professional services agreement<\/a> covers what that contract should contain.<\/p>\n<p>For the wider career path, including how to find the clients in the first place, see our guide on <a href=\"https:\/\/skillarbitra.ge\/blog\/us-bookkeeping-from-india\/\" target=\"_blank\" rel=\"noopener\">starting a US bookkeeping career from India<\/a>.<\/p>\n\n<h2 id=\"h2-8\">Frequently asked questions<\/h2>\n<p><strong>What is job costing in construction bookkeeping?<\/strong><\/p>\n<p>Job costing is recording every cost against the specific job it belongs to, split by cost code and cost type. It turns one company-wide P&amp;L into a profit report per project, so the contractor can see which jobs make money.<\/p>\n<p><strong>What is the percentage of completion formula?<\/strong><\/p>\n<p>Percent complete equals cost incurred to date divided by total estimated cost. Earned revenue equals percent complete multiplied by the contract price. A job with $100,000 spent against a $400,000 estimate is 25% complete, so a $500,000 contract has earned $125,000.<\/p>\n<p><strong>How is retainage recorded in the books?<\/strong><\/p>\n<p>Retainage withheld by a client is a debit to retainage receivable, separate from accounts receivable, because it is earned but not yet collectible. Retainage the contractor withholds from subcontractors is credited to retainage payable, separate from accounts payable.<\/p>\n<p><strong>What are AIA forms G702 and G703?<\/strong><\/p>\n<p>G702 is the application and certificate for payment used on many US commercial construction jobs, and G703 is its continuation sheet showing each schedule-of-values line. Together they document percent complete, retainage withheld and the amount due for the period.<\/p>\n<p><strong>What does overbilled mean on a WIP report?<\/strong><\/p>\n<p>Overbilled means the job has billed more than it has earned under percentage of completion. The excess is a liability, billings in excess of costs and estimated earnings, because part of the cash received belongs to work not yet performed.<\/p>\n<p><strong>Do small contractors have to use the percentage of completion method for tax?<\/strong><\/p>\n<p>Not usually. A contract is exempt from required PCM under section 460 if the contractor expects to finish it within two years and average annual gross receipts for the prior three years are $32 million or less for tax years beginning in 2026. Home construction contracts are exempt regardless of size.<\/p>\n<p><strong>What is certified payroll?<\/strong><\/p>\n<p>Certified payroll is the weekly wage report required on federal and federally assisted construction contracts over $2,000 under the Davis-Bacon Act. It is usually filed on Form WH-347 and lists each worker&#8217;s classification, hours, pay rate and fringe benefits.<\/p>\n<p><strong>Do contractors send 1099s to subcontractors?<\/strong><\/p>\n<p>Yes. Payments to unincorporated subcontractors are reported on Form 1099-NEC, and for payments made in 2026 the threshold is $2,000 per contractor per year, raised from $600. Corporations are generally exempt from receiving one.<\/p>\n<p><strong>Which software do US contractors use for job costing?<\/strong><\/p>\n<p>Small contractors mostly use QuickBooks Online with Projects or QuickBooks Desktop. Construction-specific tools such as Buildertrend, Knowify and Procore sit on top for estimating, pay applications and project management, while larger firms use systems like Sage and Foundation.<\/p>\n<p><strong>How much do construction bookkeepers charge?<\/strong><\/p>\n<p>Outsourced bookkeeping for a US small business typically costs a flat $300 to $1,500 per month, per QuickBooks&#8217; 2026 data. Construction files price at the top of that range and above because job costing, retainage tracking and WIP reporting are specialist work.<\/p>\n<h2 id=\"h2-9\">References<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.census.gov\/construction\/c30\/pdf\/release.pdf\" target=\"_blank\" rel=\"noopener\">US Census Bureau, Monthly Construction Spending, May 2026<\/a>, seasonally adjusted annual rate of $2,210.2 billion<\/li>\n<li><a href=\"https:\/\/www.bls.gov\/iag\/tgs\/iag23.htm\" target=\"_blank\" rel=\"noopener\">Bureau of Labor Statistics, Construction: NAICS 23, Industries at a Glance<\/a>, industry employment above 8.3 million in 2026<\/li>\n<li><a href=\"https:\/\/www.law.cornell.edu\/uscode\/text\/26\/460\" target=\"_blank\" rel=\"noopener\">26 U.S.C. section 460, special rules for long-term contracts<\/a>, required PCM and the small construction contract exception<\/li>\n<li><a href=\"https:\/\/www.irs.gov\/pub\/irs-drop\/rp-25-32.pdf\" target=\"_blank\" rel=\"noopener\">Revenue Procedure 2025-32<\/a>, inflation-adjusted items for 2026, including the section 448(c) gross receipts threshold of $32,000,000<\/li>\n<li><a href=\"https:\/\/www.irs.gov\/faqs\/small-business-self-employed-other-business\/form-1099-nec-independent-contractors\/form-1099-nec-independent-contractors\" target=\"_blank\" rel=\"noopener\">IRS: Form 1099-NEC and independent contractors<\/a>, the $2,000 threshold for payments made after 31 December 2025<\/li>\n<li><a href=\"https:\/\/www.dol.gov\/agencies\/whd\/government-contracts\/construction\" target=\"_blank\" rel=\"noopener\">US Department of Labor, Davis-Bacon and Related Acts<\/a>, prevailing wage rules on federal construction contracts over $2,000<\/li>\n<li><a href=\"https:\/\/www.dol.gov\/agencies\/whd\/forms\/wh347\" target=\"_blank\" rel=\"noopener\">US Department of Labor, Form WH-347, certified payroll<\/a><\/li>\n<li><a href=\"https:\/\/www.acquisition.gov\/far\/52.232-5\" target=\"_blank\" rel=\"noopener\">FAR 52.232-5, payments under fixed-price construction contracts<\/a>, retainage of up to 10% on federal progress payments where satisfactory progress has not been made<\/li>\n<li><a href=\"https:\/\/help.aiacontracts.com\/hc\/en-us\/articles\/1500009387461-summary-g702-1992-application-and-certificate-for-payment\" target=\"_blank\" rel=\"noopener\">AIA Contract Documents, summary of G702-1992 Application and Certificate for Payment<\/a>, with the G703-1992 Continuation Sheet<\/li>\n<li><a href=\"https:\/\/www.csiresources.org\/standards\/masterformat\" target=\"_blank\" rel=\"noopener\">CSI MasterFormat<\/a>, the construction specification standard, with the current 50-division list at <a href=\"https:\/\/www.archtoolbox.com\/masterformat-divisions\/\" target=\"_blank\" rel=\"noopener\">Archtoolbox<\/a><\/li>\n<li><a href=\"https:\/\/quickbooks.intuit.com\/r\/bookkeeping\/how-much-does-a-bookkeeper-cost\/\" target=\"_blank\" rel=\"noopener\">QuickBooks: how much does a bookkeeper cost in 2026<\/a>, flat virtual bookkeeping fees of $300 to $1,500 per month and full-time costs to $4,200<\/li>\n<li><a href=\"https:\/\/blog.ipleaders.in\/different-types-construction-contracts\/\" target=\"_blank\" rel=\"noopener\">iPleaders: what are the different types of construction contracts<\/a><\/li>\n<\/ul>\n<p><em>This article is for general information and training purposes. It is not tax, accounting or legal advice for any specific business. Confirm current thresholds, state prevailing wage rules and contract terms before applying any of it to a client file.<\/em><\/p>\n\n\n\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What is job costing in construction bookkeeping?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Job costing is recording every cost against the specific job it belongs to, split by cost code and cost type. It turns one company-wide P&L into a profit report per project, so the contractor can see which jobs make money.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What is the percentage of completion formula?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Percent complete equals cost incurred to date divided by total estimated cost. Earned revenue equals percent complete multiplied by the contract price. A job with $100,000 spent against a $400,000 estimate is 25% complete, so a $500,000 contract has earned $125,000.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"How is retainage recorded in the books?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Retainage withheld by a client is a debit to retainage receivable, separate from accounts receivable, because it is earned but not yet collectible. Retainage the contractor withholds from subcontractors is credited to retainage payable, separate from accounts payable.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What are AIA forms G702 and G703?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"G702 is the application and certificate for payment used on many US commercial construction jobs, and G703 is its continuation sheet showing each schedule-of-values line. Together they document percent complete, retainage withheld and the amount due for the period.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What does overbilled mean on a WIP report?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Overbilled means the job has billed more than it has earned under percentage of completion. The excess is a liability, billings in excess of costs and estimated earnings, because part of the cash received belongs to work not yet performed.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Do small contractors have to use the percentage of completion method for tax?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Not usually. A contract is exempt from required PCM under section 460 if the contractor expects to finish it within two years and average annual gross receipts for the prior three years are $32 million or less for tax years beginning in 2026. Home construction contracts are exempt regardless of size.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What is certified payroll?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Certified payroll is the weekly wage report required on federal and federally assisted construction contracts over $2,000 under the Davis-Bacon Act. It is usually filed on Form WH-347 and lists each worker's classification, hours, pay rate and fringe benefits.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Do contractors send 1099s to subcontractors?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Yes. Payments to unincorporated subcontractors are reported on Form 1099-NEC, and for payments made in 2026 the threshold is $2,000 per contractor per year, raised from $600. Corporations are generally exempt from receiving one.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Which software do US contractors use for job costing?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Small contractors mostly use QuickBooks Online with Projects or QuickBooks Desktop. Construction-specific tools such as Buildertrend, Knowify and Procore sit on top for estimating, pay applications and project management, while larger firms use systems like Sage and Foundation.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"How much do construction bookkeepers charge?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Outsourced bookkeeping for a US small business typically costs a flat $300 to $1,500 per month, per QuickBooks' 2026 data. Construction files price at the top of that range and above because job costing, retainage tracking and WIP reporting are specialist work.\"\n      }\n    }\n  ]\n}\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>Construction bookkeeping codes every cost to a job, earns revenue by percent complete, bills with retainage and proves it on a monthly WIP report<\/p>\n","protected":false},"author":35,"featured_media":4717,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[798,36],"tags":[1360,1505,1501,1500,1497,1499,1502,1506,1504,1503,766,801,1498,1496],"class_list":["post-4716","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-us-accounting-tax","category-bookkeeper","tag-1099-nec","tag-aia-g702","tag-certified-payroll","tag-construction-bookkeeping","tag-cost-codes","tag-davis-bacon","tag-job-costing","tag-labor-burden","tag-percentage-of-completion","tag-progress-billing","tag-quickbooks","tag-remote-bookkeeping","tag-retainage","tag-wip-report"],"_links":{"self":[{"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/posts\/4716","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/users\/35"}],"replies":[{"embeddable":true,"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/comments?post=4716"}],"version-history":[{"count":1,"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/posts\/4716\/revisions"}],"predecessor-version":[{"id":4718,"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/posts\/4716\/revisions\/4718"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/media\/4717"}],"wp:attachment":[{"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/media?parent=4716"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/categories?post=4716"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/skillarbitra.ge\/blog\/wp-json\/wp\/v2\/tags?post=4716"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}