We have an internal software development team. They develop new products, but they also maintain existing products. What costs get capitalized? Does all development for new products get capitalized? Is there any discretion. For example, if the product is an add-on to an existing solution, does that matter. We would prefer to take the expense in the current year to reduce taxable income, but I'm not sure if that is permitted.
What about the maintenance work? Is software maintenance work (done by the same people) always an expense? Under what circumstances would it be capitalized?
I need to know the GAAP treatment.
Properly accounting for expense of software development depends on whether the software is developed for sale or internal use.
It sounds like you are primarily developing software for sale. When developing software for sale, development costs are expensed until "technological feasibility" is established - in other words until you have completed development of a working model of the software. If you continue development work after "technological feasibility" but before the product is released to the market ("general release"), those costs must be capitalized. If your release of the product coincides with the completed development of a working model, then you may be able to complete the entire project without capitalizing any development costs.
When developing software for internal use, any development costs related to planning or evaluating the project are expensed. Development costs are capitalized once development work is initiated to execute on a project plan for completing the software. Then, when the software is implemented or placed in service maintenance and other development costs are expensed.