From 4b25d4bb7b8f9754a5214ad88f2ecd6ccd96ae4a Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:15:55 +0000 Subject: [PATCH 01/16] Add JOSS paper and bibliography for submission Co-Authored-By: Claude Opus 4.6 --- paper.bib | 62 +++++++++++++++++++++++++++++++++++++++ paper.md | 87 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 149 insertions(+) create mode 100644 paper.bib create mode 100644 paper.md diff --git a/paper.bib b/paper.bib new file mode 100644 index 000000000..b4e036849 --- /dev/null +++ b/paper.bib @@ -0,0 +1,62 @@ +@article{sutherland2014euromod, + title={{EUROMOD}: the {European Union} tax-benefit microsimulation model}, + author={Sutherland, Holly and Figari, Francesco}, + journal={International Journal of Microsimulation}, + volume={6}, + number={1}, + pages={4--26}, + year={2013}, + doi={10.34196/ijm.00075} +} + +@software{openfisca, + title={{OpenFisca}: Open Rules as Code for Tax-Benefit Systems}, + author={{OpenFisca Contributors}}, + url={https://openfisca.org}, + year={2024} +} + +@software{policyengine_core, + title={{PolicyEngine Core}: A Microsimulation Framework}, + author={Woodruff, Nikhil and Ghenis, Max and Volk, Anthony}, + url={https://github.com/PolicyEngine/policyengine-core}, + year={2024} +} + +@misc{frs2020, + title={Family Resources Survey, 2019-2020}, + author={{Department for Work and Pensions} and {Office for National Statistics} and {NatCen Social Research}}, + year={2021}, + publisher={UK Data Service}, + note={SN: 8802}, + doi={10.5255/UKDA-SN-8802-1} +} + +@misc{hansard2026nic, + title={National Insurance Contributions (Employer Pensions Contributions) Bill -- Grand Committee}, + author={{House of Lords}}, + year={2026}, + month={2}, + day={24}, + note={Hansard, GC 371--372. Baroness Altmann citing PolicyEngine and its interactive dashboard for distributional analysis of pension contribution reforms}, + url={https://hansard.parliament.uk/Lords/2026-02-24/debates/A381F7D6-0A3C-48FD-8D9E-67751E25877A/NationalInsuranceContributions(EmployerPensionsContributions)Bill} +} + +@techreport{niesr2025living, + title={{UK} Living Standards Review 2025}, + author={Mosley, Max and Wattam, Ryan and Vincent, Carol}, + institution={National Institute of Economic and Social Research}, + year={2025}, + url={https://niesr.ac.uk/publications/uk-living-standards-review-2025} +} + +@online{ghenis2026no10, + title={{PolicyEngine} powers rapid policy analysis at {No 10 Downing Street}}, + author={Ghenis, Max}, + year={2026}, + month={1}, + day={20}, + url={https://policyengine.org/uk/research/policyengine-no-10-downing-street}, + urldate={2026-03-19} +} + diff --git a/paper.md b/paper.md new file mode 100644 index 000000000..c1d79a757 --- /dev/null +++ b/paper.md @@ -0,0 +1,87 @@ +--- +title: "PolicyEngine UK: An Open-Source Microsimulation Model of the UK Tax-Benefit System" +tags: + - Python + - microsimulation + - tax + - benefit + - public policy + - United Kingdom +authors: + - name: Max Ghenis + orcid: 0000-0000-0000-0000 + affiliation: 1 + - name: Nikhil Woodruff + orcid: 0000-0000-0000-0000 + affiliation: 1 + - name: Vahid Ahmadi + orcid: 0000-0000-0000-0000 + affiliation: 1 + corresponding: true +affiliations: + - name: PolicyEngine + index: 1 +date: 19 March 2026 +bibliography: paper.bib +--- + +# Summary + +PolicyEngine UK is an open-source microsimulation model of the United Kingdom's tax-benefit system, implemented in Python. It calculates variable values over UK entities from given policy parameters and structures, supporting two primary uses: computing statistics under current tax and benefit law, and simulating the effects of potential legislative changes. The model covers over 37 programmes administered by UK government agencies including HM Revenue & Customs (HMRC), the Department for Work and Pensions (DWP), the Department for Education (DfE), Revenue Scotland, and Social Security Scotland. PolicyEngine UK supports both individual household simulations via the `Simulation` class and population-wide microsimulations via the `Microsimulation` class, which incorporates survey weights from the Enhanced Family Resources Survey 2022-23 [@frs2020] to generate population-level estimates. + +# Statement of Need + +Tax-benefit microsimulation models are essential tools for evaluating the distributional impacts of fiscal policy. Governments, think tanks, and researchers rely on such models to estimate how policy reforms affect household incomes, poverty rates, and government budgets. In the UK, existing microsimulation models such as UKMOD [@sutherland2014euromod] and the IPPR Tax-Benefit Model are either restricted-access or proprietary, limiting transparency and reproducibility in policy analysis. + +PolicyEngine UK addresses this gap by providing a fully open-source, publicly accessible microsimulation model. Researchers can install the package with `pip install policyengine-uk`, supply their own microdata, and compute the impact of current law or hypothetical policy reforms on any household or the full UK population. For example, a single household simulation for a 30-year-old earning £30,000 returns an income tax liability of £3,486, and applying a reform that increases the basic rate from 20% to 25% shows an additional £871.50 in annual tax. At the population level, the `Microsimulation` class enables aggregate analysis — such as estimating total Universal Credit spending at approximately £79.4 billion — using the Enhanced FRS dataset with calibrated weights. The model's open development on GitHub enables external validation, community contributions, and reproducible policy analysis. + +# State of the Field + +The primary UK microsimulation models include UKMOD, maintained by the University of Essex as part of the EUROMOD family [@sutherland2014euromod], and models maintained internally by HM Treasury and the Institute for Fiscal Studies. UKMOD provides comprehensive coverage of the UK tax-benefit system but requires institutional access and uses a bespoke modelling language. OpenFisca [@openfisca] pioneered the open-source approach to tax-benefit microsimulation in France, and PolicyEngine UK builds on this foundation through the PolicyEngine Core framework [@policyengine_core]. We acknowledge the UKMOD team at the Institute for Social and Economic Research (ISER), University of Essex, for their contributions to model descriptions that informed the development of PolicyEngine UK. + +PolicyEngine UK differentiates itself in several ways: + +- **Fully open-source and pip-installable**: users can install and run the model without institutional access or licence fees. +- **Comprehensive programme coverage**: 37 modelled programmes spanning income tax, National Insurance, Universal Credit, Child Benefit, Council Tax, and devolved policies in Scotland and Wales. +- **Integration with the PolicyEngine web application**: the model powers an interactive web interface at [policyengine.org](https://policyengine.org) that allows non-technical users to explore policy reforms. +- **Programmatic reform and scenario API**: users can define hypothetical policy reforms as simple parameter dictionaries, compose multiple scenarios with the `+` operator, or implement structural changes via simulation modifiers — and evaluate their impact on any household or the full population. +- **Labour supply dynamics**: a behavioural response module implements the Office for Budget Responsibility's labour supply elasticity framework, modelling both intensive margin (hours adjustment) and extensive margin (participation) responses to policy changes. +- **Enhanced microdata**: the model supports dataset fusion and calibration to align survey microdata with administrative totals across multiple dimensions. + +# Software Design + +PolicyEngine UK is built on the PolicyEngine Core framework, which extends the OpenFisca microsimulation engine. The model is organised into three main components: + +**Parameters** define the rates, thresholds, and other numeric values of the tax-benefit system. These are stored as YAML files organised by government department (e.g., `parameters/gov/hmrc/` for HMRC policies) and indexed by time period, enabling the model to represent legislative changes over time. Parameters are addressed via hierarchical paths such as `gov.hmrc.income_tax.rates.uk[0].rate` for the basic income tax rate or `gov.dwp.universal_credit.standard_allowance.single.OVER_25` for Universal Credit allowances. + +**Variables** define the formulas that compute tax liabilities, benefit entitlements, and other derived quantities. Each variable is implemented as a Python class that specifies its computation logic, the entity it applies to (person, benefit unit, or household), and its time period. The model contains over 700 variable definitions covering the full scope of the UK tax-benefit system. + +**Reforms and Scenarios** allow users to modify parameters or variable formulas to represent hypothetical policy changes. Simple reforms can be expressed as dictionaries mapping parameter paths to new values, while the `Scenario` class supports composable reforms, time-varying parameters for phased implementation across multiple years, and simulation modifiers for complex structural changes such as repealing the two-child benefit limit. Scenarios apply policy changes without modifying the original simulation, enabling straightforward baseline-versus-reform comparison. + +The model supports two input modes. The `Simulation` class accepts programmatically defined household situations — specifying ages, incomes, housing costs, and household composition — for individual-level analysis. The `Microsimulation` class loads population-level survey microdata (the Enhanced FRS 2022-23, hosted on HuggingFace) with calibrated weights, enabling computation of aggregate statistics including poverty rates, inequality metrics, and budgetary impacts. Revenue impacts are computed via the accounting identity: when household net income decreases under a reform, government revenue increases by the equivalent amount. + +The dynamics module extends the static microsimulation with labour supply behavioural responses. It applies group-specific substitution elasticities (ranging from 0.14 to 0.30) and income elasticities (ranging from −0.185 to 0) based on OBR estimates, computing individual-level employment income adjustments and aggregate full-time equivalent (FTE) employment changes. + +All code examples in the documentation are automatically re-executed with each new release to ensure correctness. + +# Research Impact Statement + +PolicyEngine UK has demonstrated significant research impact through direct adoption in government. In 2025–2026, co-author Nikhil Woodruff served as an Innovation Fellow with 10DS — the data science team at 10 Downing Street — adapting PolicyEngine UK's microsimulation technology for government use [@ghenis2026no10]. The 10DS team built a package called `10ds-microsim` on top of PolicyEngine UK to rapidly estimate the impacts of policy reforms on living standards, local area incomes, and distributional outcomes. The tool was intensively validated against external projections and official forecasts before being deployed to provide supplementary analysis to decision-makers during fast-moving policy discussions. + +Government analysts selected PolicyEngine UK as their foundation because of its modern Python codebase accessible to civil service data scientists, its novel machine learning-based imputation and calibration methods that align survey estimates with administrative totals, its comprehensive coverage of the UK tax-benefit system (including recent additions such as the surcharge on properties over £2 million, private school VAT changes, and Capital Gains Tax reforms), and its geographic analysis capabilities down to local authority level — developed with support from the Nuffield Foundation. + +The National Institute of Economic and Social Research (NIESR) used PolicyEngine in their UK Living Standards Review 2025, acknowledging "the expertise and generosity of Nikhil Woodruff and Vahid Ahmadi in helping us maximise the benefits of using PolicyEngine" [@niesr2025living]. PolicyEngine UK has also been cited in parliamentary proceedings. In February 2026, Baroness Altmann referenced PolicyEngine and its interactive dashboard during House of Lords Grand Committee debate on the National Insurance Contributions (Employer Pensions Contributions) Bill, noting that Commons Library research using PolicyEngine provided "a useful picture of the distributional effects of raising the contribution limit" across income deciles [@hansard2026nic]. + +Beyond government adoption, the PolicyEngine web platform powered by this model is used by researchers, think tanks, journalists, and members of the public to analyse policy reforms. The open-source model has attracted contributions from over 25 developers and has been iteratively developed since 2021, with over 2,700 commits and regular tagged releases. The project uses continuous integration, automated testing, and comprehensive documentation including Jupyter notebook tutorials covering programme-specific validation against administrative data (e.g., HBAI comparisons). + +# Acknowledgements + +This work was supported by the Nuffield Foundation since December 2024. The Nuffield Foundation had no involvement in the design, development, or content of this software or paper. + +We acknowledge contributions from all PolicyEngine UK contributors, and thank the OpenFisca community for the foundational microsimulation framework. We acknowledge the UKMOD team at the Institute for Social and Economic Research (ISER), University of Essex, for their contributions to model descriptions. We also acknowledge the UK Data Service and the Department for Work and Pensions for providing access to the Family Resources Survey. + +# AI Usage Disclosure + +Generative AI tools (Claude by Anthropic, 2024–2026) were used to assist with code refactoring, test scaffolding, and drafting of this paper. All AI-assisted outputs were reviewed, edited, and validated by human authors, who made all core design decisions regarding software architecture, policy modelling, and parameter implementation. The authors remain fully responsible for the accuracy, originality, and correctness of all submitted materials. + +# References From f3a7b6f391b14fa6f7691800e027209fa225b771 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:17:49 +0000 Subject: [PATCH 02/16] Add changelog entry for JOSS paper Co-Authored-By: Claude Opus 4.6 --- changelog.d/joss-paper.added.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog.d/joss-paper.added.md diff --git a/changelog.d/joss-paper.added.md b/changelog.d/joss-paper.added.md new file mode 100644 index 000000000..95a2b9b2c --- /dev/null +++ b/changelog.d/joss-paper.added.md @@ -0,0 +1 @@ +Added JOSS paper (paper.md and paper.bib) for submission to the Journal of Open Source Software. From 3734b530e9ce97cd196a7625d648bbda2b79e562 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:28:26 +0000 Subject: [PATCH 03/16] Add HM Treasury, INET Oxford, IEA, and Nuffield citations to JOSS paper Co-Authored-By: Claude Opus 4.6 --- paper.bib | 45 +++++++++++++++++++++++++++++++++++++++++++++ paper.md | 14 +++++++++----- 2 files changed, 54 insertions(+), 5 deletions(-) diff --git a/paper.bib b/paper.bib index b4e036849..3e3da5e6d 100644 --- a/paper.bib +++ b/paper.bib @@ -60,3 +60,48 @@ @online{ghenis2026no10 urldate={2026-03-19} } +@misc{hmt2024atrs, + title={{HMT}: {PolicyEngine UK} -- Algorithmic Transparency Recording Standard}, + author={{HM Treasury}}, + year={2024}, + month={12}, + day={17}, + note={ATRS v3.0. HM Treasury Personal Tax, Welfare and Pensions team exploring PolicyEngine UK for advising policymakers on the impact of tax and welfare measures on households}, + url={https://www.gov.uk/algorithmic-transparency-records/hmt-modelling-policy-engine} +} + +@article{youngman2026carbon, + title={Agent-based macroeconomics for the {UK}'s {Seventh Carbon Budget}}, + author={Youngman, Tom and Lennox, Tim and Lopes Alves, M. and Palola, Pirta and Tankwa, Brendon and Bailey, Emma and Ravigne, Emilien and Ter Horst, Thijs and Wagenvoort, Benjamin and Lightfoot Brown, Harry and Moran, Jose and Farmer, Doyne}, + year={2026}, + eprint={2602.15607}, + archiveprefix={arXiv}, + primaryclass={econ.GN}, + url={https://arxiv.org/abs/2602.15607} +} + +@techreport{woodruff2024nic, + title={Raising employer {NIC} in the {Autumn Budget}}, + author={Woodruff, Nikhil}, + institution={Institute of Economic Affairs}, + year={2024}, + month={10}, + url={https://iea.org.uk/publications/raising-employer-nic-in-the-autumn-budget/} +} + +@techreport{woodruff2025tax, + title={Impact of Tax Changes 2025--2026}, + author={Woodruff, Nikhil}, + institution={Institute of Economic Affairs}, + year={2025}, + month={3}, + url={https://iea.org.uk/publications/impact-of-tax-changes-2025-2026/} +} + +@misc{nuffield2024grant, + title={Enhancing, localising and democratising tax-benefit policy analysis}, + author={{Nuffield Foundation}}, + year={2024}, + note={General Election Analysis and Briefing Fund grant to PolicyEngine}, + url={https://www.nuffieldfoundation.org/project/enhancing-localising-and-democratising-tax-benefit-policy-analysis} +} diff --git a/paper.md b/paper.md index c1d79a757..683ad7f0f 100644 --- a/paper.md +++ b/paper.md @@ -66,17 +66,21 @@ All code examples in the documentation are automatically re-executed with each n # Research Impact Statement -PolicyEngine UK has demonstrated significant research impact through direct adoption in government. In 2025–2026, co-author Nikhil Woodruff served as an Innovation Fellow with 10DS — the data science team at 10 Downing Street — adapting PolicyEngine UK's microsimulation technology for government use [@ghenis2026no10]. The 10DS team built a package called `10ds-microsim` on top of PolicyEngine UK to rapidly estimate the impacts of policy reforms on living standards, local area incomes, and distributional outcomes. The tool was intensively validated against external projections and official forecasts before being deployed to provide supplementary analysis to decision-makers during fast-moving policy discussions. +PolicyEngine UK has demonstrated research impact across government, academia, and policy research. -Government analysts selected PolicyEngine UK as their foundation because of its modern Python codebase accessible to civil service data scientists, its novel machine learning-based imputation and calibration methods that align survey estimates with administrative totals, its comprehensive coverage of the UK tax-benefit system (including recent additions such as the surcharge on properties over £2 million, private school VAT changes, and Capital Gains Tax reforms), and its geographic analysis capabilities down to local authority level — developed with support from the Nuffield Foundation. +**Government adoption.** In 2025–2026, co-author Nikhil Woodruff served as an Innovation Fellow with 10DS — the data science team at 10 Downing Street — adapting PolicyEngine UK for government use [@ghenis2026no10]. The 10DS team built `10ds-microsim` on top of PolicyEngine UK to rapidly estimate the impacts of policy reforms on living standards, local area incomes, and distributional outcomes. HM Treasury has also formally documented PolicyEngine UK in the UK Algorithmic Transparency Recording Standard, describing it as a model their Personal Tax, Welfare and Pensions team is exploring for "advising policymakers on the impact of tax and welfare measures on households" [@hmt2024atrs]. -The National Institute of Economic and Social Research (NIESR) used PolicyEngine in their UK Living Standards Review 2025, acknowledging "the expertise and generosity of Nikhil Woodruff and Vahid Ahmadi in helping us maximise the benefits of using PolicyEngine" [@niesr2025living]. PolicyEngine UK has also been cited in parliamentary proceedings. In February 2026, Baroness Altmann referenced PolicyEngine and its interactive dashboard during House of Lords Grand Committee debate on the National Insurance Contributions (Employer Pensions Contributions) Bill, noting that Commons Library research using PolicyEngine provided "a useful picture of the distributional effects of raising the contribution limit" across income deciles [@hansard2026nic]. +**Academic research.** Youngman et al. [@youngman2026carbon] cite PolicyEngine UK's methodology in their agent-based macroeconomic model for the UK's Seventh Carbon Budget, developed at the Institute for New Economic Thinking at Oxford in partnership with the Department for Energy Security and Net Zero, noting that "the PolicyEngine microsimulation model addresses undersampling of rich households by using the Wealth and Assets Survey to impute additional wealth households into the Family Resources Survey." -Beyond government adoption, the PolicyEngine web platform powered by this model is used by researchers, think tanks, journalists, and members of the public to analyse policy reforms. The open-source model has attracted contributions from over 25 developers and has been iteratively developed since 2021, with over 2,700 commits and regular tagged releases. The project uses continuous integration, automated testing, and comprehensive documentation including Jupyter notebook tutorials covering programme-specific validation against administrative data (e.g., HBAI comparisons). +**Policy research.** The National Institute of Economic and Social Research (NIESR) used PolicyEngine in their UK Living Standards Review 2025, acknowledging "the expertise and generosity of Nikhil Woodruff and Vahid Ahmadi in helping us maximise the benefits of using PolicyEngine" [@niesr2025living]. The Institute of Economic Affairs has published reports using PolicyEngine's microsimulation model to analyse employer National Insurance contributions [@woodruff2024nic] and the distributional impact of 2025–2026 tax changes on UK households [@woodruff2025tax]. + +**Parliamentary citation.** In February 2026, Baroness Altmann referenced PolicyEngine and its interactive dashboard during House of Lords Grand Committee debate on the National Insurance Contributions (Employer Pensions Contributions) Bill, noting that Commons Library research using PolicyEngine provided "a useful picture of the distributional effects of raising the contribution limit" across income deciles [@hansard2026nic]. + +The open-source model has attracted contributions from over 25 developers and has been iteratively developed since 2021, with over 2,700 commits and regular tagged releases. The project uses continuous integration, automated testing, and comprehensive documentation including Jupyter notebook tutorials covering programme-specific validation against administrative data (e.g., HBAI comparisons). # Acknowledgements -This work was supported by the Nuffield Foundation since December 2024. The Nuffield Foundation had no involvement in the design, development, or content of this software or paper. +This work was supported by the Nuffield Foundation since December 2024 [@nuffield2024grant]. The Nuffield Foundation had no involvement in the design, development, or content of this software or paper. We acknowledge contributions from all PolicyEngine UK contributors, and thank the OpenFisca community for the foundational microsimulation framework. We acknowledge the UKMOD team at the Institute for Social and Economic Research (ISER), University of Essex, for their contributions to model descriptions. We also acknowledge the UK Data Service and the Department for Work and Pensions for providing access to the Family Resources Survey. From 7d7de4694815cbe614c2bd8660622e1e4f043595 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:29:32 +0000 Subject: [PATCH 04/16] Fix Nuffield Foundation grant start date to September 2024 Co-Authored-By: Claude Opus 4.6 --- paper.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/paper.md b/paper.md index 683ad7f0f..351c67f33 100644 --- a/paper.md +++ b/paper.md @@ -80,7 +80,7 @@ The open-source model has attracted contributions from over 25 developers and ha # Acknowledgements -This work was supported by the Nuffield Foundation since December 2024 [@nuffield2024grant]. The Nuffield Foundation had no involvement in the design, development, or content of this software or paper. +This work was supported by the Nuffield Foundation since September 2024 [@nuffield2024grant]. The Nuffield Foundation had no involvement in the design, development, or content of this software or paper. We acknowledge contributions from all PolicyEngine UK contributors, and thank the OpenFisca community for the foundational microsimulation framework. We acknowledge the UKMOD team at the Institute for Social and Economic Research (ISER), University of Essex, for their contributions to model descriptions. We also acknowledge the UK Data Service and the Department for Work and Pensions for providing access to the Family Resources Survey. From b728eace541316a7c4ed841d34350bb0c32d79df Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:30:05 +0000 Subject: [PATCH 05/16] Add citation for Claude (Anthropic) in AI Usage Disclosure Co-Authored-By: Claude Opus 4.6 --- paper.bib | 7 +++++++ paper.md | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/paper.bib b/paper.bib index 3e3da5e6d..f5d4efa34 100644 --- a/paper.bib +++ b/paper.bib @@ -98,6 +98,13 @@ @techreport{woodruff2025tax url={https://iea.org.uk/publications/impact-of-tax-changes-2025-2026/} } +@software{claude2025, + title={Claude}, + author={{Anthropic}}, + year={2025}, + url={https://www.anthropic.com/claude} +} + @misc{nuffield2024grant, title={Enhancing, localising and democratising tax-benefit policy analysis}, author={{Nuffield Foundation}}, diff --git a/paper.md b/paper.md index 351c67f33..e7033068a 100644 --- a/paper.md +++ b/paper.md @@ -86,6 +86,6 @@ We acknowledge contributions from all PolicyEngine UK contributors, and thank th # AI Usage Disclosure -Generative AI tools (Claude by Anthropic, 2024–2026) were used to assist with code refactoring, test scaffolding, and drafting of this paper. All AI-assisted outputs were reviewed, edited, and validated by human authors, who made all core design decisions regarding software architecture, policy modelling, and parameter implementation. The authors remain fully responsible for the accuracy, originality, and correctness of all submitted materials. +Generative AI tools (Claude by Anthropic, 2024–2026 [@claude2025]) were used to assist with code refactoring, test scaffolding, and drafting of this paper. All AI-assisted outputs were reviewed, edited, and validated by human authors, who made all core design decisions regarding software architecture, policy modelling, and parameter implementation. The authors remain fully responsible for the accuracy, originality, and correctness of all submitted materials. # References From 5efd41a479b9c53ab811c3a16cf2ce7b70e4df5c Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:30:52 +0000 Subject: [PATCH 06/16] Fix UKMOD and OpenFisca descriptions to match repo's own docs Co-Authored-By: Claude Opus 4.6 --- paper.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/paper.md b/paper.md index e7033068a..855eb655f 100644 --- a/paper.md +++ b/paper.md @@ -37,7 +37,7 @@ PolicyEngine UK addresses this gap by providing a fully open-source, publicly ac # State of the Field -The primary UK microsimulation models include UKMOD, maintained by the University of Essex as part of the EUROMOD family [@sutherland2014euromod], and models maintained internally by HM Treasury and the Institute for Fiscal Studies. UKMOD provides comprehensive coverage of the UK tax-benefit system but requires institutional access and uses a bespoke modelling language. OpenFisca [@openfisca] pioneered the open-source approach to tax-benefit microsimulation in France, and PolicyEngine UK builds on this foundation through the PolicyEngine Core framework [@policyengine_core]. We acknowledge the UKMOD team at the Institute for Social and Economic Research (ISER), University of Essex, for their contributions to model descriptions that informed the development of PolicyEngine UK. +The primary UK microsimulation models include UKMOD, maintained by the Centre for Microsimulation and Policy Analysis at the Institute for Social and Economic Research (ISER), University of Essex, as part of the EUROMOD family [@sutherland2014euromod], and models maintained internally by HM Treasury and the Institute for Fiscal Studies. OpenFisca [@openfisca] pioneered the open-source approach to tax-benefit microsimulation in France. PolicyEngine UK originated as OpenFisca UK and builds on this foundation through the PolicyEngine Core framework [@policyengine_core]. The UKMOD team's published model descriptions accelerated the early development of the model. PolicyEngine UK differentiates itself in several ways: From 917b40c92d0a2da14d009eef63f3259c8b3adf6f Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:31:44 +0000 Subject: [PATCH 07/16] Remove specific numeric examples from Statement of Need Co-Authored-By: Claude Opus 4.6 --- paper.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/paper.md b/paper.md index 855eb655f..3e2f84d9d 100644 --- a/paper.md +++ b/paper.md @@ -33,7 +33,7 @@ PolicyEngine UK is an open-source microsimulation model of the United Kingdom's Tax-benefit microsimulation models are essential tools for evaluating the distributional impacts of fiscal policy. Governments, think tanks, and researchers rely on such models to estimate how policy reforms affect household incomes, poverty rates, and government budgets. In the UK, existing microsimulation models such as UKMOD [@sutherland2014euromod] and the IPPR Tax-Benefit Model are either restricted-access or proprietary, limiting transparency and reproducibility in policy analysis. -PolicyEngine UK addresses this gap by providing a fully open-source, publicly accessible microsimulation model. Researchers can install the package with `pip install policyengine-uk`, supply their own microdata, and compute the impact of current law or hypothetical policy reforms on any household or the full UK population. For example, a single household simulation for a 30-year-old earning £30,000 returns an income tax liability of £3,486, and applying a reform that increases the basic rate from 20% to 25% shows an additional £871.50 in annual tax. At the population level, the `Microsimulation` class enables aggregate analysis — such as estimating total Universal Credit spending at approximately £79.4 billion — using the Enhanced FRS dataset with calibrated weights. The model's open development on GitHub enables external validation, community contributions, and reproducible policy analysis. +PolicyEngine UK addresses this gap by providing a fully open-source, publicly accessible microsimulation model. Researchers can install the package with `pip install policyengine-uk`, supply their own microdata, and compute the impact of current law or hypothetical policy reforms on any household or the full UK population. The `Simulation` class supports individual household analysis, while the `Microsimulation` class enables population-level aggregate analysis using the Enhanced FRS dataset with calibrated weights. The model's open development on GitHub enables external validation, community contributions, and reproducible policy analysis. # State of the Field From c11c4e4ab33c50b871baae8e7f52eafc5e59fc47 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:33:04 +0000 Subject: [PATCH 08/16] Reference policyengine-uk-data repository for microdata Co-Authored-By: Claude Opus 4.6 --- paper.bib | 7 +++++++ paper.md | 6 +++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/paper.bib b/paper.bib index f5d4efa34..fd84f83a9 100644 --- a/paper.bib +++ b/paper.bib @@ -23,6 +23,13 @@ @software{policyengine_core year={2024} } +@software{pe_uk_data, + title={{PolicyEngine UK Data}: Enhanced Microdata for UK Tax-Benefit Microsimulation}, + author={Woodruff, Nikhil and Ghenis, Max and Ahmadi, Vahid}, + url={https://github.com/PolicyEngine/policyengine-uk-data}, + year={2025} +} + @misc{frs2020, title={Family Resources Survey, 2019-2020}, author={{Department for Work and Pensions} and {Office for National Statistics} and {NatCen Social Research}}, diff --git a/paper.md b/paper.md index 3e2f84d9d..b944d152e 100644 --- a/paper.md +++ b/paper.md @@ -27,13 +27,13 @@ bibliography: paper.bib # Summary -PolicyEngine UK is an open-source microsimulation model of the United Kingdom's tax-benefit system, implemented in Python. It calculates variable values over UK entities from given policy parameters and structures, supporting two primary uses: computing statistics under current tax and benefit law, and simulating the effects of potential legislative changes. The model covers over 37 programmes administered by UK government agencies including HM Revenue & Customs (HMRC), the Department for Work and Pensions (DWP), the Department for Education (DfE), Revenue Scotland, and Social Security Scotland. PolicyEngine UK supports both individual household simulations via the `Simulation` class and population-wide microsimulations via the `Microsimulation` class, which incorporates survey weights from the Enhanced Family Resources Survey 2022-23 [@frs2020] to generate population-level estimates. +PolicyEngine UK is an open-source microsimulation model of the United Kingdom's tax-benefit system, implemented in Python. It calculates variable values over UK entities from given policy parameters and structures, supporting two primary uses: computing statistics under current tax and benefit law, and simulating the effects of potential legislative changes. The model covers over 37 programmes administered by UK government agencies including HM Revenue & Customs (HMRC), the Department for Work and Pensions (DWP), the Department for Education (DfE), Revenue Scotland, and Social Security Scotland. PolicyEngine UK supports both individual household simulations via the `Simulation` class and population-wide microsimulations via the `Microsimulation` class, which incorporates survey weights from the Enhanced Family Resources Survey, prepared and published in the companion `policyengine-uk-data` repository [@pe_uk_data], to generate population-level estimates. # Statement of Need Tax-benefit microsimulation models are essential tools for evaluating the distributional impacts of fiscal policy. Governments, think tanks, and researchers rely on such models to estimate how policy reforms affect household incomes, poverty rates, and government budgets. In the UK, existing microsimulation models such as UKMOD [@sutherland2014euromod] and the IPPR Tax-Benefit Model are either restricted-access or proprietary, limiting transparency and reproducibility in policy analysis. -PolicyEngine UK addresses this gap by providing a fully open-source, publicly accessible microsimulation model. Researchers can install the package with `pip install policyengine-uk`, supply their own microdata, and compute the impact of current law or hypothetical policy reforms on any household or the full UK population. The `Simulation` class supports individual household analysis, while the `Microsimulation` class enables population-level aggregate analysis using the Enhanced FRS dataset with calibrated weights. The model's open development on GitHub enables external validation, community contributions, and reproducible policy analysis. +PolicyEngine UK addresses this gap by providing a fully open-source, publicly accessible microsimulation model. Researchers can install the package with `pip install policyengine-uk`, supply their own microdata, and compute the impact of current law or hypothetical policy reforms on any household or the full UK population. The `Simulation` class supports individual household analysis, while the `Microsimulation` class enables population-level aggregate analysis using Enhanced FRS datasets from the `policyengine-uk-data` repository [@pe_uk_data] with calibrated weights. The model's open development on GitHub enables external validation, community contributions, and reproducible policy analysis. # State of the Field @@ -58,7 +58,7 @@ PolicyEngine UK is built on the PolicyEngine Core framework, which extends the O **Reforms and Scenarios** allow users to modify parameters or variable formulas to represent hypothetical policy changes. Simple reforms can be expressed as dictionaries mapping parameter paths to new values, while the `Scenario` class supports composable reforms, time-varying parameters for phased implementation across multiple years, and simulation modifiers for complex structural changes such as repealing the two-child benefit limit. Scenarios apply policy changes without modifying the original simulation, enabling straightforward baseline-versus-reform comparison. -The model supports two input modes. The `Simulation` class accepts programmatically defined household situations — specifying ages, incomes, housing costs, and household composition — for individual-level analysis. The `Microsimulation` class loads population-level survey microdata (the Enhanced FRS 2022-23, hosted on HuggingFace) with calibrated weights, enabling computation of aggregate statistics including poverty rates, inequality metrics, and budgetary impacts. Revenue impacts are computed via the accounting identity: when household net income decreases under a reform, government revenue increases by the equivalent amount. +The model supports two input modes. The `Simulation` class accepts programmatically defined household situations — specifying ages, incomes, housing costs, and household composition — for individual-level analysis. The `Microsimulation` class loads population-level survey microdata from the `policyengine-uk-data` repository [@pe_uk_data] with calibrated weights, enabling computation of aggregate statistics including poverty rates, inequality metrics, and budgetary impacts. Revenue impacts are computed via the accounting identity: when household net income decreases under a reform, government revenue increases by the equivalent amount. The dynamics module extends the static microsimulation with labour supply behavioural responses. It applies group-specific substitution elasticities (ranging from 0.14 to 0.30) and income elasticities (ranging from −0.185 to 0) based on OBR estimates, computing individual-level employment income adjustments and aggregate full-time equivalent (FTE) employment changes. From 02bcd1d61af5425994971f7fdb6e3afc7801f074 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:33:37 +0000 Subject: [PATCH 09/16] Remove specific elasticity numbers from dynamics description Co-Authored-By: Claude Opus 4.6 --- paper.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/paper.md b/paper.md index b944d152e..a3705c297 100644 --- a/paper.md +++ b/paper.md @@ -60,7 +60,7 @@ PolicyEngine UK is built on the PolicyEngine Core framework, which extends the O The model supports two input modes. The `Simulation` class accepts programmatically defined household situations — specifying ages, incomes, housing costs, and household composition — for individual-level analysis. The `Microsimulation` class loads population-level survey microdata from the `policyengine-uk-data` repository [@pe_uk_data] with calibrated weights, enabling computation of aggregate statistics including poverty rates, inequality metrics, and budgetary impacts. Revenue impacts are computed via the accounting identity: when household net income decreases under a reform, government revenue increases by the equivalent amount. -The dynamics module extends the static microsimulation with labour supply behavioural responses. It applies group-specific substitution elasticities (ranging from 0.14 to 0.30) and income elasticities (ranging from −0.185 to 0) based on OBR estimates, computing individual-level employment income adjustments and aggregate full-time equivalent (FTE) employment changes. +The dynamics module extends the static microsimulation with labour supply behavioural responses. It applies group-specific substitution and income elasticities based on OBR estimates, computing individual-level employment income adjustments and aggregate full-time equivalent (FTE) employment changes. All code examples in the documentation are automatically re-executed with each new release to ensure correctness. From bf2e8c38f5fceec3874f277039246ce823c0ad08 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:34:02 +0000 Subject: [PATCH 10/16] Move Parliamentary citation after Government adoption Co-Authored-By: Claude Opus 4.6 --- paper.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/paper.md b/paper.md index a3705c297..0178d1860 100644 --- a/paper.md +++ b/paper.md @@ -70,12 +70,12 @@ PolicyEngine UK has demonstrated research impact across government, academia, an **Government adoption.** In 2025–2026, co-author Nikhil Woodruff served as an Innovation Fellow with 10DS — the data science team at 10 Downing Street — adapting PolicyEngine UK for government use [@ghenis2026no10]. The 10DS team built `10ds-microsim` on top of PolicyEngine UK to rapidly estimate the impacts of policy reforms on living standards, local area incomes, and distributional outcomes. HM Treasury has also formally documented PolicyEngine UK in the UK Algorithmic Transparency Recording Standard, describing it as a model their Personal Tax, Welfare and Pensions team is exploring for "advising policymakers on the impact of tax and welfare measures on households" [@hmt2024atrs]. +**Parliamentary citation.** In February 2026, Baroness Altmann referenced PolicyEngine and its interactive dashboard during House of Lords Grand Committee debate on the National Insurance Contributions (Employer Pensions Contributions) Bill, noting that Commons Library research using PolicyEngine provided "a useful picture of the distributional effects of raising the contribution limit" across income deciles [@hansard2026nic]. + **Academic research.** Youngman et al. [@youngman2026carbon] cite PolicyEngine UK's methodology in their agent-based macroeconomic model for the UK's Seventh Carbon Budget, developed at the Institute for New Economic Thinking at Oxford in partnership with the Department for Energy Security and Net Zero, noting that "the PolicyEngine microsimulation model addresses undersampling of rich households by using the Wealth and Assets Survey to impute additional wealth households into the Family Resources Survey." **Policy research.** The National Institute of Economic and Social Research (NIESR) used PolicyEngine in their UK Living Standards Review 2025, acknowledging "the expertise and generosity of Nikhil Woodruff and Vahid Ahmadi in helping us maximise the benefits of using PolicyEngine" [@niesr2025living]. The Institute of Economic Affairs has published reports using PolicyEngine's microsimulation model to analyse employer National Insurance contributions [@woodruff2024nic] and the distributional impact of 2025–2026 tax changes on UK households [@woodruff2025tax]. -**Parliamentary citation.** In February 2026, Baroness Altmann referenced PolicyEngine and its interactive dashboard during House of Lords Grand Committee debate on the National Insurance Contributions (Employer Pensions Contributions) Bill, noting that Commons Library research using PolicyEngine provided "a useful picture of the distributional effects of raising the contribution limit" across income deciles [@hansard2026nic]. - The open-source model has attracted contributions from over 25 developers and has been iteratively developed since 2021, with over 2,700 commits and regular tagged releases. The project uses continuous integration, automated testing, and comprehensive documentation including Jupyter notebook tutorials covering programme-specific validation against administrative data (e.g., HBAI comparisons). # Acknowledgements From a257ca4f1dfd9f43c1e33c2784e495b6bb5a099c Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:34:25 +0000 Subject: [PATCH 11/16] Remove redundant repo stats from Research Impact section Co-Authored-By: Claude Opus 4.6 --- paper.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/paper.md b/paper.md index 0178d1860..5a2bd18b8 100644 --- a/paper.md +++ b/paper.md @@ -76,8 +76,6 @@ PolicyEngine UK has demonstrated research impact across government, academia, an **Policy research.** The National Institute of Economic and Social Research (NIESR) used PolicyEngine in their UK Living Standards Review 2025, acknowledging "the expertise and generosity of Nikhil Woodruff and Vahid Ahmadi in helping us maximise the benefits of using PolicyEngine" [@niesr2025living]. The Institute of Economic Affairs has published reports using PolicyEngine's microsimulation model to analyse employer National Insurance contributions [@woodruff2024nic] and the distributional impact of 2025–2026 tax changes on UK households [@woodruff2025tax]. -The open-source model has attracted contributions from over 25 developers and has been iteratively developed since 2021, with over 2,700 commits and regular tagged releases. The project uses continuous integration, automated testing, and comprehensive documentation including Jupyter notebook tutorials covering programme-specific validation against administrative data (e.g., HBAI comparisons). - # Acknowledgements This work was supported by the Nuffield Foundation since September 2024 [@nuffield2024grant]. The Nuffield Foundation had no involvement in the design, development, or content of this software or paper. From 5673f0f01cc730a541acf2a1a132b7253f7d9212 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:34:44 +0000 Subject: [PATCH 12/16] Add citations for OpenFisca and UKMOD in Acknowledgements Co-Authored-By: Claude Opus 4.6 --- paper.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/paper.md b/paper.md index 5a2bd18b8..8ac95fe9e 100644 --- a/paper.md +++ b/paper.md @@ -80,7 +80,7 @@ PolicyEngine UK has demonstrated research impact across government, academia, an This work was supported by the Nuffield Foundation since September 2024 [@nuffield2024grant]. The Nuffield Foundation had no involvement in the design, development, or content of this software or paper. -We acknowledge contributions from all PolicyEngine UK contributors, and thank the OpenFisca community for the foundational microsimulation framework. We acknowledge the UKMOD team at the Institute for Social and Economic Research (ISER), University of Essex, for their contributions to model descriptions. We also acknowledge the UK Data Service and the Department for Work and Pensions for providing access to the Family Resources Survey. +We acknowledge contributions from all PolicyEngine UK contributors, and thank the OpenFisca community for the foundational microsimulation framework [@openfisca]. We acknowledge the UKMOD team at the Institute for Social and Economic Research (ISER), University of Essex, for their contributions to model descriptions [@sutherland2014euromod]. We also acknowledge the UK Data Service and the Department for Work and Pensions for providing access to the Family Resources Survey. # AI Usage Disclosure From 6c5d789d006a40d47073b2ce8f1d09f05562d551 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:35:42 +0000 Subject: [PATCH 13/16] Replace 'United Kingdom' tag with 'distributional analysis' Co-Authored-By: Claude Opus 4.6 --- paper.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/paper.md b/paper.md index 8ac95fe9e..84a52b83c 100644 --- a/paper.md +++ b/paper.md @@ -5,8 +5,7 @@ tags: - microsimulation - tax - benefit - - public policy - - United Kingdom + - distributional analysis authors: - name: Max Ghenis orcid: 0000-0000-0000-0000 From 780d5385da22a951ba88016cb5058c0ebc39ddc2 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:36:34 +0000 Subject: [PATCH 14/16] Restore 'public policy' tag alongside 'distributional analysis' Co-Authored-By: Claude Opus 4.6 --- paper.md | 1 + 1 file changed, 1 insertion(+) diff --git a/paper.md b/paper.md index 84a52b83c..47f1e7ea6 100644 --- a/paper.md +++ b/paper.md @@ -5,6 +5,7 @@ tags: - microsimulation - tax - benefit + - public policy - distributional analysis authors: - name: Max Ghenis From 305ee7d68cd28fa11e08b6ed6758ea8bf94726d0 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:36:52 +0000 Subject: [PATCH 15/16] Replace 'distributional analysis' tag with 'economic analysis' Co-Authored-By: Claude Opus 4.6 --- paper.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/paper.md b/paper.md index 47f1e7ea6..7c581eae2 100644 --- a/paper.md +++ b/paper.md @@ -6,7 +6,7 @@ tags: - tax - benefit - public policy - - distributional analysis + - economic analysis authors: - name: Max Ghenis orcid: 0000-0000-0000-0000 From 208d40f3d41638b49a5684bed20a784d223f4a39 Mon Sep 17 00:00:00 2001 From: Vahid Ahmadi Date: Thu, 19 Mar 2026 18:41:36 +0000 Subject: [PATCH 16/16] Add Vahid Ahmadi's ORCID ID Co-Authored-By: Claude Opus 4.6 --- paper.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/paper.md b/paper.md index 7c581eae2..7cfe06774 100644 --- a/paper.md +++ b/paper.md @@ -15,7 +15,7 @@ authors: orcid: 0000-0000-0000-0000 affiliation: 1 - name: Vahid Ahmadi - orcid: 0000-0000-0000-0000 + orcid: 0009-0004-1093-6272 affiliation: 1 corresponding: true affiliations: