A lot of companies in the technology industry develop software for their internal use and may unintentionally account for the costs incurred in developing an internal-use software improperly. One would think the related costs incurred to develop software for internal use would qualify for capitalization because the process often involves a significant capital investment.
In accordance with Accounting Standards Codification Topic 350-40, Internal-Use Software (“ASC 350-40”), costs incurred to develop internal-use software are either capitalized or expensed depending on the nature of costs incurred and the stage of development of the internal-use software. This article discusses the three stages in the development of internal-use software, the activities normally performed in each stage and how costs are accounted for in each of those stages.
Stage 1 – Preliminary Project Stage
In this stage, a lot of planning and research activities are being carried out. An entity does exploratory research, determines the desired functionality of the internal-use software, and determines whether technology exists to achieve stated performance objectives. Internal and external costs incurred during the preliminary project stage are expensed as they are incurred.
Stage 2 – Application Development Stage
This is the stage where development of the internal-use software takes place. Activities in this stage include designing the software, coding, installing the hardware and testing the software. Certain costs incurred during the application development stage are capitalized while others are expensed.
Costs that are directly related to the development of the software are capitalized. These costs include:
- External direct costs of materials and services consumed in developing or obtaining internal-use software, such as fees paid to third parties for services provided to develop the software during this stage, costs incurred to obtain computer software from third parties and travel expenses incurred by employees in their duties directly associated with developing the internal-use software;
- Payroll and payroll-related costs (for example, costs of employee benefits) for employees who are directly associated with and who devote time to the internal-use software project, to the extent of the time spent directly on the project; and
- Interest costs incurred while developing internal-use computer software.
Capitalization during this stage begins when Stage 1 is completed, and management authorizes and is committed to funding a project that is likely to be completed and ceases when the internal-use software is substantially complete and is ready for its intended use.
Costs that are typically expensed during this stage include:
- Training costs;
- Data conversion costs, such as those incurred during purging or cleansing of existing data, reconciliation or balancing of the old data and the data in the new system, creation of new or additional data, and conversion of old data to the new system; and
- General and administrative and other overhead costs.
Stage 3 – Post-Implementation – Operation Stage
In this stage, the internal-use software is already complete and is in use. Activities in this stage include training and routine maintenance of the internal-use software. Internal and external costs incurred during the post-implementation-operation stage are expensed as incurred.
Upgrades and Enhancements
At some point post-implementation, an entity may decide to upgrade or enhance its existing internal-use software. Upgrades and enhancements are defined as modifications to existing internal-use software that result in additional functionality – ie, modifications to enable the software to perform tasks that it was previously incapable of performing. Costs incurred to upgrade or enhance an existing internal-use software follow the same accounting guidance as discussed in Stage 2 above.
It is important to note that the above guidance only applies to software that qualifies as internal-use software under ASC 350-40. There is different guidance applicable for software to be used in research and development (ASC 730, Research and Development) and software to be sold, leased or marketed (ASC 985-20, Software).