Time-Weighted vs Money-Weighted Return: Which Is Your Real Return?
Two investors buy the same fund. Same fund, same period, same fees. One reports +12%, the other +4%. Neither is lying, they're just answering different questions.
Every portfolio has two honest return numbers, not one. Once you see why, a lot of confusing broker screens, fund factsheets, and internet performance brags suddenly make sense, and so does the occasional feeling that your account balance and your reported return live on different planets.
The two questions
"How good were my investments?" That's the time-weighted return (TWR). It strips out the effect of when you added or withdrew money, and just chains together the returns of what you held. Fund factsheets use TWR; it's the fair way to compare against an index.
"How good was my outcome?" That's the money-weighted return (MWR, or IRR). It cares deeply about timing: put a big deposit in right before a rally and your MWR beats your TWR. Deposit before a crash, and it lags.
The distinction exists because a private investor is really two decision-makers in one body. One picks what to hold; the other picks when the money goes in and out. TWR grades the first. MWR grades both at once. Neither is the "real" return in some cosmic sense; they're two rulers measuring two different jobs.
How TWR is computed, conceptually
The recipe is simple even if the bookkeeping isn't. Cut your history into sub-periods at every cash flow, every deposit and every withdrawal. Within each sub-period, no money moved, so the percentage change in value is purely investment performance. Compute that percentage for each slice, then chain them: multiply (1 + return) across all the slices and subtract 1 at the end.
Because each slice's return is calculated on whatever happened to be in the account at the time, the size of the account never matters. A 5% gain counts as a 5% gain whether it happened on €1,000 or €100,000. That's the whole trick: by giving every time slice equal footing regardless of how much money was present, TWR erases your deposit timing from the record. What's left is a number you can lay directly against an index, which also holds no opinion about your payday schedule.
How MWR works, conceptually
Money-weighted return runs the other direction. It treats your portfolio like a small business: money went in on certain dates, money came out on certain dates, and something is left today. MWR is the single annual interest rate that, applied to every one of those cash flows for exactly as long as each was invested, reproduces your ending value. Accountants know it as the internal rate of return.
Because each euro is weighted by how long it was actually at work, big late deposits dominate the number. If most of your money arrived last year, MWR mostly reflects last year, however brilliant or dreadful the years before it were. That's not a flaw. It's the point: your outcome in euros really does depend most on what your biggest money did.
A worked example where the two disagree
Round numbers, one fund, two years. You start with €10,000. In year one the fund gains 20%, so you have €12,000. Encouraged, you deposit another €12,000, bringing the account to €24,000. In year two the fund loses 10%, leaving €21,600.
The time-weighted return chains the two years: 1.20 × 0.90 = 1.08, so +8% over the period. The fund, and your selection of it, did fine.
The money-weighted view is grimmer. You put in €22,000 in total and finished with €21,600, a €400 loss. Your MWR is slightly negative. Same account, same fund: +8% by one honest measure, a loss by the other. The €12,000 you added at the top spent its whole life in the losing year, and MWR, correctly, makes it count.
Now run the mirror image: the fund loses 10% first (€10,000 falls to €9,000), you grit your teeth and deposit €12,000 anyway (€21,000), and year two gains 20%, ending at €25,200. TWR is identical, 0.90 × 1.20 = 1.08, still +8%. But now €22,000 in became €25,200, a €3,200 profit. Same fund, same TWR, and the difference between losing €400 and making €3,200 was nothing but the timing of one deposit.
Why the gap is interesting
The difference between your two numbers is, roughly, the cost (or profit) of your timing. Research on fund flows keeps finding that the average investor's money-weighted return trails the funds they invest in by 1–2% a year, people add money after rallies and freeze during dips. The fund did fine. The behavior didn't.
If your MWR is consistently below your TWR, your picks might be fine while your timing is expensive. That's fixable, usually with boring automation. A fixed monthly buy removes the decision entirely, and the compounding arithmetic of steady contributions is examined in the compound math of monthly investing. If instead your TWR trails a fair benchmark while your MWR looks respectable, the diagnosis flips: your timing has been bailing out your selection. Different leak, different repair, and you can't tell which one you have from a single blended percentage.
What your broker shows you
Usually neither, cleanly. Most broker apps show a simple percentage, current value versus something, often unclear what. DeGiro's "Totale w/v" is a cash-flow-based figure. Robinhood's chart is close to TWR but unbenchmarked. Almost nobody shows both numbers side by side, which is a shame, because the comparison is where the insight lives.
The practical consequence is that two people comparing returns over coffee are almost never comparing the same quantity. One quotes an app's cash-flow figure, the other a chart percentage, both round generously, and the conversation is astrology with decimals. The raw material for the correct numbers exists, though. It sits in the transaction export every broker provides, the same file described in guides like the DeGiro export guide: every deposit, every trade, every dividend, timestamped.
Which number should you care about?
Both, for different decisions. Use TWR when the question is whether your selections deserve to keep their job: it's the only number an index comparison can fairly be laid against, which is why the benchmarking method in how to check if you beat the S&P 500 is built on it. Use MWR when the question is what your money actually did: it's the number your retirement will be funded with, and the one your timing habits show up in.
The temptation to report whichever is higher is strong and universal. Resist it, or at least notice it. A portfolio that shows a handsome TWR and a lagging MWR year after year isn't describing bad luck; it's describing a habit, and habits, unlike markets, are something you control.
Getting both
You need your full cash-flow history, every deposit, buy, sell, plus daily valuations. That's exactly what a broker export contains. BullBenchmark computes your returns from your own transaction files and puts them next to an S&P 500 simulation with your identical cash flows: benchmark, timing effect and stock selection, finally separated.
No broker login is needed for any of this; a transaction file already holds the complete story, a point covered in why a portfolio tracker doesn't need your broker password. Ten minutes of uploading buys you the two numbers your app has been blending into one, and the gap between them is usually the most instructive statistic in your entire financial life.
The first week of BullBenchmark is free, no card, upload the export you just downloaded and see where you stand.
Related: How to check if you beat the S&P 500 · Why investors underperform