1106.7 Plant Assets

Internal Use Software Costs

Document purpose

Establish guidance for the proper accounting of software purchased or developed for internal use.


July, 2005


May, 2017


May, 2024

Responsible Office





This policy applies to all schools and centers that incur software costs.  


  1. Internal-use software (including application, operating system, infrastructure, and utilities) has the following characteristics: (a) the software is acquired, internally developed, or modified solely to meet Penn’s internal needs and (b) during the software’s development or modification, no substantive plan exists or is being developed to market the software externally.  

  2. Software that is obtained via a cloud computing arrangement is accounted for as internal-use software if the following two criteria are met 1) The University has a contractual right to take possession of the software at any time during the hosting period without significant penalty, and 2) It is feasible for the University to run the software on its own hardware or contract with another party unrelated to the vendor to host the software.  

  3. The external cost of purchased internal use software applications in excess of $5,000 (exclusive of maintenance, support and/or training costs) with a useful life of more than one year must be capitalized. If the software price includes maintenance, support, or training, the costs related to these components must be separated and expensed. If these costs cannot be separated on a reasonably cost-effective basis, the software must be totally expensed. 

  4. External costs incurred under a software agreement to provide (1) unspecified upgrades and enhancements to existing functionality or (2) combined maintenance and unspecified upgrades and enhancements should be expensed over the contract period. The external costs of upgrades and enhancements that enable the software to perform additional features that are software extensions, new functionality or “bolt-ons” previously not incorporated into the software design must be capitalized.  

  5. Costs related to both package and internally-developed software are expensed or capitalized depending on the nature of the cost and the stage of development. 

  6. All costs incurred during the Preliminary Project Stage (PMAP1 Definition and Planning Phases) must be expensed. The Preliminary Project Stage generally includes the following activities: 

    • Making strategic decisions to allocate resources between alternative projects at a given point in time. For example, should IT staff develop a new payroll system or direct their efforts toward correcting existing problems in the current payroll system? 
    • Determining the functional requirements (what do we need the software to do) and the technical systems requirements for the computer software project that has been proposed.  
    • Inviting vendors to perform demonstrations of how their software will fulfill our needs.  
    • Exploring alternative means of achieving specified functional requirements. For example, should we make or buy the software? Should the software run on a mainframe, Unix or Linux server, be web based or client server?  
    • Determining that the technology needed to achieve functional requirements exists. 
    • Selecting a vendor if an entity chooses to obtain externally developed software.  
    • Selecting a consultant to assist in the development or installation of the software. 
    1. Project Management at Penn  


  7. When the aggregate software project costs (exclusive of hardware costs) will equal or exceed $500,000 during the Application Development Stage (PMAP Design and Development Phases), the costs must be capitalized. The Application Development Stage generally includes: 1) design of the chosen path including software configuration and software interfaces, 2) coding, 3) installation of hardware, and 4) testing including parallel testing. Capitalization will occur when both: 

    • The preliminary project stage is complete, and 
    • Management, with the relevant authority, authorizes and commits to funding the computer software project and it is probable that the project will be completed and the software will be used to perform the function intended. Examples of authorization include the execution of a contract with a third party to develop the software, approval of expenditures related to internal development, or a commitment to obtain the software from a third party 


  8. Costs incurred during the Application Development Stage that are to be capitalized include only the following:  

    • External direct costs of materials and services consumed in developing or obtaining internal-use computer software. Examples of those costs include, but are not limited to, fees paid to third parties for services provided to develop the software during the application development stage, costs incurred to obtain computer software from third parties, and travel expenses incurred by employees in their duties directly associated with developing software.  
    • Payroll and payroll-related costs (for example, costs of employee benefits) for both functional and technical employees who are directly associated with and who devote time to the internal-use computer software project, to the extent of the time spent directly on the project. Examples of employee activities include, but are not limited to, coding and testing during the application development stage.  
    • Interest costs incurred while developing internal-use computer software if software project costs are externally financed. 
  9. All costs incurred during the Post Implementation Operation Stage are to be expensed. These costs generally include training, support services, system operation and application maintenance. 

  10. Costs incurred for data conversion from old to new systems, including purging or cleansing existing data, and reconciliation or balancing old data to data in the new system, all training and maintenance costs, and general and administrative costs and overhead costs are to be expensed regardless of when they are incurred during the project.  

  11. Internal costs of upgrades and enhancements made to existing software are expensed or capitalized based on the same criteria that are applied to newly developed software. If internal costs of minor upgrades and enhancements cannot be separated from maintenance costs on a cost-effective basis, all such costs should be expensed as incurred. 

  12. If the software relates to research and development, it must be expensed unless, at the conclusion of the research, it has an alternative internal use.