Software capitalization involves the recognition of internally-developed software as fixed assets. Software is considered to be for internal use when it has been acquired or developed only for the internal needs of a business. Examples of situations where software is considered to be developed for internal use are:
- Accounting systems
- Cash management tracking systems
- Membership tracking systems
- Production automation systems
Further, there can be no reasonably possible plan to market the software outside of the company. A market feasibility study is not considered a reasonably possible marketing plan. However, a history of selling software that had initially been developed for internal use creates a reasonable assumption that the latest internal-use product will also be marketed for sale outside of the company.
Software Capitalization Accounting Rules
The accounting for internal-use software varies, depending upon the stage of completion of the project. The relevant accounting is:
- Stage 1: Preliminary. All costs incurred during the preliminary stage of a development project should be charged to expense as incurred. This stage is considered to include making decisions about the allocation of resources, determining performance requirements, conducting supplier demonstrations, evaluating technology, and supplier selection.
- Stage 2: Application development. Capitalize the costs incurred to develop internal-use software, which may include coding, hardware installation, and testing. Any costs related to data conversion, user training, administration, and overhead should be charged to expense as incurred. Only the following costs can be capitalized:
- Materials and services consumed in the development effort, such as third party development fees, software purchase costs, and travel costs related to development work.
- The payroll costs of those employees directly associated with software development.
- The capitalization of interest costs incurred to fund the project.
- Stage 3. Post-implementation. Charge all post-implementation costs to expense as incurred. Samples of these costs are training and maintenance costs.
Any allowable capitalization of costs should begin after the preliminary stage has been completed, management commits to funding the project, it is probable that the project will be completed, and the software will be used for its intended function.
The capitalization of costs should end when all substantial testing has been completed. If it is no longer probable that a project will be completed, stop capitalizing the costs associated with it, and conduct impairment testing on the costs already capitalized. The cost at which the asset should then be carried is the lower of its carrying amount or fair value (less costs to sell). Unless there is evidence to the contrary, the usual assumption is that uncompleted software has no fair value.