Let's say you have

*Investment* amount of money (gross, pre-tax) to invest, and the government limits you to contributing

*Limit* per year (currently $5,000), where

*Investment* >>

*Limit*. Your tax rate now is

*Tax_Now*, and your tax rate when you withdraw the money is

*Tax_Withdraw*. You will receive a

*Return* per year on your investment (such as 9%) and hold it for some number of

*Years* before withdrawal. Finally, we assume we will be investing up to the maximum

*Limit* per year.

Roth IRA's are post-tax investments, and tax-free withdrawals, while Traditional IRA's (and 401k's) are pre-tax investments, and taxable withdrawals. We want to know how much money will be withdrawn (denoted as *Withdrawal*) with each type of investment vehicle.

**Roth:**

We are able to invest

*Investment* * (1 - *Tax_Now*).

*Limit* goes into a Roth IRA, and

*Investment* * (1 - *Tax_Now*) - *Limit*

goes into a taxable account. So we have a tax-free withdrawal of

*Limit ** (1 + *Return*)^*Years*.

We also have a taxable withdrawal of

(*Investment ** (1 - *Tax_Now*) - *Limit*) * (1 + *Return*)^*Years *at a rate of *Tax_Withdraw*,

which results in a withdrawal of

(*Investment ** (1 - *Tax_Now*) - *Limit*) * (((1 + *Return*)^*Years *- 1) * (1 - *Tax_Withdraw*) + 1).

The -1 and +1 are because you are only taxed on your earnings, not on the principal, when you withdraw.

Add this all together we have:

*Withdrawal_Roth *= *Limit ** (1 + *Return*)^*Years *+ (*Investment ** (1 - *Tax_Now*) - *Limit*) * (((1 + *Return*)^*Years *- 1) * (1 - *Tax_Withdraw*) + 1)

**Traditional IRA**:

The traditional IRA is only taxed on withdrawal. So we are able to invest Limit into an IRA, and

(*Investment *- *Limit*) * (1 - *Tax_Now*)

into a taxable account. The IRA results in

*Limit ** (1 + *Return*)^*Years*,

which, after taxes, equals

*Limit ** (1 + *Return*)^*Years ** (1 - *Tax_Withdraw*).

The taxable account contains

(*Investment *- *Limit*) * (1 - *Tax_Now*)

dollars invested, resulting in

(*Investment *- *Limit*) * (1 - *Tax_Now*) * (((1 + *Return*)^*Years *- 1) * (1 - *Tax_Withdraw*) + 1)

So our total withdrawal from a traditional IRA is:

*Withdrawal_Traditional *= *Limit ** (1 + *Return*)^*Years ** (1 - *Tax_Withdraw*) + (*Investment *- *Limit*) * (1 - *Tax_Now*) * (((1 + *Return*)^*Years *- 1) * (1 - *Tax_Withdraw*) + 1).

__Example:__

We'll go with $10,000 gross to be invested with a $5,000 limit for 8 years, at 9% return (so that our investments roughly double). The tax rates will both be 30%.

*Withdrawal_Roth *= *Limit ** (1 + *Return*)^*Years *+ (*Investment ** (1 - *Tax_Now*) - *Limit*) * (((1 + *Return*)^*Years *- 1) * (1 - *Tax_Withdraw*) + 1)

= $5,000 * 1.09 ^ 8 + ($10,000 * 0.70 - $5,000) * ((1.09^8 - 1) * 0.70 + 1)

= $13,352.41

*Withdrawal_Traditional *= *Limit ** (1 + *Return*)^*Years ** (1 - *Tax_Withdraw*) + (*Investment *- *Limit*) * (1 - *Tax_Now*) * (((1 + *Return*)^*Years *- 1) * (1 - *Tax_Withdraw*) + 1)

= $5,000 * 1.09 ^ 8 * 0.70 + ($10,000 - $5,000) * 0.70 * ((1.09^8 - 1) * 0.70 + 1))

= $12,905.77

__Combination:__

We can combine some like terms if we define several common variables:

*IRA_Return *= *Limit ** (1 + *Return*)^*Years*

*Other_Fraction *= ((1 + *Return*)^*Years *- 1) * (1 - *Tax_Withdraw*) + 1

Now, we can write them as:

*Withdrawal_Roth *= *IRA_Return *+ (*Investment ** (1 - *Tax_Now*) - *Limit*) * *Other_Fraction*

*Withdrawal_Traditional *= *IRA_Return ** (1 - *Tax_Withdraw*) + (*Investment *- *Limit*) * (1 - *Tax_Now*) * *Other_Fraction*

subtracting, we get

*Difference *= *Withdrawal_Roth *- *Withdrawal_Traditional*

= *IRA_Return ** (1 - 1 + *Tax_Withdraw*) + *Other_Fraction ** (*Investment ** (1 - *Tax_Now*) - *Limit *- (*Investment *- *Limit*) * (1 - *Tax_Now*))

= *IRA_Return ** *Tax_Withdraw* + *Other_Fraction ** (-*Limit ** *Tax_Now*)

= *IRA_Return ** *Tax_Withdraw *- *Other_Fraction ** *Limit ** *Tax_Now*

So in our example, we have

*IRA_Return *= $5,000 * 1.09^8 = $9,962.81

*Other_Fraction *= (1.09^8 - 1) * (1 - 0.30) + 1 = 1.6948

*Difference *= $9,962.81 * 0.30 - 1.6948* $5,000 * 0.30

= $446.64

Just to check, we have:

$13,352.41 - $12,905.77 = $445.64. Good.

So Difference is how much you gain by using a Roth IRA over a traditional IRA.