Transparent arithmetic is the operating system of this calculator.
This document publishes the formulae, computational structure, and assumptions used to generate the outputs displayed on the calculator page.
No opinions. No hidden assumptions. Just arithmetic.
This calculator estimates the long-run effect of flat-fee, hourly, or percentage-of-assets (AUM) advisor fees on a portfolio. It decomposes the total impact into direct fees paid, lost compounding from removing those dollars, the gap between ending values with and without fees, and an AUM-fee percentage that would produce the same ending value as a given flat or hourly schedule.
Let:
The calculator converts the user-supplied annual nominal return r into an effective monthly rate rm:
With no advisor fees, the portfolio is simulated month by month with contributions at the end of each month:
The ending value without fees is:
With advisor fees, the simulation still runs month by month with growth first, then fees, then contributions at the end of the month.
Growth step (all models):
Fee step depends on the model:
In all cases, the fee deducted in month t is:
Contribution step (all models):
Total fees are tracked as:
The ending value with fees is:
The calculator defines the total cost of the fee model as the gap between ending values with and without fees:
Given TotalFees from the monthly simulation, lost compounding is the residual:
For flat and hourly models, the calculator finds the AUM fee rate fa* (annual decimal) that would produce the same ending value as the modeled schedule, holding all other inputs constant. It does this numerically using a binary search on an AUM rate between 0 and 5%.
Let FVwith_AUM(f) be the ending value from the AUM fee simulation with rate f. The calculator searches for f such that:
calculateFlatFeeOrHourlyCost() inside
/calculators/flat-fee-or-hourly/engine.js, which calls helper functions to simulate paths with and without fees and to solve
for the AUM-equivalent rate.
If any discrepancy is identified between this documentation and the live calculator engine, the engine’s arithmetic
(calculateFlatFeeOrHourlyCost() in engine.js) is the source of truth. This page will be updated to match the
engine.