A question many people get wrong
Start the year with 1 million, end with 1.2 million — that is a 20% return. No problem there.
But real life usually looks like this: start with 1 million, add 500,000 in June, end the year with 1.8 million. Now what is the return?
If you calculate (1.8m − 1m) ÷ 1m = 80%, that is badly wrong, because the 500,000 was money you deposited, not money you earned. But subtracting the capital and calling it (1.8m − 1.5m) ÷ 1.5m = 20% is not accurate either — that 500,000 was only invested for half the year and should not be measured against a full year.
The core problem is that the timing of cash flows severely distorts the return.
How TWR solves it
Time-Weighted Return has a straightforward idea: treat every cash flow as a dividing line, split the period into segments, calculate each separately, then chain them together.
The app's calculator splits by month, and each month's return is:
Monthly return = (Month-end assets − Net deposit this month) ÷ Previous month-end assets − 1
Deduct the money you put in yourself first; what remains is the result of your trading. Then multiply the twelve monthly returns together to get the year's TWR.
This figure has an important property: no matter how much you add or withdraw along the way, the result is unaffected. It measures your stock-picking and trading ability, not how much you saved.
Why the number is worth facing
Most people have no real sense of their own performance — they remember "the ones that went up" and forget the losers. TWR forces you to confront an honest number.
And because cash-flow noise is removed, it is directly comparable to the market. That is why the calculator has a "Beat the Market" feature: after a year of hard work picking stocks, did you beat simply holding an index ETF?
If the answer is no, that is valuable information — not bad news.
How to fill it in
You need two numbers each month:
- Net deposit: money added this month minus money withdrawn. Use a negative number for a net withdrawal, 0 if there was none.
- Month-end assets: cash + market value of all holdings on the last trading day of the month.
Also fill in the year and starting assets (cash + holdings on 1 January) at the top.
Leave future months blank — the system only calculates months where you have entered month-end assets.
Practical notes
- Be consistent. Always use the same basis for total assets (for example, the total value shown in your broker's app). Do not include cash some months and not others.
- Pick a fixed day each month. After the close on the last trading day, spend two minutes recording it; in a year you will have a complete record.
- A partial year is an estimate. If you have only filled in through June, the system extrapolates the annualized figure. It is a reference, not a promise.
- Data is stored on your own device. These numbers live in your browser's localStorage and are never uploaded. Changing phones or clearing browser data will erase them — back them up separately if they matter.
Finally
Returns are not for boasting; they are for reviewing. Once you have an honest, comparable number, you can answer the question that actually matters:
Does my method actually work?