Skip to main content

Personal Finance Simulator

Finance Simulator

Project your financial future with detailed cash flow and asset growth simulations.

Simulator Settings

Incomes

Expenses

Assets & Cash

Idle Cash Reserves

*Surplus income calculated after expenses and investments flows here. Growth is 0%.

Investments

%

How It Works

💡 Calculation Methodology

The simulator runs month-by-month calculations for the specified duration. Each month follows this precise order:

  1. Calculate total income and expenses for the month
  2. Compute monthly surplus (income - expenses)
  3. Determine investment contribution (capped by available surplus)
  4. Update cash balance (surplus - contribution)
  5. Apply monthly investment returns
  6. Add contribution to investment balance

⚠️ Negative Cash Balance

If your expenses exceed your income and cash reserves, the Cash Balance will become negative, representing unsecured debt or overdraft. This is displayed in red in the results. When cash is negative, you cannot contribute to investments.

📈 Investment Contributions

You can only contribute to investments if you have a positive cash surplus for the month. The actual contribution is the minimum of your target monthly contribution and your available surplus.

📊 Inflation & Growth

Expenses increase annually based on the inflation rate you specify. Income streams grow annually based on their individual growth rates. Both adjustments happen at the start of each year (except year 1).

🎯 Precision

All calculations use the decimal.js library to ensure mathematical precision without floating-point errors. This guarantees accurate financial projections.

A compound-interest calculator tells you how one pot of money grows. A finance simulator answers the question you actually live with: given my salary, my real expenses and what I invest, where does my net worth land in 10, 20 or 30 years? This tool runs the projection month by month rather than collapsing each year into a single step, so it captures the effects a one-line formula misses — inflation gnawing at your surplus, idle cash piling up in a current account, and a separate investment portfolio compounding on its own monthly schedule.

The defining feature is how cash flow splits in two. Each month the tool computes a surplus = income − expenses − investment contribution. A positive surplus flows into an idle-cash reserve (zero growth, your current account); a negative surplus is ignored — the tool assumes you cover the shortfall elsewhere and never drains the reserve. Meanwhile the investment account receives its fixed monthly contribution and compounds at the return you set, entirely independent of the idle cash.

For anyone earning in Vietnamese dong, the model deliberately holds income flat while expenses inflate every year. That is not a quirk — it is the central lesson for an expat on a fixed local contract: if your nominal salary stays put, 3%/year inflation quietly tightens the screw. In the default example below, the monthly cash surplus hits zero in year 15, even as net worth keeps climbing on the back of the portfolio. Every 3% inflation and 6%/year return figure on this page is an illustrative assumption, not a forecast — swap in numbers that fit your own situation.

How the simulator computes

The engine runs a monthly loop for the whole horizon. Each month follows this exact order (matching the tool's decimal.js engine):

  1. At the start of each year (except year 1): every expense is multiplied by (1 + inflation). Income does not grow.
  2. Investment account: each asset's balance is multiplied by the monthly return = annual return ÷ 12, then the monthly contribution is added.
  3. Monthly surplus = total income − total expenses − total investment contributions.
  4. Idle-cash reserve: only a positive surplus is added; a negative surplus leaves cash unchanged.
  5. End-of-year net worth = idle-cash reserve + total investment balance.

Two separate buckets

Idle-cash reserveInvestment account
InflowPositive monthly surplusFixed monthly contribution
Growth0% (current account)Compounds at your set return
On a shortfallUntouched (assumed covered)Still receives its contribution

This split makes the tool realistic yet conservative: it never raids your reserve during a deficit, but it also refuses to let idle cash earn a return. To make money grow, you must route it into the investment account.

Investment growth formula

For an annual return r and a contribution PMT at the start of each month, the balance after m months is:

Balance = Principal × (1 + r/12)^m + PMT × ((1 + r/12)^m − 1) ÷ (r/12)

The tool follows exactly this convention (start-of-month contributions, monthly compounding), so you can reconcile every row of the table below.

What the model leaves out

It assumes a constant return and inflation for the whole horizon, a fixed nominal income, and no income tax, trading fees or dividend withholding. It is a scenario, not a promise — run several return rates to test sensitivity.

Worked example: the tool's default configuration

Illustrative assumptions: a 30-year simulation, 20,000,000 VND/month salary (flat), 12,000,000 VND/month living expenses (inflating 3%/year), 10,000,000 VND starting cash, one portfolio seeded at 50,000,000 VND with a 2,000,000 VND/month contribution, returning 6%/year.

MilestoneNet worthInvestment accountIdle-cash reserveExpenses that year
End of year 1159.755.01577.755.01582.000.000144.000.000
End of year 5532.467.012206.982.569325.484.443162.073.269
End of year 10937.929.909418.728.530519.201.379187.887.338
End of year 201.663.161.3351.089.592.014573.569.321252.504.872
End of year 302.883.728.1662.310.158.846573.569.321339.345.433

Three things stand out.

  • Net worth climbs steadily from 159.755.015 VND (year 1) to 2.883.728.166 VND (year 30) — and almost all of the late-stage growth comes from the investment account (2.310.158.846 VND), driven by compounding on the 2M/month contribution.
  • The idle-cash reserve freezes in year 15 at 573.569.321 VND. The reason: the initial 12M expense, inflating 3%/year, overtakes 18M (= 20M salary − 2M contribution) by year 15, when the monthly cost reaches roughly 18.151.077 VND — so there is no positive surplus left to add to cash.
  • The money you actually put in over 30 years is only about 780.000.000 VND (10M cash + 50M seed + 720M of contributions), yet you end with 2.883.728.166 VND — the gap is the power of compounding plus disciplined monthly contributions.

The takeaway: a flat nominal salary cannot out-run inflation forever. Try raising the investment return, increasing the monthly contribution, or giving income a growth rate — and watch the cash-freeze milestone move.

Frequently asked questions

How is a finance simulator different from a compound-interest calculator?

A compound-interest calculator tracks one pot of money growing. A finance simulator tracks your whole cash-flow picture: multiple income streams, expenses that inflate, an idle-cash reserve and a separate investment account — all computed month by month. It outputs aggregate net worth, not a single figure. In the default example, net worth reaches 2.883.728.166 VND after 30 years.

Why does my cash balance stop growing partway through?

Because the tool only adds a positive surplus to the idle-cash reserve. Once expenses (inflating 3%/year) overtake the income left after your investment contribution, the monthly surplus goes negative and cash stays flat. In the default example this happens in year 15: the reserve freezes at 573.569.321 VND because the monthly expense has risen to about 18.151.077 VND, above the 18M (20M salary − 2M contribution) threshold.

Does the simulator account for salary increases over time?

The default model holds nominal income flat while expenses inflate — deliberately, to illustrate the risk of a frozen salary. You enter each income stream separately; to model raises, split the scenario into phases or lift the investment contribution to compensate. Comparing a run with and without income growth shows just how quickly inflation erodes purchasing power on a fixed local contract.

What is the difference between the idle-cash reserve and the investment account?

The idle-cash reserve stands for your current account: it receives positive monthly surplus but earns zero growth. The investment account receives a fixed contribution and compounds at your chosen return. In the default example after 30 years, cash sits at 573.569.321 VND while the investment account reaches 2.310.158.846 VND — a vivid illustration of the opportunity cost of holding too much idle cash.

What happens when expenses exceed income?

The tool assumes you cover the shortfall from another source, so the idle-cash reserve is never drained — it simply stops growing. The investment contribution still goes in each month. This is a conservative design choice: the simulator does not eat into your reserve. If in reality you would draw down cash, lower the contribution or expenses in your scenario to model it more accurately.

Are the inflation and return rates in the example real figures?

No. The 3%/year inflation and 6%/year return used throughout this page are illustrative assumptions chosen to make the math easy to verify. Actual Vietnamese inflation and investment returns vary over time. Enter the numbers that fit your situation and run a few scenarios (optimistic, conservative) to understand the range of outcomes for your net worth.

How can I improve my simulated outcome?

Three main levers: raise the monthly investment contribution, increase the expected return (choosing investments that match your risk tolerance), and control expense inflation. In the default example, the 720M VND of contributions over 30 years alone drives the investment account to 2.310.158.846 VND. Pair this tool with FiMo's Compound Interest and FIRE calculators to pressure-test your retirement target.