Back to blog

Construction in progress accounting: why it's harder than it looks, and how to make it easier in NetSuite

CIP accounting is one of the hardest parts of fixed asset management. Here's where it goes wrong and how to keep it clean through placed in service.

Last Updated:
October 2, 2026
Last Updated:
October 2, 2026
Two tower cranes lift materials over a building site, representing construction in progress on a large capital project
About the authors
About the author
Becca Barfuss
Product Manager
Read Full Bio →

Construction in progress accounting: why it's harder than it looks, and how to make it easier in NetSuite

Capital projects are some of the biggest investments a company makes. They're also some of the hardest to account for. While an asset is being built, every dollar spent on it sits in construction in progress (CIP). It waits there while your team decides what to capitalize, when depreciation should start, and how many assets the project will turn into. A wrong call here compounds. It carries into every asset the project creates and shows up in depreciation expense for years.

I spend a lot of time with accounting teams who run capital projects in NetSuite. CIP is the topic that comes up most, and it's usually framed as a complaint. Here's where it tends to go wrong, a few practical tips, and how we've built NetAsset to take on the parts that hurt most.

Why CIP is harder than it looks

The standards leave room for judgment

ASC 360 and IAS 16 say to capitalize the costs needed to get an asset ready for its intended use. They don't say much about how to do that for an asset you build yourself. PwC's property, plant, and equipment guide notes that ASC 360 has no specific guidance on capitalizing costs for capital projects a company develops for its own use. So your team makes judgment calls on every project, and your auditors will want to see how each one was made.

Tip: Write down your capitalization policy before the project starts, not at year-end. Cover which internal labor gets capitalized, how you treat freight and permits, and when you consider an asset placed in service. Then keep the support for each call next to the transaction it relates to, not in an email thread or in the head of someone who's on vacation.

Costs come from everywhere

One project can pull in hundreds of transactions: vendor bills, contractor invoices, internal labor, materials, permits, and freight. Each has to be coded to the right project and held until the project is done. Miss one and the asset is understated. Code one twice and it's overstated.

Tip: Reconcile your CIP account to the general ledger every month instead of waiting until completion. A small gap found in month two is a quick fix. The same gap found in month fourteen can turn into an audit finding.

One project rarely becomes one asset

A warehouse expansion might become the building, the HVAC and lighting, the racking, and the parking lot. Each has its own useful life. Splitting one CIP balance into the right assets, with the right costs on each, is slow and easy to get wrong in a spreadsheet at the end of a long project.

Tip: Decide on your target assets early and tag costs to them as they come in. Splitting costs as you go is much easier than splitting them all after the fact.

CIP is one part of a larger lifecycle

Placing an asset in service starts the next stage of its accounting: build-ups to existing assets, partial disposals, transfers between subsidiaries, and separate book and tax schedules. A CIP process that works well on its own but hands off messy data creates problems for every later step.

How NetAsset handles CIP

NetAsset is a fixed asset SuiteApp built natively inside NetSuite. Your asset data lives in the same system as your general ledger, so you're not reconciling between two platforms.

Our clients told us CIP was their biggest headache, so we put a lot of our design work there. The goal is a CIP process that stays inside NetSuite from the first invoice to placed in service:

  • Create assets directly from NetSuite transactions like bills and journal entries. The relevant details flow onto the asset record automatically, so nobody rekeys them.
  • Track cumulative project costs before an asset is placed in service, with CIP balances tied to the transactions behind them.
  • Create CIP and WIP assets from NetSuite SuiteProjects. If your team already manages capital projects there, project costs carry over instead of being rebuilt in a spreadsheet.
  • Build up existing assets for major upgrades, adding the cost to the asset already in service instead of creating a new one. Each build-up keeps its own trail back to the source transaction.

You can see it end to end in the CIP and build-up walkthrough.

Knowing where each tool fits

I'd rather be clear about this up front than have you find out mid-implementation. "Building an asset" can mean very different things, and the right tool depends on what you're building.

Buildings and large construction projects. True construction projects come with their own project accounting needs, including percentage-of-completion tracking and detailed construction cost management. NetAsset doesn't do that work. We partner with other companies who have built specific software to handle the construction project side in NetSuite. NetAsset then moves those costs onto asset records as the project progresses. Each system does what it's built for, and the handoff is planned.

Machinery and equipment you manufacture. If you build equipment in-house, the build itself usually belongs in NetSuite's manufacturing module, with its work orders, assembly builds, and component tracking. NetAsset picks up from there, taking the finished value and sourcing the inventory detail onto the asset record out of the box. That means you don't rekey serial numbers or component costs, and you keep a clean trail from the build to the asset register.

Projects and capital work between those two. Think of tenant improvements, IT rollouts, or equipment installs that collect costs from many bills over several months. This is where NetAsset's CIP tools do most of the work directly.

No matter which part of NetSuite a cost starts in, it should end up on the right asset, with a trail your auditors can follow.

What NetAsset does beyond CIP

CIP is often how teams first find us, but most of NetAsset's day-to-day work is the ongoing accounting for assets already in service:

  • Roll-forward, waterfall, and GL reconciliation reports built for close and audit prep, so your team isn't rebuilding them by hand each period.
  • Mass processing for depreciation schedules, revaluations, and journals, with the option to schedule runs automatically.
  • Intercompany asset transfers between subsidiaries, with elimination built in for consolidation.
  • Reporting by the segments you already use, including subsidiary, location, department, project, and custom segments sourced onto asset records.
  • Full alternate depreciation schedules, typically for financial and tax reporting, plus the Tax Complete add-on for tax automation.

NetAsset is built by accountants for accountants. Netgain was founded by former Big Four accountants, and the CPAs on our team, along with our clients, shape how we design the product.

Where to start

Pick one recent capital project and trace it from first invoice to placed in service. Count the manual steps, the spreadsheets, and the people involved. Note where costs were reclassified, split, or chased down. That exercise will show you exactly where your process needs help.

If you want to see what that same project looks like inside NetSuite, the NetAsset click-through demo walks through it at your own pace. Or reach out, and we'll talk through your setup.

More from our team