Taxsim has some global options that affect the tax calculation.

Option
Number
Description
8 A positive value becomes the SALT deduction limit. Use -1 to eliminate the deduction entirely. Default is to the statutory limit ($10,000 in 2020)
22 A positive value sets the CARES rebate to zero
23 Secondary earner deduction, maximum deduction. (See 24 for rate).
24 Secondary earner deduction, fraction of swages deducted from taxable income. AGI is unaffected.
30Sets 88 and 91 to 1, also makes some other concessions to conform to TaxAct calculation. Intended for testing only.
51Set to 1 for compulsory itemization for all taxpayers, set to 2 for compulsory standard deduction for all taxpayers.
52 Finite difference for MTR calculation.
56 Turn off smoothing of EIC disqualifying income if set to one.
88 General turn off of smoothing (not complete) if set to one.
91 Don't iterate, that is, no cross deduction of tax liability

On the Taxsim web page

On the web page they can be specified in the "User Supplied Parameters and Options" box. For example: opt(23)=30000 opt(24)=.1 in the box (just above "submit") would establish a 10% secondary earner deduction for the first 30,000 of the earnings of the lesser earning spouse.

Usage in Stata

The parameters are options on the taxsim command line. For example: taxsim ,replace full opt(91)=1 will prevent the calculator from adding state income tax to federal itemized deductions.

Usage with Low-Level-Taxsim

The new parameters are read as a Fortran Namelist. If running locally You can place the namelist in a file in the current directory named taxsim.nml or you can put it before the list of variable names in the csv file for the local or remote cases.

The namelist format for input is a bit unusual. The namelist must begin with &params and end with a forward slash (/). Elements may be in any order. Commas separate elements. You can specify a single element of a vector or the entire vector. Here is an example of a taxsim.nml file:

&params opt(22)=1, opt(91)=1, opt(88)=1 / This shows the list of options spanning multiple lines..

Here is an example of placing the parameter file in the standard input to Taxsim, which would be the only possibility for remote low-level access:

&params opt(52)=100 / mstat,year,pwages 2,1987,50000 2,1987,60000 2,1987,70000 This changes the finite difference in the MTR calculation to $100 (which will show more notches, so be careful).

Notes:

Daniel Feenberg
feenberg@nber.org
617-682-6204


last update 10 Oct 2024 by drf. Taxsim home page