Claiming in the Software Industry
Software is a notoriously complex area for the submission of robust and defendable R&D claims
It is the main technology area where HMRC enquire into and reject (or substantially reduce the value) of claims.
The main difficulty arising is that companies developing software can spend significant resources in planning, writing, testing and debugging software yet whether part of these costs are eligible for R&D Tax Credit purposes comes down to whether the software development meets the HMRC criteria for R&D and whether that can be communicated effectively to HMRC.
With generalist accountants remaining understandably under-skilled regarding R&D claims, and very few R&D specialists also being software engineers, many software companies have either under claimed or not claimed.whilst others have incorrectly claimed without the necessary supporting evidence and would be unable to defend their claim if HMRC launched an inquiry, which they can do up to six years following the submission and payment of a claim.
Others have incorrectly claimed without the necessary supporting evidence and would be unable to defend their claim if HMRC launched an inquiry, which they can do up to six years following the submission and payment of a claim.
Many advisors and accountants incorrectly advise their clients that work spent developing bespoke software code to provide new ‘features and benefits’ de facto qualifies as R&D.
This is certainly not the case and many claims are rejected by HMRC because of the claimant (often supported by inexperienced advisors), preparing a detailed report focusing on the features and benefits of the software development, rather than demonstrate the underlying advancement of science and technology required to realise them.
What you need to know:
Requirements to prepare a robust and defendable claim
To prepare a robust claim, it is necessary to have supporting documentation identifying the advance in technology sought by the project, the technological uncertainties that were required to be overcome to achieve the technological advance and the reasons as to why the resolution of these technological uncertainties would not be obvious to a competent professional in the field.
HMRC Qualifying Criteria for Software Projects
To count as ‘qualifying R&D’, according to HMRC Guidance (CIRD 81960) a software project must:
- Seek to achieve an advance in software / IT (para3).
- There must be an advance in overall knowledge or capability in software / IT, not just the company’s own state of knowledge or capability alone (para6).
- The development of a software product does not represent an advance in software / IT simply because it is software (para8).
- Routine adaptation of an existing product or process is not R&D (para12).
- Assembling components of a program to an established pattern or using routine methods for doing so is not R&D (para29).
- Combining standard technologies can be R&D if a competent professional in the field cannot readily deduce how the separate components should be combined to have the intended function (para30).
3 Key Areas identify if a project is eligible to qualify
- The project must seek to achieve an advance in science or technology. (There must be an advance in overall knowledge or capability in a field of science or technology, not just the company’s own state of knowledge or capability alone.)
- The advance in science and technology must be resolved (or attempt to be resolved in the case of a failed project), through the resolution of a technological uncertainty.
- The resolution of the technological uncertainty should not be obvious to a professional competent in the area of software for which the claim is being made.
Advance in science or technology
To demonstrate an advance in science/technology it is necessary to provide a state of the art review of the field at the start of the project.
In order to identify the state of the art in a field and thus articulate clearly to HMRC how our clients’ work meets the requirements of advancing the field, we have compiled the most comprehensive of industry databases identifying early stage technology companies developing state of the art solutions in over 190 areas of Software and IT (see the full list on the Software / IT tab in our Sector Experience links above) and describe the projects undertaken by our clients against the state of the art in the field.
To be successful a project development must be able to show that the outcome of the development required is the resolution of a technological uncertainty. Hence a major fact in determining the eligibility of a claim is in identifying the technological uncertainty of a project.
Many would-be claimants have tried to argue that integrating a multitude of leading edge tools and languages self-represents a ‘system technological uncertainty’ but such arguments require specific details to justify this contention with HMRC guidance against such arguments:
“It may be claimed that there are always system uncertainties involved with software. It is true that there is always some uncertainty about anything. But uncertainties that can be resolved through discussions with peers or through established methods of analysis are routine design uncertainties rather than technological uncertainties. Technical problems that have been overcome in previous projects on similar operating systems, or computer architecture, are not technological uncertainties.”
Obviousness to a Competent Professional
This criterion could be considered somewhat subjective and it is not uncommon in our experience that the most skilled software engineers downplay their advances relative to their peers. Occasionally the weaker ones believe that everything they have developed represents a major advance in the field!
As with many areas of R&D claims there is no substitute for sector knowledge and experience of having made previous claims in similar areas of technology.
At May Figures, all our software claims are written by technical analysts who between them have prepared over 600 Software / IT claims and possess:
- a PhD or degree in Computer Science
- 20+ years’ experience in software code development / IT project management
- 4+ years of R&D claim writing experience mainly on Software /IT R&D claims
Complications in real-world software development
Whilst such broad definitions may be appropriate in differentiating blue sky or pure research (fully qualifying) from ‘routine commercial software development’ (non-qualifying), they are very subjective in the world of commercial software development; where developers typically invest considerable effort in developing commercial solutions without necessarily assessing how their developments could be considered to be making an overall advance in knowledge of capability in the field of software / IT rather than just an advance for their company.
It is rare for developers to fully develop a software solution entirely from scratch, typical best practice development processes rely on building bespoke application functionality with software modules or micro-services, residing on top of a code bases developed from earlier projects or even open-source communities.
Examples of Qualifying Projects:
HMRC give examples of qualifying projects as being activities such as:
- Developing new operating systems or languages.
- Creating new search engines using materially new search methods.
- Resolving conflicts within hardware or software, where the existence of a problem area and the absence of a known solution have been documented.
- Creating new or more efficient algorithms whose improvements depend on previously untried techniques.
- Creating new encryption or security techniques that do not follow established methodologies.
- The handling of interactions with users. This covers areas such as development of data entry procedures and user interfaces.
- The visual presentation of information to users.
- Creating software that replicates an established paper procedure, possibly building in best practices. The fact that a previously manual task has been automated does not by itself make it R&D.
- The assembling, carrying out routine operations on and the presenting of, data.
- Using standard methods of encryption, security verification and data integrity testing.
- Creation of websites or software using tools designed for that purpose.
What if only part of a project comprises a qualifying activity?
Typically, a large software / IT development project contains elements of qualifying R&D, but according to HMRC guidance: ‘”The project as a whole will not qualify as R&D, but there may be elements in the project that do qualify as R&D. Most projects for the development of a commercial product will go further than resolving technological uncertainties and so will not qualify as R&D in their entirety.”
Hence the job of an advisor is to analyse a large complex IT project and break down into its constituent elements, identifying those aspects which can be legitimate claims as well as those which cannot be claimed.
Software development in rapidly developing fields – qualifying or non-qualifying?
In fast developing fields such as Cloud Computing or Big Data, adapting state of the art tools / open-source products for use in an application may not be routine at the time that they were undertaken, even though by the time the claim is made (up to 3 years later), the use of such tools and products may well be widely established.
Software development using technology from a different domain – qualifying or non-qualifying?
Another difficulty faced in determining whether a project is qualifying R&D especially in fast moving fields is where the technology stack has been used previously but in a slightly different application. In the field of Big Data, we saw many early claims where the R&D level was low; simply moving a SQL database to a NoSQL database for a type of data analytics which had previously not been widely reported as using NoSQL databases.
Now that NoSQL has become an established technology to be considered a qualifying R&D project, there will likely to have to be some aspect of technical innovation beyond merely porting a database from a relational format to a schema-less format. We have recently successfully claimed NoSQL projects based on an advance in aspects such as deployment optimisation or security enhancement rather than merely being on the basis of using NoSQL.
Major Software / IT Technology Sectors in which we have claimed:
- Algorithms (Evolutionary and Genetic, Fuzzy Logic, Neural Networks, Graphical)
- BigData / NoSQL (Cassandra, Hadoop, MongoDB, Neo4j)
- Cloud Computing (Service Virtualisation, Microservices, Dynamic Deployment, Security)
- CMS Systems (Datastructures, Algorithms and Optimisations)
- Compliance Record Keeping (Training, Health & Safety, Pharmaceutical CFR21 part 11)
- Data Analytics / Data Visualisation (Hypercubes)
- E-Commerce Solutions (Faceted Search Algorithms)
- E-Health (NHS Spine, Telemedicine, N3 Security, Patient Records)
- ERP Systems (optimisation, visualisation, business logic and integration)
- Financial Transaction Processing (Payroll processing, Real-Time TOMS, Erlang)
- Gaming (GPU Optimisation, Algorithms, Gambling Regulation compliance)
- Geolocation / GIS Systems / Gazetteer Management Systems
- Image Processing (Algorithms, Optimisation, Visualisation)
- Mobile Workforce (Scheduling and Route Planning)
- SEO optimisation (Algorithms / Penguin update issues)
- Software Reliability and Testing (Fault Tree Analysis / FEMA)
- Text Messaging (Architectures, Charging Algorithms, Communications)
- Web Architectures (Real-Time Event Processing, Reactive Blocking Architectures)
- Wireless Sensor Networks (Data comms, Data Storage)