Money-Weighted Return
Money-Weighted Return (MWR) is the internal rate of return (IRR) on a portfolio's cash-flow stream — the discount rate that makes the present value of all contributions equal to the present value of all withdrawals plus the ending portfolio value. Unlike TWR, MWR includes the impact of cash-flow timing and is what the investor actually earned.
MWR answers a different question from TWR. Where TWR isolates the manager's performance from cash-flow noise, MWR captures the investor's actual experience — including whether they bought low and sold high at the household level. A client who deposited $100,000 just before a 30% bull run and another who deposited the same $100,000 just before a 30% drawdown would experience materially different MWRs even with the same manager and the same TWR.
The computation is the standard IRR: solve numerically for the rate r such that the discounted cash flows (positive contributions and ending value, negative withdrawals) sum to zero. There is no closed-form solution for general cash-flow streams; engines use Newton's method, bisection, or polynomial root-finding (when the stream has a small number of regular flows). Multiple solutions can exist for streams with many sign changes — a complication that surfaces in private-fund context where capital calls and distributions alternate.
MWR is the right measure for any context where cash-flow timing is part of the investment decision: dollar-cost averaging effectiveness, IRR on private-fund commitments, household-level returns reported to a planning client. It is the wrong measure for evaluating manager skill — which is exactly why GIPS reporting standardizes on TWR for that purpose. A wealth platform that reports a single 'return' number to clients without specifying which measure it is is hiding the distinction between manager performance and client timing.
0 = Σᵢ CFᵢ / (1 + r)^tᵢ- CFᵢ
- = cash flow at time tᵢ (contributions negative, withdrawals + ending value positive)
- tᵢ
- = time in years from the start of the measurement period
- r
- = the IRR — the discount rate that makes the equation hold
CFs: -100,000 at t=0; -50,000 at t=0.42; +172,000 at t=1.0. Solving numerically: r ≈ 14.6%.MWR computation needs the full cash-flow ledger with dates, signs, and amounts — not just balances. Synthetic data that produces month-end balances without the corresponding contribution-and-withdrawal ledger cannot drive an MWR engine. Realistic test corpora need a cash-flow ledger per account, with deposits and withdrawals on plausibly-distributed dates (paydays, RMD distributions, advisor fees on quarter-ends), so the IRR solver gets exercised on realistic input streams.
Common pitfalls
- Confusing IRR sign conventions — most libraries treat contributions as negative and withdrawals/ending-value as positive; getting the sign wrong produces a return with the wrong sign.
- Annualizing IRR from a sub-annual stream by multiplying by N rather than compounding (1 + r_period)^N − 1.
- Reporting MWR for a private-fund commitment as the IRR over the full commitment-to-final-distribution period without disclosing the J-curve shape.
- Assuming a single MWR solution exists — for cash-flow streams with multiple sign changes (typical of private equity), multiple roots are possible and the solver has to know which to return.
Examples
Portfolio starts the year at $100,000. June 1 deposit of $50,000. Year-end value $172,000. Cash-flow stream: -$100,000 at t=0, -$50,000 at t=0.42, +$172,000 at t=1. IRR ≈ 14.6%. (The corresponding TWR is 17.6% — the manager performed well, but the client deposited just before a strong second half, which inflated their experienced return relative to the manager's skill measure. Or below — depending on the sequence.)