Financial Audit Management & Pre-IPO Compliance3 min readUpdated September 2026

Audit Tool Pitfalls for Custom Software Development Firms

A custom software development firm closes its books around project milestones, not subscription cycles, and that changes which control gaps actually matter to an auditor.

Before comparing FloQast and AuditBoard on features, it helps to know the specific mistakes development shops make when they pick between them, because the wrong choice here usually surfaces much later as a restated work-in-progress schedule.

Vendors Covered in this Article

Disclosure: We may earn a commission if you buy through some links on this page. It doesn't change what we recommend.

Why is WIP not a generic balance sheet account?

Work in progress for a project-based development firm isn't a single number, it's the sum of unbilled hours against fixed-price milestones, capitalized internal-use software costs, and any contract assets sitting between billing events.

A close tool that just tracks whether an account is reconciled or not misses the point unless your team builds the underlying schedule correctly first. Fix the reconciliation template before you assume close software alone will fix the control gap.

How should you capitalize development costs consistently?

Accounting rules let you capitalize certain costs during the application development stage of internal-use software, but only costs incurred after the preliminary project stage and before the software goes into service. Firms that build software for clients sometimes apply this inconsistently, capitalizing labor on one engagement and expensing similar labor on another.

That's a control gap a GRC platform is built to catch: a documented policy, tested consistently, is exactly the kind of control AuditBoard tracks and flags when it isn't followed. Check the specifics of your own capitalization policy with your CPA, since treatment can vary by engagement structure.

Pitfall: Letting Time Tracking Drift From Billing

If engineers log hours in one system and invoices get generated in another, the gap between the two is where revenue leakage and audit findings both live.

Reconciling logged time against billed milestones every close is close-process work, and it's the kind of high-volume, repeatable check that close management software handles well: it enforces that someone other than the project manager reviews the tie-out before the books close.

Pitfall: Assuming a GRC Platform Fixes a Close That Isn't Working

Firms sometimes buy a full audit and risk platform hoping it will force better close habits by itself. It won't. AuditBoard organizes and tests controls that already exist; it doesn't build the reconciliation discipline underneath them.

If your project accountants are still closing work in progress weeks late every month, fix that with close management software first, then bring in a GRC platform once you have controls worth testing formally.

Pitfall: Picking Based on What a Sibling Portfolio Company Uses

A tool that fits a subscription SaaS company's deferred revenue problem doesn't automatically fit a services firm's milestone billing problem, even if both companies share the same investor. Compare your own control gaps, not someone else's stack.

If you want a broader read on where a third GRC option might fit once you outgrow a single tool, our FloQast, AuditBoard and Workiva comparison is worth a look.

A Worked Example: When a Fixed-Price Milestone Slips

Picture a twelve-month, fixed-price engagement to build a client's internal claims-processing platform, billed at four milestones. By month seven, the team has burned through most of the budgeted hours but has only hit the second milestone, because a scope change added a reporting module partway through. The project accountant has to decide how much of that unbilled work belongs in work in progress and how much represents a cost overrun that should hit the income statement instead.

This is where a close tool without the right reconciliation template underneath it doesn't help much: it can confirm the account was reconciled on schedule, but it can't tell you whether the number in that reconciliation is right. The underlying judgment, how much of the overrun is recoverable through a change order versus how much the firm absorbs, has to happen in project accounting or with the delivery lead before the number ever reaches the close checklist.

Once that judgment call is made and documented, close software is exactly the right tool to enforce that the same reviewer checks it every month, and that the explanation for any variance gets captured at the time, not reconstructed from memory when the annual audit asks about it later. A firm that skips this step usually finds out the hard way: an auditor samples the WIP account, asks why recognized revenue doesn't match the milestone schedule, and the answer takes several people and a week of digging to reconstruct.

If your firm runs a mix of fixed-price and time-and-materials engagements, keep the two reconciliation templates separate. Time-and-materials work is close to self-correcting, since you bill what you logged. Fixed-price work carries real judgment about recoverability, and that's the piece worth double-checking before you assume your close is clean.

Check these before you buy either tool:

  • Reconcile WIP and unbilled receivables to milestone schedules every month, with the same reviewer catching the same categories of error.
  • Write down a capitalization policy and apply it consistently, since internal-use software rules differ from labor billed under a client contract.
  • Tie time tracking to billing, so drift between logged hours and invoices is visible.
  • Confirm percentage-of-completion calculations come from your project accounting or ERP system, because close software only reconciles the result.
Executive Capability Standard

What Good Looks Like

A development firm's close is in good shape when work in progress ties to logged hours and milestone billing for every open contract, capitalized software costs follow one documented policy across all projects, and someone besides the project manager reviews both before the books close.

Building The Capability (5-Stage Skill Ladder)

1. Learn:Read your capitalization policy against your last five projects and check it was applied the same way on each.
2. Do Manually:Build a standard WIP reconciliation template that ties logged hours to milestone billing project by project.
3. Delegate:Assign a project accountant, not a project manager, to own the WIP tie-out and sign-off each close.
4. Automate:Deploy FloQast to standardize and time-stamp WIP reconciliations, then add AuditBoard once you have controls to test formally.
5. Buy:Bring in outside advisors to review your capitalization policy for consistency before an auditor tests it for you.

How to Get Started

Disclosure: We may earn a commission if you buy through some links on this page. It doesn't change what we recommend.

Frequently Asked Questions

Can we capitalize software development labor for every client project?

Not automatically. Capitalization rules for internal-use software apply differently than labor billed under a client contract, and treatment depends on how each engagement is structured. Talk to your CPA about your specific contracts and delivery model rather than applying one blanket policy.

Does close software understand percentage-of-completion revenue recognition?

Close software reconciles the numbers your revenue recognition process produces, like tying unbilled receivables to milestone schedules, but it doesn't calculate percentage of completion for you. That calculation still depends on your project accounting or ERP system.

How often should WIP reconciliations happen for project-based work?

Monthly at minimum, tied to your regular close, though firms with many concurrent fixed-price projects often reconcile internally more often and formalize it monthly for the books. The cadence matters less than having the same reviewer catch the same categories of error every time.

About the numbers

This guide doesn't quote a sourced benchmark. Figures in it are estimates or general guidance, so check them against your own numbers.

Related Guides