Real Estate Development & Construction

Engineering a Construction-Ready Chart of Accounts with a Purpose-Built CIP Structure

Result: Project costs visible in real time, in the exact structure of the development budget.

Client Snapshot

Industry: Real Estate Development & Construction Structure: Multi-entity development group with multiple concurrent projects, each held through layered SPE structures (Project → Holding → SPE) Platform: Oracle NetSuite Engagement: Design and implementation of a standardized, construction-specific chart of accounts with a dedicated Construction in Progress (CIP) architecture


The Problem With a Conventional Chart of Accounts

Most accounting systems come with a generic chart of accounts: revenue at the top, a long undifferentiated list of expenses below, and a balance sheet built for a trading or service business. For a construction and development company, that template is not just unhelpful — it actively distorts the financial picture.

Development costs are not period expenses. Land acquisition, construction draws, architect fees, financing interest during construction — these are investments in an asset under development, and accounting standards require them to be capitalized to the balance sheet as Construction in Progress until the project is complete. A conventional chart of accounts gives these costs nowhere to live. In practice, they end up scattered across generic expense accounts: legal fees for a land closing sit next to the office’s legal retainer, construction-period interest is mixed with corporate interest expense, and design fees disappear into “professional services.”

The consequences are predictable and expensive. The income statement shows deep losses during the build phase that aren’t real losses at all. The balance sheet understates the true value of work in progress. Nobody can answer the question every developer, lender, and equity partner asks constantly: what have we actually spent on this project, by cost category, against budget? Reconciling the books to the development budget or a lender’s draw schedule becomes a manual mapping exercise repeated every single month. And when the same generic structure is copied inconsistently across a group of project entities, consolidation and cross-project comparison become nearly impossible.

Our client — a real estate development group running multiple concurrent projects through layered special-purpose-entity structures — was living with exactly these problems. Fixing them didn’t start with software configuration. It started with accounting architecture.

What We Built: A Chart of Accounts Designed Around the Development Lifecycle

We designed and implemented a fully numbered, range-blocked chart of accounts in NetSuite, engineered specifically for construction and development accounting. Every account belongs to a reserved numbering range, every range maps to a defined financial statement section, and the entire structure was validated line by line against NetSuite’s account types before upload — with built-in cross-checks confirming that every account rolls up to the correct section of the financials.

RangeSectionPurpose
1000–1499Current AssetsCash and bank (by entity and lender account), receivables, escrows, deposits, notes receivable
1500–1999Construction in Progress (CIP)The heart of the design — the full development cost structure, on the balance sheet
2000–2999Non-Current AssetsFixed assets, equity investments in project entities
3000–3999LiabilitiesPayables, construction and mortgage debt, investor notes, accrued interest
4000–4999EquityCapital contributions tracked by investor and entity, distributions, retained earnings
5000–5999IncomeDevelopment, construction management, asset management and licensing fees; rental income
6000–7999Corporate & Overhead ExpensesOffice G&A, payroll, due diligence, insurance, corporate interest
8000–8999Project Operating ExpensesStabilized property operations, post-completion
9999Suspense”Ask Client/Accountant” — nothing gets misclassified by guesswork

The CIP block: a development budget living inside the general ledger

The defining feature of the design is the 1500–1999 range, which mirrors exactly how developers, lenders, and equity partners think about a project:

Land (1500s). Acquisition and related land costs, isolated from every other cost type from day one.

Hard Costs (1600s). General construction costs, hard cost contingency, and FF&E — the categories that map directly to contractor pay applications and lender draw requests.

Soft Costs (1700s). The largest and most granular block, with dedicated accounts for legal, design, engineering, consultants, municipal costs, taxes, insurance, and marketing — and, critically, separate accounts for each layer of the capital stack: senior financing, mezzanine financing, and owner financing, with paid and accrued interest tracked distinctly. In a conventional COA, capitalized construction interest is one of the most commonly butchered items; here, every dollar of carry is visible by funding source.

Fees (1800s). Development fees (split between cash-paid and equity-contributed), guarantor fees, and other project fees — kept separate so related-party fee income eliminates cleanly at consolidation.

Carry & Reserves (1900s). Operating reserves and interest reserves, tracked by the entity layer that holds them (senior reserve at the SPE, mezzanine reserve at the Holding SPE).

CIP Cost Transfer (1950s). Purpose-built transfer accounts that move capitalized costs between entities in the ownership chain — from project entity to holding company to SPE — with a clean, auditable trail instead of tangled intercompany journals.

Discipline built into the numbering

Every parent category carries a reserved block of account numbers sized for growth — soft costs alone have two hundred slots — so new accounts are added inside a governed structure rather than bolted on wherever there’s space. The same skeleton is deployed across every entity in the group, which means a trial balance from any subsidiary reads the same way, rolls up the same way, and consolidates without remapping. And because the design document ties every account to its NetSuite account type and financial statement section with automated cross-checks, the structure that was designed is provably the structure that went live.

The Results: Transactions That Classify Themselves, Costs You Can Actually See

Accurate classification became the default, not an aspiration. When the chart of accounts mirrors the development budget, bookkeepers stop making judgment calls. A construction draw goes to Hard Costs. An architect invoice goes to Design under Soft Costs. Construction-period interest on the senior loan goes to Senior Financing — not to a generic interest expense account. The structure itself enforces the capitalization policy, and the 9999 suspense account catches genuine uncertainties for review instead of letting them be buried in the wrong place.

True project cost visibility, in real time. At any moment, the client can pull a CIP balance for any project and see total capitalized cost broken down by land, hard costs, soft costs, fees, and carry — the exact structure of the development pro forma. Budget-versus-actual by cost category, cost-to-complete analysis, and lender draw reconciliations went from monthly spreadsheet projects to on-demand reports straight out of the general ledger.

Financial statements that tell the truth. Development costs sit on the balance sheet as an asset under construction, where they belong. The income statement during the build phase reflects actual operating performance — fee income, corporate overhead — rather than being swamped by capitalized costs masquerading as losses. Post-completion property operations flow through their own dedicated 8000-series accounts, so development economics and stabilized operations never contaminate each other.

Lender- and investor-ready reporting. Because the CIP structure matches how draw schedules and capital stacks are organized, draw packages, sources-and-uses reporting, and investor updates reconcile directly to the books. Interest by financing layer, reserves by entity, and development fees by payment form are all first-class citizens of the ledger, not analysis performed after the fact.

Clean intercompany capitalization across the SPE chain. The dedicated CIP transfer accounts give every cost movement between project, holding, and SPE entities a documented path — dramatically simplifying consolidation, eliminations, and audit support in a structure where costs routinely need to land in a different legal entity than the one that paid them.

A structure that scales. New projects and new entities inherit the same chart on day one. Comparing soft cost ratios across projects, benchmarking carry costs, or consolidating the entire portfolio requires no remapping — because every entity speaks the same financial language.

The Difference a Purpose-Built COA Makes

Conventional Chart of AccountsConstruction-Specific CIP Structure
Development costsScattered across generic expense accountsCapitalized in a structured CIP block matching the development budget
Build-phase P&LShows artificial lossesReflects true operating performance
Cost trackingManual spreadsheet mapping every monthLand / hard / soft / fees / carry visible directly in the GL
Financing costsOne blended interest accountTracked by capital stack layer — senior, mezzanine, owner
Draw reconciliationPainful, error-proneLedger mirrors the draw schedule
Multi-entity consistencyEvery entity drifts apartOne governed structure across the group
Dev phase vs. operationsMixed togetherCleanly segregated (CIP vs. project operating accounts)

Why It Worked

A chart of accounts is not an IT artifact — it’s the financial architecture of the business. Getting it right for a construction group requires fluency in three things at once: construction cost accounting and capitalization rules, the realities of layered SPE structures and capital stacks, and the technical mechanics of implementing all of it in NetSuite so that account types, ranges, and roll-ups behave exactly as designed. That combination is what we brought to this engagement — and it’s why the client now runs its projects on numbers it trusts.

Facing something similar?

Thirty minutes, your current setup, and a candid read on what it would take.

No retainers pitched, no obligation. You'll get a findings memo either way.