How to capitalize software R&D engineering salaries under GAAP?
Software capitalization under ASC 350-40 (Internal-Use Software) is one of the most powerful, yet poorly executed, levers available to a CFO. It dictates precisely when engineering wages can be capitalized (boosting immediate EBITDA and asset value) versus expensed (creating aggressive OpEx drag on the P&L).
The Three Stages of ASC 350-40
GAAP defines a strict boundary for capitalization:
- Preliminary Project Stage (Expensed): Brainstorming, evaluating vendor APIs, and prototyping. All engineering hours here must hit OpEx.
- Application Development Stage (Capitalized): Designing architecture, coding net-new features, integrating systems, and aggressive testing. These hours are capitalizable.
- Post-Implementation Stage (Expensed): Routine maintenance, bug fixing, and training. Once the feature hits production, the capitalization window slams shut.
📈 The ASC 350-40 Optimization Wall
The Executive Case Study
A rapid-growth B2B SaaS company preparing for an IPO had a $25M annual engineering payroll. Because their developers refused to carefully log "feature vs maintenance" in Jira, the finance department took a conservative approach and expensed 85% of all engineering salaries, obliterating their EBITDA margins. The CFO partnered with the VP of Engineering to implement deep Jira-to-ERP integrations mapping specific "epic" tags to ASC 350-40 capitalization rules. By correctly proving that 55% of their engineering effort was actually net-new "Application Development," they capitalized $13.7M of salaries. This single accounting recalibration shifted their EBITDA from negative to deeply profitable instantly, increasing their IPO valuation by over $150M.
The 90-Day Remediation Plan
- Day 1-30: Bridge the Finance-Engineering gap. The CFO must sit down with the VP of Engineering and audit exactly how Jira tags are used. Redefine ticket types distinctly into "Net-New Development" vs "Maintenance/Bug".
- Day 31-60: Institute automated Time Tracking. Do not ask engineers to manually submit timesheets—they will rebel. Connect Git commit hooks to Jira epics, automatically allocating payroll capitalization based on the volume of code pushed to specific capitalized project tags.
- Day 61-90: Run the retroactive audit. Work with your auditors to mathematically re-categorize the last 12 months of development using the new rigid tagging structure, driving an immediate positive adjustment to your current balance sheet.
Unlocking Enterprise Value
CFOs and Controllers lose millions in enterprise value because they fail to force Jira or Agile story points to map back to these capitalization stages. If an engineer making $200,000/year spends 60% of their sprints building net-new functionality in the Application Development Stage, $120,000 of their salary can be capitalized onto the balance sheet. By establishing rigorous, automated engineering time-tracking linked to specific feature development phases, CFOs can dramatically elevate reported net income, directly multiplying enterprise valuation.
Download the R&D Capital Accounting Model.
Download the exact execution models, deployment checklists, and financial breakdown frameworks associated with this architecture methodology.