What Is PSG-Tax-Analyzer?
PSG-Tax-Analyzer is a software framework for developing tax microsimulation models with minimal coding. Development of a model involves specifying parameters in fifteen JSON files and preparing tax-filing-unit data in three CSV files. The logic of tax calculation is written in code that is very simple and would be easy to write for anyone with experience in any programming language.
The PSG-Tax-Analyzer framework grew out of the experience beginning in late 2018 of converting an income tax microsimulation model for the US into one for India. While the conversion was viewed as a success by the World Bank staff in Washington and the Ministry of Finance staff in New Delhi, the initial conversion and ongoing development of the model was hampered by a number of problems. After getting expressions of interest for such a model from a number of other governments, World Bank staff expressed interest in a framework that would be easier to adapt to a different country or a different kind of tax, and a framework whose derived tax models would be easier to use (for government staff that have data analysis skills, but little or no computer programming experience). This framework, which has been developed by Martin Holmer of the Policy Simulation Group (PSG), is the result of that expression of interest.
The following features of the framework, and models derived from it, are notable:
The framework supports rapid development of tax microsimulation models by providing the generic microsimulation logic and allowing model developers to specify just the features of their country and type of tax in a number of JSON parameter files and in a few CSV data files. The actual logic of the country's tax is described in one file using a very simple programming language that consists mostly of if-then-else statements and assignment statements that use basic arithmetic and min and max functions.
Framework-derived models are easy to use because the full range of their capabilities are accessible by simply executing commands at the operating system command prompt, relieving users from any computer programming and leaving them to concentrate on how best to tabulate and visualize model results in the data analysis software of their own choice.
Framework-derived models are full-featured: they conduct static analysis of a tax reform by default, but they have an option for conducting analysis that includes one or more partial-equilibrium responses to the reform using user-specified, non-linear elasticities. The models also have an option for analyzing the implications of the growth effects of a reform using user-specified growth differences that can be developed from a general-equilibrium model or specified as what-if assumptions.
The framework was used to develop a US wealth tax model as described here. Developing that model served as a test of the design of the framework. And the code of this framework-derived model serves as a template for new tax microsimulation models for other countries or other tax types. Read the USW-Tax-Analyzer documentation about about using that model as a template to create a new model.
The framework is extensively tested and framework-derived models have been validated against other models. The test suite for the framework itself has complete code coverage. And the framework-derived USI-Tax-Analyzer, which simulates US income and payroll taxes and is privately maintained by the Policy Simulation Group, has been validated against the NBER TAXSIM-32 model.
The source code is free and open-source, being distributed under the 2-clause BSD license.
Latest Release: Version 1.2.0 (2020-07-22)
Click on the New-Thread button at the support forum to ask a question, submit a bug report, or request a framework enhancement. Suggestions for improving the documentation (including typos and misspellings) are appreciated.