Capitalization of Software Development Costs – Guidance for Hosted Environments
Capitalization of software development costs is an area in which a lot of questions arise, whether it is uncertainty on whether the underlying software is intended for internal use or to be sold, leased, or marketed, or a question of what costs can be capitalized and at what points during development. Figuring out the appropriate capitalization guidance to apply to software used in a hosted environment, both from the customer perspective and the vendor perspective, presents an additional road to navigate.
Evaluation of Capitalization Guidance in a Hosted Environment from the Perspective of a Customer
Software hosted by the vendor may be either a service contract (software as a service or “SaaS”) or a purchase of software. Internal-use software that a customer obtains access to in a hosting arrangement is considered to be the purchase of software if both of the following criteria are met:
- The customer has the contractual right to take possession of the software at any time during the hosting period without significant penalty – that is, if the customer can take delivery without incurring significant cost and has the ability to use the software separately without a significant diminution in utility or value; and
- It is feasible for the customer to either run the software on its own hardware or contract with another party unrelated to the vendor to host the software.
Hosted software arrangements meeting the purchase criteria above would be included in the scope of internal use software and the costs related to this software would be accounted for under those rules. Hosting arrangements that do not meet the purchase criteria are service contracts and do not constitute a purchase of or convey a license to software. Generally, these costs would be accounted for outside the scope of internal use software.
Evaluation of Capitalization Guidance in a Hosted Environment from the Perspective of a Vendor
Software that a vendor provides to a customer through a hosted solution follows the same guidance that a customer uses in determining whether the arrangement is a purchase of software or a service contract.
A vendor-hosted arrangement is considered a sale of software if:
- The customer has the contractual right to take possession of the software at any time during the hosting period without significant penalty; and
- It is feasible for the customer to either run the software on its own hardware or contract with another party unrelated to the vendor to host the software; in those instances, the vendor is selling a license to use the software.
Under these arrangements, the corresponding software development costs are treated as costs of software to be sold, leased or otherwise marketed. If the two criteria are not met, then the vendor is providing a service, in which case the vendor applies internal use software guidance to the treatment of software development costs.
Recent developments: issuance of ASU 2018-15
FASB recently issued Accounting Standards Update (ASU) 2018-15, Internal-Use Software (Subtopic 350-40): Customer’s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That Is a Service Contract. Under this ASU, implementation costs incurred under a hosting arrangement that is a service contract are now accounted for in the same manner as internal-use software costs. For public business entities, it is effective for annual periods, including interim periods within those annual periods, beginning after December 15, 2019. For all other entities, it is effective for annual periods beginning after December 15, 2020.
Earlier adoption is permitted. The update explains that direct implementation costs incurred during the application development stage are allowed to be capitalized, and costs such as training and data conversion are not capitalizable under a hosting arrangement that is a service contract. Any implementation costs incurred in the preliminary project or post-implementation stages cannot be capitalized and are expensed as incurred.