The engine operates on three major calculation loops each year. In each loop it performs specific calculations, in a specific order.
Beginning of the year:
The first thing the engine does each year is to declare and record incomes that will be available to satisfy contributions, expenses, and taxes.
The engine prorates incomes/inflows (salary, pension, other income, etc.) based on the start and end month selected on each, and if we are in the first year of the plan, it applies proration based on the “plan start month” as well.
Manually input distributions from accounts and sales of assets are not prorated.
Proration is applied based on the number of months the income is to be collected during the year in question.
- Current Year: this proration looks at the Plan Start Month to determine the number of months to be included in the year (Feb = 11 months, June = 7 months).
- Retirement year: this proration looks at the Retirement Months for each person. If a person retires in June, they will have 6 months left in the year.
- Start or End year of any income: in any given year that an income/expense is set to start or end, the proration will be based on the lesser of the number of months that cash flow is supposed to occur in that year, or the months remaining in that year (if current year).
The following table illustrates the various cases.
|Current Year||Any Year||Retirement Year|
|Salary||Months remaining in the current year||Based on retirement month|
|Pension||Months remaining in the current year||Based on Start and End month|
|Other Income||Months remaining in the current year||Based on Start and End month|
|Social Security||Based on manual schedule. No proration.|
Next step for the engine is to compute the first half of the year's growth of the various accounts. Growth imputable to capital gains simply increases the balance, whereas growth caused by dividends is declared as taxable income, increases the balance and the cost basis of the account.
The next step in the annual calculations handles contributions, taxes, and expenses. Here is the list of things that happen:
- Pre-Tax contributions are made into qualified accounts (401K, 403b, etc) directly from salary. This reduces the available cash, but it also reduces the taxable income.
- Taxes on All Incomes (wages, other incomes, and dividends for the first half) are calculated and paid out of Available Income. If the cash inflows were not sufficient, a debt is carried forward to the expense calculation.
- If there is any income left over, After-Tax contributions are performed.
- Expenses are satisfied. First out of available left-over income, and then out of account balances. Withdrawals are processed according to the withdrawal order. If a withdrawal causes a tax liability, a debt is carried over to the end of year calculation.
- IF in GOAL BASED MODE, the system spends all left over Wages, and any other incomes marked as discretionary. Accounts Distributions, and RMDs are not consumed by this calculation. If there are any funds left over by this point, they are Swept to the default sweep account.
- IF in CASH FLOW MODE, if "Spend All" is enabled, all disposable income left over by this point is spent. Unused distributions and non-disposable incomes are swept to the default sweep account. If "Spend All" is not enabled, all left over cash is swept to the default sweep account.
End of year calculations:
- Accounts are grown for the remaining half of the year, and dividends are declared as taxable income. Taxes on those interest are added to the unpaid taxes balance (they are not necessarily distributed).
- If there is an insurance payout in the year, the system pays it out at this stage (if there are multiple beneficiaries the money is split. A portion of the proceeds may end up outside of the plan, as in the case of children and/or other beneficiary types).
- Final Tax Liability is calculated and paid off from insurance payouts, if any, or accounts via withdrawal (this step does not account for the possibility of disposable income left over as that was handled in the Mid-Year calculation).
- If a credit was due, this is swept to the default sweep (as in the case of a deduction from interest on mortgage)
- If there is still a liability, caused by withdrawals from accounts to pay the final tax liability, this is carried forward to the next year as Carryover Tax
- If there is any cash left over from insurance payouts, it is swept to the sweep account. If a death occurred, accounts are distributed according to the beneficiary instructions on each account.
Anytime the engine has to pull money from accounts, we will see a calculated withdrawal. This can occur even if the inflows were greater than the expenses, as any surplus cash deposited into the sweep account mid-year, when required to pay for the tax liability at the end of the year, will count towards the calculated withdrawal amount.
It should also be noted that often times the Income amount is not the same as the Inflows. If there are taxable accounts that generate large interest returns, those interests are not coming from outside of the plan, and yet they will be used to calculate the total income. In such situations, we may see a total income larger than the expenses, but in order to pay for those expenses, the system has to withdraw money from accounts.