Using AI and Data Analysis in a Performance Audit to Determine Overlap Between Energy Efficiency Policies
Authors: Jaap Ligthart, Eline Lampers, Bing Steup, Marcus van Toor, Berrie Zielman, Netherlands Court of Audit1
Energy Efficiency Policies in the Netherlands
At the beginning of 2026, the Netherlands Court of Audit published a report on the use of taxpayers’ money to fund both voluntary and obligatory energy saving measures. To carry out the audit we relied heavily on AI to analyse the data and map the overlap between incentives and obligatory measures. In this article we explain how we approached the audit topic and the use we made of AI.
The cleanest form of energy, is energy that is never used. To this end, the Netherlands imposed an obligation on companies and non-profits that use more than 50,000 kWh of electricity and/or 25,000 m3 of natural gas per annum to invest in energy saving measures (energiebesparingsplicht). These businesses are obliged to take every energy saving measure that can be recouped within 5 years. Although this is a national policy, the Dutch government uses it to adhere to article 8 of the EU’s Energy Efficiency Directive on obligatory energy savings. The policy also supports Sustainable Development Goal 7 on renewable energy and energy efficiency.
In addition to this obligation, the government has introduced at least 17 grant schemes, tax schemes and other policy instruments to encourage companies and non-profits to invest in voluntary energy efficiency measures. These schemes range from direct financial incentives to tax breaks and free CO2 trading allowances. The government spent about €1.2 billion on these schemes in 2024, versus €15 million to enforce the energy saving obligation.
Given that both the incentives and the obligation are intended to encourage companies and non-profits to invest in energy saving measures, there is a risk of overlap. This could lead to the government paying companies to invest in energy saving measures they are already obliged to take, which would be an inefficient use of taxpayers’ money.

Audit Objectives
The audit objectives were to determine whether there was an overlap between the incentive schemes on the one hand and the energy saving obligation on the other in the period 2019-2024, and to determine the financial size of this potential overlap. Analysing overlap among the incentives themselves was not part of the audit. Given the number of policies, the number of grants and the number of obligatory and voluntary energy saving measures, we used AI and data analysis to complete this performance audit. We carried out our audit in 2024-2025, with the core of the AI analysis being performed in June-July 2024 using the tools available at the time. The audit was published in January 2026.2
Using AI and Data Analysis
To determine the overlap between the incentives and the obligatory energy saving measures we had to determine:
- whether there was an overlap between the incentives and the obligatory measures (supported by AI);
- how much money had been spent on measures that were also obligatory (data analysis);
- what proportion of that money had been received by companies and non-profits that were already obliged to take energy saving measures (data analysis).
Step 1: Matching Policies
The first step was to determine which measures in the 17 incentive schemes were obligatory. To do so, we used lists of obligatory measures and incentive measures. The government publishes a list of obligatory energy efficiency measures (Erkende Maatregelenlijst, or EML). This list contains hundreds of measures, broken down by healthcare, sport accommodations, industry, etc. Almost all companies subject to the obligation use the list to meet the obligation, although some exemptions are made. The list is updated every 4 years. Many of the incentive schemes had their own lists. These lists change every year and can contain hundreds of measures.
Most measures, on both the EML and the incentive lists, are explained in one or more pages of text describing the intended use, technical specifications, economic specifications, energy efficiency requirements, et cetera. Comparing the lists, for the period under review (2019-2024), would have been very time-consuming if done by hand. We therefore we used AI.

The first stage of any data analysis or AI project is to prepare and clean the data. In our case, the source files (i.e. the lists containing obligatory and voluntary energy saving measures) contained unstructured data (PDF files), and each policy used its own formatting conventions. The files describing the measures accordingly had to be converted into a usable structure for the AI, i.e. text files, using a unique parser. This approach is not scalable; it requires a different approach to each incentive and each year. We therefore limited the initial phase of our analysis to two relatively straightforward files and compared the EML with the EIA list for a particular year with respect to 1 category (e.g. metal industry).
After preprocessing, the data was submitted to OpenAI’s GPT-4o model. In essence, we provided the model with subsets of obligatory energy saving measures, for example 10 of the circa 500 EML 2019 measures. We then asked the AI to identify measures in a grant scheme that matched the descriptions of obligatory EML measures. During review, the team observed both accurate matches and clear false positives and negatives. Our analysis missed matches but also concluded that some obligatory measures did not actually match with grant schemes. A consistent issue was the model’s difficulty in interpreting what it meant to ‘match the perceived goal’. For example, EIA grants support ventilation to distribute warm air equally around a room. AI matched the EIA grants with an EML measure that also involved ventilation, but with the goal of removing polluted air. The AI likely matched it because the term ‘ventilation’ was used in both the EIA and the EML. However, the use of the technology was different.
Effective AI analysis relies heavily on the quality and specificity of the context. The broad spectrum of incentive schemes introduced substantial noise and unnecessary, irrelevant text. To address this, we added a step where the AI first filtered the voluntary measures based on their semantic relevance to each obligatory energy saving measure (for more information, see https://en.wikipedia.org/wiki/Semantic_search). Although this yielded better results, the improvements were marginal. Refining the prompts, the instructions we gave to the AI model, produced better results, but it became evident that we were approaching a performance ceiling. In the end, we refined the prompt to the one presented in figure 3, where we learned to specifically ask for structured output. Even after all these steps, the model could not consistently determine whether an incentive scheme was genuinely relevant to a particular obligatory measure. However, based on the rough findings (and manual checks), we identified 8 schemes which likely overlapped with the obligation.

Step 2: Matching the Cost of Incentives and the Cost of Obligatory Measures
Based on the matches found in step 1, in step 2 we used data from the ministries concerned to determine what part of the policy costs was spent on energy efficiency incentives that were actually obligatory (figure 4). This was not possible for 4 of the schemes due to poor data quality or for other reasons. We ended up with 4 schemes where the financial overlap could be quantified. The overlap ranged from €5.2 million in 2019 to a maximum of €51.4 million in 2023 (falling to €44.3 million in 2024). This is the absolute maximum of inefficiently used tax money identified in this audit.

Step 3: Incentives Paid to Companies and Non-profits Subject to Obligatory Measures
In our third and final step, we determined which of the energy efficiency incentives (established in step 2) were paid to companies subject to the national energy efficiency obligation. This proved difficult; the responsible ministry did not know which companies were obliged to take energy saving measures. Companies and non-profits have to report their obligation to take energy saving measures to local authorities, but only about 45% of the ca. 100,000 that are likely subject to the obligation actually do so. We matched their reports to the recipients of energy saving incentives. This produced an overlap of between €0.7 million (2019) and €9.5 million (2023). This is the absolute minimum financial overlap between the incentive measures and the energy efficiency obligation.
Results
The results of using AI and data analysis in this performance audit are twofold. On the one hand, this new audit method enabled is to answer our audit question: via grants and tax schemes, taxpayers’ money was spent on obligatory energy efficiency measures. Some of this money was used to support companies and non-profits subject to the energy efficiency obligation. However, compared to the total cost of the 17 energy efficiency incentives, €1.2 billion in 2024 alone, the inefficiency is relatively small (figure 5). This is the result of the respective ministries actively trying to prevent their supplementary policies from overlapping with the energy efficiency obligation.

On the other hand, this new method taught us about the use of AI in audit. It turned out to be challenging for a large language model (LLM) to consistently match the incentives with the obligatory measures. This could be due to the fact that the main quality of an LLM lies in generating texts and not in accuracy, especially when it comes to numbers. More importantly, running the same model with the same values results in different responses, making it impossible to reproduce the results. This represents a challenge, especially for audit institutions. In the end, the AI output was a good starting point but a thorough manual check remained necessary.
In retrospect, several aspects of our approach could have been improved. Even after data cleansing to improve comparability, too much noise remained, resulting in the need for manual inspection of the model’s results. A more effective strategy would have been to evaluate each obligation/incentive pair individually and request a relevance score accompanied by an explanation, rather than a binary decision. Additionally, our initial question was overly broad and provided little guidance for the model to come up with useful suggestions of matches. Large language models are generalists and we should have provided more explicit definitions and examples of what we meant by ‘matching the measures’. All these extra steps increase the time investment needed to make this approach a success. Despite these limitations, the exercise was highly valuable; it provided a starting point for our final analysis. It enabled the team to clarify its requirements and created a platform for future AI analysis projects at the Netherlands Court of Audit.
AI models have improved since our initial analysis. Current models may therefore be able to perform the tasks needed for our audit objectives. If other SAIs are intending to use AI in future audits, or have already done so, we would like to hear from them.
Footnotes
- Jaap Ligthart: project lead and auditor. Eline Lampers: data expert and auditor. Bing Steup: AI expert. Marcus van Toor: auditor. Berrie Zielman: data expert. ↩︎
- https://english.rekenkamer.nl/latest/news/2026/01/15/very-limited-overlap-between-energy saving-obligation-and-financial-incentives. ↩︎