May 6, 2026

Accounting for construction: A practical guide for contractors

Regular small‑business accounting can tell you whether you made money last month. It cannot tell you whether a key job is 80% complete, 60% billed, and about to blow its labor budget. Construction accounting exists to answer questions like: “Where does this job really stand, and are we going to make money on it?”

It treats each project as its own profit center, tags every transaction to a job and cost code, and layers in long‑term contract revenue recognition, retainage, over‑billings and under‑billings, and work‑in‑progress (WIP) reporting. This guide focuses on that version of accounting: the job‑cost, WIP‑driven mechanics your team needs to run a construction business, not a generic small‑business ledger.

Why construction accounting is different from regular accounting

Standard business accounting tracks revenue and expense by month or quarter. Construction accounting tracks them by job. The difference is not a detail — it is the entire operating model.

Four characteristics make construction accounting structurally different:

  1. Project‑based production: Each job is a one‑off product with its own contract, schedule, budget, and profit and loss (P&L) statement. The unit of analysis is the job, not the period.
  2. Long‑duration contracts: Work often spans months or years, so you recognize revenue and profit as the work is performed, not only when the project ends.
  3. Decentralized, mobile work: Crews, superintendents, and project managers make spending decisions across multiple jobsites. Your accounting system has to capture cost data in the field, not just at headquarters.
  4. Heavier compliance load: ASC 606, IRS long‑term contract rules (Section 460), prevailing‑wage and certified‑payroll requirements on public work, and surety or bonding scrutiny of WIP all sit on top of standard generally accepted accounting principles (GAAP).

Construction accounting vs. regular accounting

AspectRegular accountingConstruction accounting
Unit of analysisCompany-wide P&L by month or quarterProfitability tracked per job and per cost code
Revenue recognitionStandard accrual (or cash)Percentage of completion or completed contract, governed by ASC 606 and IRS Section 460
BillingInvoice on delivery, standard ARProgress billing (often AIA G702/G703) with retainage withheld until completion
ReportingP&L, balance sheet, statement of cash flowsWIP schedule, job cost reports, over-/under-billing analysis on top of GAAP financials
Cash-flow shapeRelatively steady and predictableNegative working capital through most of a project; you pay payroll, subs, and materials before the owner pays you
Typical softwareGeneric SMB ledger (QuickBooks Online, Xero)Construction-specific GL/WIP (Sage Intacct, Sage 300 CRE, Foundation Software, Viewpoint Vista, Acumatica) plus integrated spend and AP layers

Job cost accounting: the core discipline

Job cost accounting is the practice of tracking every expense against a specific job and cost code. It is the foundation everything else in construction accounting is built on.

What gets coded

Every transaction should be tagged with:

  • Job number: Which project the cost belongs to
  • Cost code: Which part of the work (excavation, foundation, framing, electrical rough‑in, and so on)
  • Cost type: Labor, materials, subs, equipment, or overhead
  • Date and source document: Invoice, timecard, receipt, or PO

What you get out of it

With clean job‑cost data you can produce:

  • Job cost reports showing budget vs. actual by cost code for each active project
  • Cost‑to‑complete estimates for revenue recognition and cash planning
  • Variance analysis that flags labor productivity issues, material overages, and sub buyouts that are off plan
  • Historical cost benchmarks to inform future bids

Where it breaks down

Job cost accounting fails in predictable ways:

  • Field purchases on personal cards skip job coding entirely and show up as unclassified expenses at month‑end.
  • Labor hours allocated at the end of the week lose the granularity a project manager needs to catch a cost problem in time.
  • Sub invoices coded by an accountant, not the project manager, get the wrong cost code when the accountant does not know the field context.
  • Timecards without job numbers produce labor allocations that are someone’s best guess.

The fix is systems, not discipline. Coding has to happen at the point of transaction — at the card swipe, at the timecard entry, at the invoice intake — or it tends to be wrong.

Revenue recognition methods

Construction revenue recognition is governed by ASC 606. The two main methods for long‑term construction contracts are the completed‑contract method and the percentage‑of‑completion method, with a limited role for the cash method.

Common methods for accounting for construction contracts

MethodWhen you recognize revenueWhen to use it
Completed contract (CCM)When the project is substantially completeShort contracts, residential custom homebuilders, tax-deferral scenarios; allowed only for certain small contractors under IRS rules
Percentage of completion (PCM)As work progresses, in proportion to completionMost commercial construction; required for contractors above the IRS small-contractor threshold on long-term contracts
Cash methodWhen cash is received or paidVery small contractors and short, simple jobs; limited eligibility under IRS rules

Most growing contractors land on the percentage‑of‑completion method. Under this method, you calculate completion (typically cost‑to‑date divided by estimated total cost) and recognize that percentage of the contract value as revenue. The result is revenue, cost, and gross profit that move steadily as the job progresses instead of spiking at completion.

ASC 606 also requires judgment calls: identifying performance obligations, deciding whether to recognize revenue over time or at a point in time, and handling variable consideration. A construction‑literate CPA or controller earns their fee on these decisions. Talk to your tax advisor for guidance specific to your contracts.

The WIP schedule: your operating dashboard

The work‑in‑progress (WIP) schedule is the single most important report in construction accounting. It shows, for every active project, what you have earned, what you have billed, and whether you are over‑ or under‑billing the owner relative to progress.

Columns on a typical WIP schedule

ColumnWhat it shows
Contract valueTotal current contract price including approved change orders
Cost to dateActual cost incurred through the report date
Estimated cost to completeYour current estimate of remaining cost
Estimated total costCost to date plus cost to complete
Percent completeCost to date divided by estimated total cost
Revenue earnedPercent complete multiplied by contract value
Billings to dateWhat you have invoiced the owner to date
Over-/under-billingRevenue earned minus billings; positive means under-billed

What the numbers tell you

Over‑billing means you have invoiced ahead of work in place. That is useful for cash flow, but the excess sits as a liability on your balance sheet until it is earned.

Under‑billing means work in place exceeds billings. That usually means the billing schedule is slow, a pay application is stuck in review, or you have approved change orders that are not yet in your billing.

Shifts in estimated cost to complete are a leading indicator of margin erosion. Percent‑complete drift can signal schedule slip or productivity problems before they show up in final numbers.

WIP schedules are not annual artifacts. They should be monthly, or even weekly on fast‑moving jobs. Sureties and bankers read them closely; a clean, current WIP is evidence that you are in control of your book.

Retainage: the balance‑sheet item that quietly ties up cash

Retainage is a percentage of each pay application, commonly 5–10%, that the owner withholds until the project is substantially complete. It is standard across most public and commercial construction, and it is one of the biggest working‑capital drags in the industry.

How retainage flows through the books

  • On your side as the contractor, retainage receivable sits on the balance sheet as a current asset. You have earned the money but cannot collect it until it is released.
  • On the subcontractor side, you often withhold retainage from your subs. That sits as retainage payable, a current liability.
  • Release timing is driven by the contract: substantial completion, certificate of occupancy, or a specified post‑completion period.

What to track

  • Retainage receivable aging: how old each balance is, what the release trigger is, and when you should follow up.
  • Retainage payable aging: what you owe subs and when it is releasable.
  • Mechanics‑lien windows and lien‑waiver exchange, which are often tied to retainage release.

Contractors who actively track and pursue retainage release recapture meaningful working capital. Contractors who do not often leave money on the table for months, or never collect it at all.

Chart of accounts for construction

A construction chart of accounts has specialized accounts that standard small‑business charts do not include. At a minimum you want:

Balance sheet

  • Retainage receivable (current asset)
  • Costs in excess of billings (current asset for under‑billed jobs)
  • Billings in excess of costs (current liability for over‑billed jobs)
  • Retainage payable (current liability)
  • Accumulated depreciation broken out by equipment category

Income statement

  • Revenue by contract type (fixed‑price, cost‑plus, time and materials) or by division
  • Cost of revenue broken out by labor, materials, subs, equipment, and other direct costs
  • Indirect construction costs (field supervision, small tools, insurance) allocated to jobs as overhead
  • General and administrative overhead kept separate from job cost

Job cost subsidiary ledger

  • Every job gets a complete subsidiary ledger by cost code
  • Cost codes usually follow the Construction Specifications Institute (CSI) MasterFormat divisions or an internal standard
  • Labor, material, sub, equipment, and other direct cost types roll up to both the project and company levels

A CPA or controller with construction experience should design or review your chart before you standardize. Fixing a chart of accounts after a couple of years of transactions is painful.

Over‑billing and under‑billing

Over‑billing and under‑billing are not necessarily errors. They are natural outputs of how construction billing works. The discipline is knowing which you have, why, and what to do about it.

  • Over‑billing (billings in excess of costs): Useful for cash flow, but the excess is a liability until it is earned. Heavy, persistent over‑billing can mask margin problems or signal a front‑loaded schedule of values that surety underwriters will flag.
  • Under‑billing (costs in excess of billings): Real money you have earned but have not invoiced. It usually points to a billing‑cycle issue or unapproved change orders.

Both over‑ and under‑billing show up on the WIP schedule and the balance sheet. A disciplined monthly close includes a pass on over‑ and under‑billings per job, not just in the aggregate.

For the mechanics of how each pay application is built and approved, see our guide to construction pay applications and AIA G702/G703.

Percentage of completion vs. completed contract

The choice of accounting method affects your taxes, your internal reporting, and how your financials read to banks and sureties.

  • Percentage of completion: Required for most long‑term contracts under the IRS long‑term contract rules in Section 460. Revenue and profit are recognized as work progresses.
  • Completed contract: Available to small contractors that meet the IRS gross‑receipts threshold. Revenue and profit are recognized at completion. That can be useful for tax deferral but makes financial statements lumpy and complicates bonding.
  • Cash method: Available only to the smallest contractors. It is simple but highly limited in construction.

Most growing contractors land on percentage of completion for long‑term contracts and track shorter projects inside the same framework. Talk to a construction CPA about the election. It has a direct effect on both your tax position and the readability of your financials for bonding.

How Ramp integrates with your construction accounting system

Ramp won’t replace your construction ERP, and it shouldn’t. Your ERP owns the general ledger, WIP, and job‑cost reporting; Ramp sits in front of it on cards and AP so every transaction hits the right job and cost code the first time.

The payoff is cleaner WIP and job cost reports, fewer “uncategorized” fire drills at month‑end, and a close you can run in days instead of a week of spreadsheet cleanup. If you want the mechanics of construction accounting to run in the background so you can stay focused on which jobs are actually making money, Ramp gives you the spend and AP layer to do it.

Want to see how it fits into your workflows? Get started with Ramp for Construction.

Try Ramp for free
Share with
Ramp team
The Ramp team is comprised of subject matter experts who are dedicated to helping businesses of all sizes work smarter and faster.
Ramp is dedicated to helping businesses of all sizes make informed decisions. We adhere to strict editorial guidelines to ensure that our content meets and maintains our high standards.

FAQs

For most long-term construction contracts, percentage of completion is either required by IRS rules or is the cleanest match to how the work is earned. Completed contract is available to small contractors under the IRS gross-receipts threshold and offers tax deferral, but produces lumpy financials that can complicate bonding. Cash method is available only to the smallest contractors. A construction CPA should walk you through the election.

Construction accounting is project-based — revenue, cost, and profit are tracked per job and cost code, not just per period. Long-duration contracts drive specific revenue-recognition rules (percentage of completion, completed contract), specific balance-sheet items (retainage, over- and under-billings), and specific reports (WIP schedules, job cost reports) that standard business accounting doesn't require.

A work-in-progress (WIP) schedule shows, for every active project, the contract value, cost to date, estimated cost to complete, percent complete, earned revenue, billings, and over- or under-billing. It's the single most important operating report in construction accounting — sureties, bankers, and internal finance teams all read it closely to understand the health of your book.

Retainage receivable is a percentage of each pay application that the owner withholds until substantial completion. It's earned revenue, but you can't collect it until a contract-specified release trigger. Regular AR is expected to be collected on normal credit terms. Retainage typically sits for months, and tracking it actively is a meaningful working-capital win.

If you're running more than a handful of jobs a year, yes. General small-business accounting software (generic QuickBooks, Xero) can track revenue and expense, but typically lacks job cost reporting, WIP scheduling, and construction-specific chart of accounts features. Mid-market contractors usually run Sage Intacct, Sage 300 CRE, Foundation Software, Viewpoint Vista, or similar, integrated with a spend and AP layer that handles job-cost allocation at the point of transaction.

Job costs are accurate when coding happens at the point of transaction, not after the fact. That means corporate cards tied to jobs and cost codes, time tracking that requires a job number at entry, and AP systems that code invoices on receipt — not at month-end. Systems that force clean coding in the moment produce the job-cost data your WIP schedule and close depend on.

We used to pay up to $20k a year for our AP platform. With Ramp, we’re earning back well over that amount. That's money that belongs to the mission now, not to the back-office software.

Heidi Coffer

Chief Financial Officer, Boys & Girls Clubs of San Francisco

Boys & Girls Clubs of San Francisco used to pay for their finance software — now it pays them

We're accountable to our funders, our partners, and the families we serve. That accountability starts with how we manage every dollar. Ramp makes it easy for our team to spend wisely, track in real time, and keep overhead low so more resources reach the families navigating infertility.

Rachel Fruchtman

CFO, Jewish Fertility Foundation

Jewish Fertility Foundation reclaimed 11 work weeks and put more time into serving families

Each member of our team has an outsized impact due to our focus on using high-leverage tools like Ramp.

Lauren Feeney

Controller, Perplexity

How Perplexity's finance team of 10 scales one of the fastest-growing AI startups

With Ramp, we haven’t had to add accounting headcount to keep up with growth. The biggest takeaway is that instead of hiring our way through it, we fixed the workflow so we can keep supporting the organization as we scale.

Melissa M.

VP of Accounting at Brandt Information Services

Brandt grew finance operations 3x with zero added accounting headcount

In the public sector, every hour and every dollar belongs to the taxpayer. We can't afford to waste either. Ramp ensures we don't.

Carly Ching

Finance Specialist, City of Ketchum

City of Ketchum saves 100+ hours to make every taxpayer dollar count

Compared to our previous vendor, Ramp gave us true transaction-level granularity, making it possible for me to audit thousands of transactions in record time.

Lisa Norris

Director of Compliance & Privacy Officer, ABB Optical

From 2 months to 2 days: ABB Optical's Sunshine Act compliance breakthrough

We chose Ramp because it replaced several disparate tools with one platform our teams actually use—if it’s not in Ramp, it’s not getting paid.

Michael Bohn

Head of Business Operations, Foursquare

Painless procurement in half the time: Foursquare's single system for spend

Ramp gives us one structured intake, one set of guardrails, and clean data end‑to‑end— that’s how we save 20 hours/month and buy back days at close.

David Eckstein

CFO, Vanta

Vanta runs finance on Ramp with Spend Programs for 3 days faster close