What is portfolio rebalancing, and how often does it matter?

On this page

Key takeaways

  • Rebalancing resets a portfolio to its target weights; between resets the holdings drift with their own returns.
  • Without rebalancing, a stock-and-bond portfolio tends to drift toward stocks, because stocks have usually grown faster, and so becomes riskier than its target mix.
  • In MarketHeist's long monthly simulation of a 60/40 portfolio, yearly and quarterly rebalancing produced nearly the same growth, volatility and Sharpe ratio; the large difference was between rebalancing and never rebalancing.
  • Rebalancing more often keeps the weights closer to target but means more trades; MarketHeist's simulation charges no trading costs or taxes, which in practice favour less frequent schedules.
  • Equal-weight rebalancing is the special case where every target weight is 1/n; it repeatedly trims the holdings that have risen most.

Definition

Portfolio rebalancing is the practice of trading a portfolio back to its target weights after market moves have pushed it away from them, by selling some of what has grown and buying what has lagged. Rebalancing on a calendar (yearly, quarterly or monthly) or when a weight leaves a band keeps the portfolio's risk close to the mix it was designed to have.

Also known as: rebalancing, calendar rebalancing, equal-weight rebalancing, fixed-weight rebalancing, constant-mix strategy, rebalancing frequency.

How it works

A portfolio starts at its target weights, for example a fixed split between a stock fund and a bond fund. The next month each holding earns its own return, so the weights move: if stocks rise and bonds do not, the stock share grows. This movement is called drift.

Rebalancing undoes the drift. On a schedule, or when a weight strays too far, the investor sells part of what grew and buys what lagged until the weights are back on target. Equal-weight rebalancing does the same with every target set to the same fraction.

Drift is not random over long periods. When one holding tends to grow faster than the others, as stocks have relative to bonds, an untouched portfolio gradually becomes a different portfolio, with more of the faster-growing and more volatile asset. Rebalancing is what keeps the risk at the level that was chosen.

The schedule decides how far the weights can wander between resets: monthly resets allow a month of drift, yearly resets allow a year. Rebalancing is like trimming a hedge back to a planned shape; the schedule decides how far it grows out between cuts.

Frequency has costs as well as effects. Each reset is a set of trades, and in a taxable account selling the holdings that grew can realise capital gains. A schedule that trades more often has to earn back those costs.

Formula

Drift between resets
vi,t=vi,t−1(1+ri,t),wi,t=vi,t∑jvj,t
vᵢ,ₜ
value held in holding i at the end of month t
rᵢ,ₜ
return of holding i in month t
wᵢ,ₜ
actual (drifted) weight of holding i at the end of month t
Reset on a rebalance date
vi,t←wi*Vt,Vt=∑jvj,t
wᵢ*
target weight of holding i (1/n for equal weight)
Vₜ
total portfolio value at the end of month t, after that month's returns

The reset happens at the end of a rebalance month, after the month's returns. Total value is unchanged by the reset; only the split moves.

Portfolio return and drift
Rt=VtVt−1−1,max drift=maxt|wi,t−wi*|
Rₜ
portfolio return in month t
Vₜ
total portfolio value at the end of month t
wᵢ,ₜ
drifted weight of the tracked holding at the end of month t, before any reset
wᵢ*
its target weight

Worked example

The classic stocks-and-bonds portfolio, 60% in SPY (the S&P 500) and the rest in BND (US bonds), simulated on monthly returns from Jan 1987 to Sep 2026, about 40 years, under four rules: never rebalance, or reset to the targets every December, every quarter-end, or every month.

Does rebalancing yearly versus quarterly matter for this portfolio? In these numbers, barely. Yearly resets grew at 9.07% a year and quarterly resets at 9.07%; volatility was 9.6% and 9.5%; the Sharpe ratio was 0.96 and 0.96.

The deepest decline was -30.3% with yearly resets and -31.6% with quarterly ones. A gap of this size can come from where the reset dates happened to fall during the 2008 crash, when each reset bought stocks on the way down, so it says little about either schedule in general.

Monthly resets gave 8.98% a year, volatility of 9.6% and a deepest decline of -32.2%. What the schedule does change is how far the weights wander: the stock weight strayed up to 13.0% from its target between yearly resets, 9.2% between quarterly ones and 6.9% within a single month.

The real difference is between rebalancing and not rebalancing. Left alone, the stock weight drifted to 93.8% by Sep 2026, and the portfolio became a different one: volatility of 11.7% and a deepest decline of -38.3%, against 9.6% and -30.3% with yearly resets. It also grew faster, at 10.00% a year, because it held more stocks through a long rise in stock prices.

So for a 60/40 portfolio over this period, the choice between yearly and quarterly rebalancing made little difference before costs, and the simulation charges none. Rebalancing at all is what kept the portfolio at the mix it was meant to be.

Data through Sep 2026. Reproduce id f358b797731f58ef (this guide, its lab setup and the data month).

Interactive lab

SPY's actual weight month by month under each rebalancing rule, with growth, volatility, deepest decline and Sharpe ratio per rule. Pick a rule to see how far the weight drifts between resets.

Weight of SPY over time by rebalancing cadenceWeight of SPY at each month-end, before any rebalancing trade, for never, yearly, quarterly, monthly rebalancing, Jan 1987 to Sep 2026. Target 60%.50%55%60%65%70%75%80%85%90%19871992199720022007201220172022NeverYearlyQuarterlyMonthly
Month-end weight of SPY under each cadence, before the rebalancing trade. Jan 1987 to Sep 2026.
RebalanceCAGRVolatilityMax drawdownSharpeLargest drift of SPYSPY weight at the end
Never10.0%11.7%-38.3%0.8833.8 pts93.8%
Yearly9.1%9.6%-30.3%0.9613.0 pts63.5%
Quarterly9.1%9.5%-31.6%0.969.2 pts61.4%
Monthly9.0%9.6%-32.2%0.956.9 pts60.5%

Target weight of SPY: 60.0%. Drift is the largest gap between the month-end weight and the target. Jan 1987 to Sep 2026.

How MarketHeist computes it

Every choice an implementation has to make, as the code makes it today. The page is checked against the code each time it is built.

ChoiceHow it is computedIn the code
DataMonthly total returns (dividends reinvested). Funds younger than the period shown are extended backward with older funds, spliced on returns, not prices.
WindowThe worked example and the lab use the common window of the holdings, Jan 1987 to Sep 2026 (477 months), ending at the data month of this page.
Rebalance datesYearly resets in December, quarterly in March, June, September and December, monthly every month; between resets the holdings drift with their own returns. The drift chart shows each month-end weight before the rebalancing trade.
SimulationEvery holding starts at its target weight in the first month of the window. Each month every holding's value grows by its own return, and the portfolio's return is the change in total value. A rule of never means buy and hold from the first month.simulatePortfoliopackages/portfolio/engine/portfolio.ts
Reset timingOn a rebalance month the reset happens at the end of the month, after that month's returns: the values are set back to target weight times total value. Rebalance months are fixed calendar months; there are no threshold bands.isRebalanceBoundarypackages/portfolio/engine/portfolio.ts
Costs and taxesNone. Trades are frictionless: no commissions, bid-ask spreads or taxes. More frequent schedules are therefore not charged for their extra trades.simulatePortfoliopackages/portfolio/engine/portfolio.ts
Data gapsEvery holding needs a return for every month of the common window; a missing month stops the simulation with an error instead of being skipped.simulatePortfoliopackages/portfolio/engine/portfolio.ts
Growth and volatilityCAGR is final value to the power 1/years, minus 1, with years = months / 12. Volatility is the sample standard deviation (divides by N − 1) of monthly returns times √12. The deepest decline is the largest fall of month-end value from its running peak.cagrpackages/portfolio/engine/metrics.ts
Sharpe ratioMean monthly return divided by its sample standard deviation, times √12, with a risk-free rate of 0. It is a return-to-volatility ratio, not an excess-return Sharpe ratio.sharpepackages/portfolio/engine/metrics.ts
Drift figuresThe tracked holding's weight is read at each month-end after that month's returns and before any reset; the largest gap from target over the window is the maximum drift. The build checks that this loop reproduces the engine's value curve.driftWeightscontent-engine/lab/compute.ts
Engine functionsThe functions the portfolio app and the MarketHeist MCP tools run, called here on the same monthly returns.simulatePortfoliopackages/portfolio/engine/portfolio.tsisRebalanceBoundarypackages/portfolio/engine/portfolio.ts

Portfolio rebalancing compared with its neighbours

Rebalancing rules compared
RuleWhen it tradesDrift allowedResets per yearOn MarketHeist
Never (buy and hold)NeverUnlimited; the mix follows the market0Simulated
YearlyEnd of DecemberUp to a year of market moves1Simulated
QuarterlyEnd of March, June, September and DecemberUp to a quarter of market moves4Simulated
MonthlyEnd of every monthUp to a month of market moves12Simulated
Threshold bandsWhen a weight leaves a band around its target, for example ±5 percentage pointsCapped by the bandVaries with marketsNot simulated

Limitations

  • The simulation charges no trading costs and no taxes. In a taxable account, selling holdings that have grown can realise capital gains, and each trade pays a spread; both weigh more on frequent schedules.
  • It is one portfolio over one historical path. Whether rebalancing helped or hurt growth depends on whether the holdings trended apart or reverted toward each other; another mix or another period can rank the schedules differently.
  • Only calendar schedules are simulated. Threshold bands, rebalancing with new contributions, and partial rebalancing are not.
  • Data are monthly. Moves within a month are not seen, so the drift figures are month-end values and a daily schedule cannot be tested here.
  • Long histories are extended backward with older funds or indexes where a fund is younger than the window, so early years approximate the fund rather than reproduce it.

Frequently asked questions

Does rebalancing yearly vs quarterly matter for a 60/40 portfolio?
In MarketHeist's monthly simulation over several decades, yearly and quarterly rebalancing gave nearly the same growth, volatility and Sharpe ratio; the worked example above shows the exact figures. The large difference was between rebalancing on any schedule and never rebalancing. Trading costs and taxes, which the simulation leaves out, add up faster on the more frequent schedule.
How often do investors rebalance?
Common choices are once a year, or whenever a weight drifts outside a band around its target. Research from Vanguard (Jaconetti, Kinniry and Zilbering, 2010) found that the choice of frequency mattered much less for risk-adjusted results than the decision to rebalance at all, once costs are counted.
Does rebalancing lower returns?
It can. When one holding keeps growing faster than the others, as stocks did against bonds, rebalancing keeps selling it, so a portfolio left alone ends up with more of it and grows faster. What rebalancing buys is a stable risk level, not extra growth.
What is the rebalancing bonus?
When holdings have similar long-run growth but move differently from month to month, rebalancing between them can add to the compound growth rate, an effect described by Booth and Fama (1992) as a diversification return. It depends on the holdings not trending apart; with a large gap in growth, as between stocks and bonds, it can be outweighed.
How does equal-weight rebalancing work?
Every holding has the same target weight. At each reset the holdings that rose most are trimmed and the ones that rose least are topped up until all are equal again, which is a built-in rule of selling relative winners and buying relative losers.
Why does MarketHeist rebalance in December?
Yearly resets use the calendar year-end, and quarterly resets the four quarter-ends, so results are reproducible and match common practice. Any fixed month gives a similar picture over long periods, though the exact figures, especially the deepest decline, depend on which months the resets fall in.

References

  1. Perold, A. F. and Sharpe, W. F. (1988) Dynamic Strategies for Asset Allocation. Financial Analysts Journal 44(1). Buy-and-hold versus constant-mix strategies.
  2. Booth, D. G. and Fama, E. F. (1992) Diversification Returns and Asset Contributions. Financial Analysts Journal 48(3).
  3. Jaconetti, C. M., Kinniry, F. M. and Zilbering, Y. (2010) Best Practices for Portfolio Rebalancing. Vanguard Research.
  4. Willenbrock, S. (2011) Diversification Return, Portfolio Rebalancing, and the Commodity Return Puzzle. Financial Analysts Journal 67(4).

Try it on your own holdings

Open the 60/40 portfolio and change its rebalancing schedule →

Or ask an assistant connected to the MarketHeist MCP server (https://marketheist.io/mcp), which computes the same figures:

Using MarketHeist, compare a 60% SPY / 40% BND portfolio rebalanced never, yearly, quarterly and monthly: CAGR, volatility, max drawdown and Sharpe over the common window

Ask an AI assistant

The prompt opens in a new tab. ChatGPT, Claude, Perplexity and Grok take it from the link; Gemini cannot, so its button copies the prompt for you to paste. An assistant without the MarketHeist connector answers from its own knowledge, not from the figures on this page.

Historical simulation, not advice. Computed by the MarketHeist portfolio engine from monthly total returns, data through Sep 2026. Markdown version of this page: rebalancing.md.