ASC 350-40: Internal-use software capitalization explained

Learn how ASC 350-40 governs internal-use software capitalization, which development costs qualify, and why audit-ready labor documentation matters for compliance.

Published – January 15, 2026
ClickTime

Table of contents

ASC 350-40: Internal-use software capitalization, explained

Internal-use software development is one of the most common and least understood forms of capital investment. ASC 350-40 provides clear guidance on how these costs should be treated, but applying the rule consistently becomes harder as organizations scale, software projects expand, and development activities span multiple teams and reporting periods.

In practice, most challenges arise not from the accounting guidance itself, but from how software development costs particularly internal labor are captured, classified, and defended across development stages.

This page explains what ASC 350-40 covers, how capitalization works across the development process, and why clear, time-based labor documentation is essential for audits, financial reporting, and long-term confidence in financial statements.

What ASC 350-40 covers and why it matters

ASC 350-40 is issued by the Financial Accounting Standards Board (FASB) and forms part of the Accounting Standards Codification (ASC), the authoritative source of U.S. GAAP. The guidance applies specifically to internal-use software software developed or acquired to support a company’s internal operations, rather than software built for external customers.

Internal-use software includes internally developed software applications, configured platforms, and certain hosted or cloud-based solutions used to support internal business processes. For many organizations, these computer software projects represent a significant and recurring investment.

Whether software development costs are expensed immediately or capitalized as an intangible asset directly affects operating expenses, net income, and the balance sheet. As companies prepare for audits, interim and annual reporting periods, fundraising, or public filings, consistent application of ASC 350-40 becomes increasingly important—and that consistency depends on whether costs incurred can be clearly attributed to qualifying development activities and project stages.

At a glance

  • Stage-based accounting: Costs are treated differently depending on the project stage
  • Financial impact: Expense timing affects the income statement and balance sheet
  • Documentation required: Development costs must be attributable to the correct stage and function

Key terms to know

Internal-use software
Software applications developed or acquired for internal business use rather than resale.

Internally developed software
Software built in-house or under a service contract for internal use.

Software development costs
Internal and external costs incurred while developing, configuring, or implementing internal-use software.

Capitalization criteria
The conditions under which eligible development costs may be capitalized rather than expensed.

ASC 350-40 provides the accounting model for applying these definitions consistently, but it does not prescribe how organizations should operationally capture the underlying development activities.

The three stages of internal-use software development

ASC 350-40 divides the development process for internal-use software into three project stages. Each stage has distinct accounting treatment and documentation requirements.

Stage 1: Preliminary project stage

The preliminary project stage includes conceptual design, evaluation of alternatives, feasibility analysis, and determining performance requirements.

Accounting treatment
Costs incurred during this stage are expensed as incurred and recognized in the income statement.

Practical challenge
Early planning often overlaps with development activity, making it difficult to clearly document which labor and external costs should remain expensed—particularly when significant development uncertainty exists.

Stage 2: Application development stage

The application development stage begins when management authorizes the software project and development activities commence. It includes coding, configuration, testing, data conversion, and direct labor associated with building the software.

Accounting treatment
Eligible software development costs incurred during this stage may be capitalized, provided they meet capitalization criteria. Capitalized costs are recorded as an intangible asset and amortized over the software’s useful life.

Practical challenge
Capitalization depends on whether development expenses especially internal labor can be clearly attributed to qualifying activities and specific time periods, rather than reconstructed after the fact.

Organizations need systems that capture CapEx vs. OpEx labor classification at the moment of entry, not months later during audit preparation.

Stage 3: Post-implementation stage

The post-implementation stage begins when the software is ready for its intended use. It includes training costs, maintenance, and routine upgrades.

Accounting treatment
Costs incurred during this stage are expensed as incurred. Certain software upgrades or enhancements may qualify for capitalization if they add additional functionality or represent a major feature and meet application development criteria.

Practical challenge
Without time-based documentation, implementation costs incurred after deployment are frequently misclassified or adjusted during audit or financial review.

Internal and external costs under ASC 350-40

ASC 350-40 applies to both internal costs (such as employee compensation) and certain external costs, including fees paid to vendors under a service contract, consulting arrangement, or hosting agreement—when those costs are directly related to qualifying development activities.

Costs related solely to ongoing support, training, or services that do not contribute to actual development must be expensed immediately.

Cloud computing and hosting arrangements

For cloud computing arrangements, capitalization depends on whether the arrangement includes a software license or qualifies as internal-use software under ASC 350-40. Costs related exclusively to hosting arrangements or service components are generally expensed, while capitalizable costs must meet the same development-stage and eligibility requirements as internally developed software.

ASC 350-40 and research and development expenses

Development activities involving significant uncertainty, exploratory research, or efforts to establish technological feasibility may fall outside ASC 350-40 and instead be treated as research and development expenses until feasibility is established. Determining where development transitions from R&D to capitalizable activity requires clear documentation of actual development work performed. Organizations claiming R&D tax credits face similar documentation requirements, making labor tracking essential for both compliance purposes.

Why ASC 350-40 is challenging in practice

The accounting guidance is clear. Execution is not.

Software development frequently spans multiple teams, timelines, and reporting periods. Engineers may work on capitalizable and non-capitalizable tasks within the same week. Without structured, time-based records, organizations are forced to estimate or reconstruct development costs after the fact—introducing risk during audits, financial reporting, and diligence.

Why labor documentation matters

Unlike vendor invoices or software licenses, labor costs are rarely self-describing. Accounting for internal-use software requires more than knowing how much was spent—it requires knowing what development activities occurred, when they occurred, and whether they qualify.

Clear labor documentation makes it possible to:

  • Apply capitalization policies consistently
  • Support audit and review requests with evidence
  • Maintain confidence in reported financial statements

For many organizations, labor represents the largest and least defensible component of internal-use software capitalization.

Supporting ASC 350-40 with finance-ready labor data

ASC 350-40 does not require specific tools, but spreadsheets and retrospective analysis often break down as internal software investment grows. Labor cost visibility systems play a supporting role by:

  • Capturing work as it happens
  • Categorizing time by project and purpose
  • Distinguishing capitalizable from non-capitalizable activity at the source
  • Preserving approval history and audit trails

ClickTime does not determine capitalization policy or replace accounting systems; it operates upstream of them by providing the labor evidence those systems depend on and that auditors require. This allows capitalizable costs to flow into ERP and financial reporting systems supported by documentation rather than assumptions—especially when capitalized labor represents a material portion of internal software investment.

Preparing for ASU 2025-06

The shift introduced by ASU 2025‑06 will require updated accounting policies reflecting the clarified capitalization threshold, including assessments of management authorization, funding commitment, and the resolution of significant development uncertainty.

While ASU 2025-06 doesn't take effect until fiscal years beginning after December 15, 2027, organizations should begin preparing now. The shift from stage-based to principles-based capitalization criteria will require:

  • Updated accounting policies reflecting the new "probable-to-complete" threshold
  • Clear processes for determining when management authorization and funding commitment occur
  • Documentation practices that capture when significant development uncertainty exists—and when it has been resolved through coding and testing
  • Transition disclosures under ASC 250

Organizations with robust, time-based labor tracking systems will be better positioned for this transition. The underlying need—defensible records of who worked on what, when, and for what purpose—remains constant regardless of which accounting framework applies. Schedule a free consultation to see how ClickTime provides the clean, verified labor data you need.

ClickTime
ClickTime
FAQs

Common questions

What's the difference between ASC 350-40 and ASC 985-20?

ASC 350-40 applies to internal-use software—software developed or acquired for a company's own operations. ASC 985-20 applies to external-use software—software developed to be sold, leased, or marketed to customers. The distinction matters because the two standards have significantly different thresholds for when capitalization can begin. Under ASC 985-20, costs related to design, configuration, and coding are typically expensed until technological feasibility is established. Under ASC 350-40, those same costs are generally capitalizable once the preliminary project stage is complete and management has authorized the project.

How does ASC 350-40 apply to cloud computing arrangements?

ASC 350-40 provides guidance on accounting for implementation costs incurred in cloud computing arrangements that are service contracts. The updates to ASC 350-40 (via ASU 2018-15) clarify which implementation costs may be capitalized for arrangements that do not include a software license. The same three-stage model applies: preliminary project phase costs are expensed, application development phase costs can be capitalized if they relate to actual software development, and post-implementation phase costs (like training and maintenance) must be expensed.”Under current ASC 350-40 guidance, entities commonly apply the three-stage model: preliminary project phase costs are expensed, application development phase costs can be capitalized if they relate to actual software development, and post-implementation phase costs (like training and maintenance) must be expensed.”

What's the difference between a cloud computing arrangement with a software license vs. a service contract?

The distinction affects accounting treatment significantly. A cloud computing arrangement that includes a software license allows for the capitalization of both the license cost and related implementation costs—similar to traditional on-premise software. An arrangement that is purely a service contract (no license conveyed) requires different treatment: ongoing service fees are expensed, but qualifying implementation costs may still be capitalized under ASC 350-40 guidance.

What are the two criteria for beginning capitalization under ASC 350-40?

Under current ASC 350-40 guidance, capitalization of costs can begin only after two criteria are met: (1) the preliminary project stage has been completed, and (2) management with the relevant authority has implicitly or explicitly authorized and committed to funding the software project. Both conditions must be satisfied before any development costs can be capitalized.

What costs can be capitalized in each development stage?

Preliminary project stage: All costs must be expensed as incurred. This includes conceptual formulation, evaluation of alternatives, and feasibility analysis.

Application development stage: Costs directly related to software development can be capitalized. This includes coding, configuration, testing, and direct labor for building the software.

Post-implementation stage: Most costs must be expensed as incurred, including training and routine maintenance. However, costs for upgrades and enhancements that add significant new functionality may qualify for capitalization if they meet the application development criteria.

What is "technological feasibility" and how does it relate to ASC 350-40?

Technological feasibility is a concept from ASC 985-20 (external-use software), not ASC 350-40. Under ASC 985-20, technological feasibility is achieved when an entity has completed all planning, designing, coding, and testing necessary to determine that the product will meet its design specifications. For internal-use software under ASC 350-40, the capitalization threshold is different—it's based on project stages and management authorization rather than technological feasibility.

When did the cloud computing guidance in ASC 350-40 become effective?

The updates to ASC 350-40 regarding cloud computing arrangements (ASU 2018-15) became effective for public entities for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years. Private companies had an additional year for adoption.

What changes does ASU 2025-06 make to ASC 350-40?

ASU 2025-06 modernizes the guidance in ASC 350-40 by removing all references to project stages and replacing them with a clarified capitalization threshold. Under the new guidance, entities capitalize costs when management has authorized and committed to funding the project and it is probable the project will be completed and the software will perform its intended function. The update also introduces the concept of "significant development uncertainty"—when present, costs cannot be capitalized until the uncertainty is resolved through coding and testing.when present, costs cannot be capitalized until that uncertainty is sufficiently resolved through development and testing activities.

When is ASU 2025-06 effective?

ASU 2025-06 is effective for annual reporting periods beginning after December 15, 2027, for all entities, including interim periods within those annual periods. Early adoption is permitted as of the beginning of an annual reporting period. Entities can choose from prospective, modified, or retrospective transition approaches.

Is ASC 350-40 the same as ASC 350 (goodwill)?

No. ASC 350 is the broader topic covering "Intangibles—Goodwill and Other." ASC 350-40 is a specific subtopic within ASC 350 that addresses internal-use software. Other subtopics under ASC 350 cover goodwill (ASC 350-20), which involves accounting for goodwill acquired in business combinations, impairment testing, and related disclosures. These are separate accounting areas with different requirements.

Why is the accounting treatment for internal-use software costs confusing?

Several factors contribute to the confusion: (1) the growing shift to subscription-based cloud solutions blurs the line between software purchases and service contracts; (2) agile development methods don't map cleanly to the traditional stage-based model; (3) engineers frequently work on  both capitalizable and non-capitalizable activities within the same time period; and (4) labor costs—often the largest component—require contemporaneous documentation that many organizations lack. The upcoming changes in ASU 2025-06 are intended to address some of these challenges by moving to a principles-based approach.

More insights from our team

Explore all insights

Cost engineering in project management: Estimation, control, and total cost management

Learn how cost engineers use estimation methods, cost control techniques, and total cost management to deliver projects on budget and on schedule.

Functional expenses for nonprofits: A complete guide to allocation and reporting

Learn how to allocate functional expenses, create a statement of functional expenses, and meet FASB requirements. Includes templates and Form 990 guidance.

Grant management software for nonprofits: Complete guide to labor tracking and compliance

Grant management software guide for nonprofits: track labor costs, allocate expenses across funding sources, automate compliance reporting, and pass audits.

https://www.clicktime.com/blog/asc-350-40-software-capitalization-guide