Capitalization of Software Development
CFO Consulting
Zewn?trzny Dyrektor Finansowy — Partner w Strategicznym Zarz?dzaniu Finansami dla Mikro i Ma?ych Przedsi?biorstw
Software capitalization means treating your development related costs as long-term assets rather than expenses for the duration of a product’s development phase. This entails putting these costs on a balance sheet, rather than as incurred and delaying the moment when they become an expense that’s taxable. This will have an impact on your P&L and make your net income bigger over a period of time – a feature that is attractive to investors.
A brief overview and term definition:
Expensing = the process of taking a cost for developing software and charging it as an expense. You can do this by charging the cost in the company’s standard income statement, when this cost is used immediately and they become taxable right away. They are also known as OpEx or operational expenses.
Capitalizing = the process of considering software development as an asset that you will use over time, meaning the costs associated with it are also depreciated or amortized over time . This means you can put this cost on a balance sheet, and you won’t recognize those initial costs until you put the finished product in use and have revenue from it. This translates into delaying paying taxes on those costs and having a bigger net income over that period of time. These are also called capital expenditures or CapEx, usually indicating a major purchase that a company uses over time.
Software Costs That Qualify for Capitalization
When considering capitalizing software within your company, the first step is to understand this practice falls under strict rules based on GAAP – these tell you which costs you can submit as assets and not immediate expenses. But not all costs that can be capitalized should be – this relates to financial strategy and what’s best for your company depending on a number of factors.
It’s very important to understand when you should capitalize your costs and when to treat them as expenses – from both a legal and strategic point of view. Here is the breakdown to help you understand when software costs can be capitalized over a period of time, depending on the product type and its purpose in your company practices.
Software Developed for Internal-Use Only
Software in this category is developed only for use within your company, for example to help employees complete their task – thus it’s called for internal-use only. There is no plan in turning this project into a sellable product for the public, so it won’t produce a direct income for your company.
You can capitalize the costs of these types of products because they are considered assets or resources for your company.
Software Developed for External-Use
The only costs that qualify for capitalization here are those included in the technological feasibility phase. This implies the initial phase of designing and testing has been completed and you now know you have a doable product that will include the features and design elements intended. The project also has financing at this point and is in the product development stage.
Costs that can be capitalized at this phase include:
·?????? coding
·?????? consulting fees from outside collaborators
·?????? adding features to the product
·?????? programmer compensation
All the costs associated with the initial stage of planning, and the ones after the product is available for sale must be expensed. They don’t qualify for capitalization, so they have to be charged on the income statement right away.
Criteria for Development to Qualify for Capitalization
The original practice of software capitalization fell under the Waterfall method that meant a certain sequential order of development. This is how software was historically developed in the past, and it implied a very specific order of developing a product, making it easy to identify the phase of a product.
The main steps with the Waterfall approach are:
·?????? analysis/ plan
领英推荐
·?????? system design
·?????? development/ code writing
·?????? testing
·?????? release
·?????? maintenance
Each step had to be executed in this order and solved before progressing to the next stage. The accounting method for rendering costs as assets and thus capitalizing them was based on this particular practice.
But nowadays, software development has evolved and a different approach has emerged – the Agile approach. This new model entails cutting each step of the development process into smaller sections of activity. It also means getting through the steps faster and involving end-users in the process much sooner, for early feedback in testing the product. This way you can understand whether a product functions or not, what are the issues and points you can improve.
The Agile method brings a more flexible approach to software, with development teams organized on specific tasks or products, and that translates into faster results and better communication with end-users. The challenge with this method comes from the accounting side of things – how do you translate software capitalization based on GAAP methods for the new way of developing software, when the rules were made to fit the previous Waterfall approach?
The answer to this particular question is no easy task, nor is the actual application in practice. Keep in mind that for products meant for public release, only costs in the development stage are up for capitalization, according to the GAAP rules. With the Waterfall approach, it was very easy to identify the cost that qualified for capitalization because each step was clearly defined.
What Are the Benefits of Software Capitalization?
Software capitalization is a practice derived from standard accounting methods (GAAP) which allow certain advantages for your company while developing products. Please keep in mind that they may also present some challenges. Here are the main benefits of using software capitalization within your company:
·?????? By capitalizing software you can reduce the impact on the company’s expenses. You can do this with amortization (on intangible assets, such as internal-use software) or depreciation (on tangible assets). These are processes that entail expensing those costs over time.
·?????? Capitalization will bring less impact on your company’s P&L (profit & loss statement) over the current year. The P&L or the income statement is a report that shows a company’s expenses and revenues over a period of time. ?
·?????? By taking certain costs out of the equation (because they are on the balance sheet instead of the income statement over a time period), your company will have a bigger net income, so a better financial image that is more appealing for investors.
Software Capitalization Challenges
While software capitalization has its benefits, this practice may also bring on some confusion and hidden ”side effects”. Here are some key points to understanding where this potential pitfalls lie:
·?????? Depending on certain factors, some products’ lifespan is a lot smaller and the development process is faster, especially with the newer Agile method. This means the period of time when you can capitalize costs (the development stage before the product is up for sale) is merely a small window in some cases. So the impact of considering software engineering as an asset is limited.
·?????? Project prioritization is not always accurate when capitalizing software. Projects where you’ve capitalized a lot of the costs may seem more profitable than others. In reality, you’ve only expanded the time frame when those costs will become visible in the overall net income, but they are still there.? Therefore, comparing projects based on the amount of capitalized costs is not always equitable. Big decisions such as investment planning or project prioritization should be taken considering the overall costs from beginning to end of developing a product.?
·?????? The process of accounting can be confusing and complicated when you have to initially register the costs on the balance sheet and later on the P&L. It requires more attention than simply charging all costs directly on the income statement and you have to know when it’s the right time to start expensing.
Deciding what costs qualify for capitalization is difficult and requires many discussions and planning of resources. This is true especially for projects developed under the Agile Method.
?