finance-business · personal-finance · saving-investing

Asset Allocation Rebalancing Calculator

Works out what to trade to bring a portfolio back to its target weights, and answers the two questions most rebalancers skip: whether the drift is far enough past your tolerance band to be worth trading on at all, and how much of the job a contribution directed at the underweight holdings can do without selling anything. Use it before placing trades, to see what a sale would cost you and whether new money can spare you one.

Last updated
Repeating-Item Builder

Calculator overview

Inputs and outputs

This summary comes from the calculator's published input and output contract.

Inputs

New Money
When omitted Blank
About this input

Optional. Money you are about to put in anyway, which the plan directs at the holdings that are furthest short before anything is sold. Leave it blank if there is none. This is the field most rebalancers do not have, and it is often the whole answer: a contribution a little under twice the sale a rebalance would need will remove the sale entirely, with no spread and, outside a tax wrapper, no disposal.

Unit $ Default Not set Range At least 0
Trading Cost Rate
When omitted Blank
About this input

Optional. What a trade costs you as a share of its value, covering commission and half the bid-offer spread. Leave it blank and the plan is costed at nothing, which is honest about what the model knows rather than a claim that trading is free. A quarter of a percentage point is a plausible figure for a retail fund trade and is not a quote.

Unit fraction Default Not set Range 0 to 0.05
Drift Band (required)
About this input

How far a holding may wander from its target before you are willing to trade. Five percentage points is a common convention and is what the workbook opens on: on a sixty percent target that means acting at sixty-five or at fifty-five. It is the single most consequential figure here. Set it to zero and you will be told to trade on a tenth of a point, which is noise with a spread attached; widen it and the same portfolio needs no trade at all. A drift exactly on the band is inside it.

Unit fraction Default 0.05 Range 0 to 0.25
Holdings Grid (required)
About this input

One row per holding, up to eight: what it is worth today and what share of the portfolio you want it to be. Enter the shares as percentages or as plain weights; they are divided by their own total, so a set that does not add to a hundred is rescaled rather than refused. The name column is yours to read and no formula ever looks at it. Leave unused rows blank and keep them at the bottom, because a filled row below a blank one is refused rather than quietly skipped.

Default 2 rows
ColumnRange or allowed values
Holding Not declared
Value now At least 0
Target share 0 to 1

Outputs

Table1 Funding Values
About this output

The body of the grid: how much selling you would still have to do, recomputed for every combination of contribution and band. One hundred and twenty-one cells, each one the whole plan run again. It is a component of the table rather than a result on its own.

No unit declared
Total After
About this output

The same total with any contribution added. The target value of each holding is its share of THIS, not of the portfolio as it stands, which is why adding money changes every target value and not just the ones being bought.

Unit $
Table1 Funding Row Input
About this output

Machinery, and NOT an input. Excel substitutes each value from the row axis into this cell while it fills the grid; the rest of the time it mirrors New_Money. Change New_Money above, never this: the axis is derived from the holdings and the model reads this cell, so editing the mirror desynchronises the two and the grid comes out meaningless.

Unit currency
Table1 Funding Corner
About this output

Machinery. Excel requires the formula being tabulated to sit in the grid's top-left corner, where it means nothing to a reader, so it is formatted away. It holds Selling_Still_Required.

Unit currency
Table1 Funding Row Axis
About this output

The values down the left of the grid: how much new money you bring. It runs from nothing up to about two and a half times the sale a rebalance would take with none, in five equal steps either side of your own figure, floored at nothing because you cannot contribute less than that. Read a row to hold the contribution fixed and vary the band. The middle entry is your own figure.

No unit declared
Worst Drift
About this output

The largest distance any holding has travelled from its target, in either direction, as a share of the portfolio. This is the figure your band is compared with, and it is deliberately the worst rather than the average: an average drift hides the one holding that has run away.

Unit fraction
Worst Drift In Money
About this output

The same distance expressed in money, which is what makes the band decision concrete. Ten points of drift on a small portfolio is not worth a trading cost; the same ten points on a large one is.

Unit $
Trading Cost
About this output

What every trade in the plan costs at the rate you entered, buying and selling alike. Note that a contribution does not always reduce this: it removes selling but adds buying, so on a portfolio whose underweight holdings carry more than half the target weight the total turnover can rise even as the sale shrinks. The figure below is the one that isolates the rebalancing part.

Unit $
Total Now
About this output

What the holdings add up to today. Every weight and every drift is measured against this figure, so a holding left out of the grid shifts all of them.

Unit $
Total To Buy
About this output

How much buying the plan calls for in total. When a rebalance is called for this is the whole purchase side of it; when it is not, it is just the contribution going to work, because money you are adding still has to be invested somewhere.

Unit $
Rebalance Needed
About this output

Whether the worst drift is past your band, with both figures stated so the verdict can be checked at a glance. A drift exactly on the band reads No: the test is strictly greater, which matches the convention the band comes from.

No unit declared
Rebalance Plan
About this output

One row per holding you entered: where it sits now, where it should sit, how far apart those are, what it should be worth after the trade, the trade itself and how much of that trade your contribution pays for. A trade is positive to buy and negative to sell. Unused rows are blank rather than zero, so an empty row is visibly empty rather than looking like a holding worth nothing.

No unit declared
Model Status
About this output

Reads OK, or explains why the inputs are not valid or why the answer deserves a second look.

No unit declared
Cost Of The Sale
About this output

What the sale and the purchase it funds cost between them, which is the cost the rebalancing itself is responsible for. Buying with new money would have happened anyway, so charging it to the rebalance overstates what rebalancing costs you. This figure falls whenever the contribution does more of the work, and that is the comparison to make.

Unit $
Holdings Counted
About this output

How many rows of the grid the model is actually reading. Shown because a row the tool has skipped is invisible otherwise, and a portfolio short of one holding gives a confidently wrong answer.

Unit count
Table1 Funding Column Axis
About this output

The values across the top of the grid: how much drift you will tolerate. It steps by a fifth of the drift you actually have, so the column where your band starts absorbing that drift is always somewhere on the axis. Read a column to hold the band fixed. The middle entry is your own figure.

No unit declared
Table1 Funding Column Input
About this output

Machinery, and NOT an input. The same for the column axis: Excel substitutes into it while filling the grid, and the rest of the time it mirrors Drift_Band.

Unit fraction
Selling Without Contribution
About this output

What you would have to sell if you brought no new money at all. It is here purely to be read against the figure below it: the gap between the two is what the contribution is worth to you, and that gap is the point of the whole tool.

Unit $
Sale Avoided By Contribution
About this output

The two figures above, differenced: how much selling the contribution has spared you. In a taxable account this is the number to weigh, because a sale avoided is a gain not realised, and no rebalancer we could find reports it.

Unit $
Selling Still Required
About this output

How much you actually have to sell, after the contribution has been directed at the shortfalls and after your band has had its say. Zero means the job is done without a disposal. This is the headline figure and it is the one the grid at the foot of the sheet sweeps.

Unit $
This page is provided by LogicCommons for informational purposes only. Results are model outputs computed from the inputs you supply and are not financial, investment, tax, accounting, or legal advice, and no advisory relationship is created. Verify all inputs and results independently before relying on them in any decision.

LogicCommons is in beta. If a result, label, or reference looks wrong, tell us here; we read every message.

Methodology

Purpose and model boundary

Use this to see what a portfolio needs traded to return to its target weights, and to answer the two questions a plain rebalancing table skips: whether the drift is actually outside the band you set, and whether new money alone can fix it without selling anything.

This works from the holdings you enter at the values you enter. It does not fetch prices, and it does not consider the tax consequences of a sale, which are often the deciding factor in whether to rebalance by selling at all.

Inputs and units

Input Unit Accepted range What it means
Holdings Grid One row per holding One row per holding, up to eight: what it is worth today and what share of the portfolio you want it to be. Enter the shares as percentages or as plain weights; they are divided by their own total, so a set that does not add to a hundred is rescaled rather than refused. The name column is yours to read and no formula ever looks at it. Leave unused rows blank and keep them at the bottom, because a filled row below a blank one is refused rather than quietly skipped.
New Money $ 0 or more Optional. Money you are about to put in anyway, which the plan directs at the holdings that are furthest short before anything is sold. Leave it blank if there is none. This is the field most rebalancers do not have, and it is often the whole answer: a contribution a little under twice the sale a rebalance would need will remove the sale entirely, with no spread and, outside a tax wrapper, no disposal.
Drift Band % 0% through 25% How far a holding may wander from its target before you are willing to trade. Five percentage points is a common convention and is what the workbook opens on: on a sixty percent target that means acting at sixty-five or at fifty-five. It is the single most consequential figure here. Set it to zero and you will be told to trade on a tenth of a point, which is noise with a spread attached; widen it and the same portfolio needs no trade at all. A drift exactly on the band is inside it.
Trading Cost Rate % 0% through 5% Optional. What a trade costs you as a share of its value, covering commission and half the bid-offer spread. Leave it blank and the plan is costed at nothing, which is honest about what the model knows rather than a claim that trading is free. A quarter of a percentage point is a plausible figure for a retail fund trade and is not a quote.

Governing relationships

Each holding's current weight is its value over the portfolio total; drift is that weight less its target. The worst drift across the holdings is compared with the band to answer whether a rebalance is needed at all.

Where a contribution is supplied it is allocated to the underweight holdings first, and the calculator reports how much selling remains after it has been spent. That remainder is the figure that decides whether the rebalance can be done with new money alone.

Calculation sequence

  1. Total the holdings you entered.
  2. Divide each holding's value by that total for its current weight, and subtract its target for its drift.
  3. Compare the worst drift against your band to decide whether a rebalance is called for at all.
  4. Add the contribution to the total, and compute each holding's target value and the trade that reaches it.
  5. Allocate the contribution to the underweight holdings first.
  6. Report how much selling remains once the contribution has been spent: the figure that decides whether new money alone is enough.
  7. Apply the trading cost rate to the amount actually traded.

Outputs and interpretation

Output Role Unit What it means
Worst Drift primary % The largest distance any holding has travelled from its target, in either direction, as a share of the portfolio. This is the figure your band is compared with, and it is deliberately the worst rather than the average: an average drift hides the one holding that has run away.
Rebalance Needed primary Whether the worst drift is past your band, with both figures stated so the verdict can be checked at a glance. A drift exactly on the band reads No: the test is strictly greater, which matches the convention the band comes from.
Selling Still Required primary $ How much you actually have to sell, after the contribution has been directed at the shortfalls and after your band has had its say. Zero means the job is done without a disposal. This is the headline figure and it is the one the grid at the foot of the sheet sweeps.
Total After detail $ The same total with any contribution added. The target value of each holding is its share of THIS, not of the portfolio as it stands, which is why adding money changes every target value and not just the ones being bought.
Worst Drift In Money detail $ The same distance expressed in money, which is what makes the band decision concrete. Ten points of drift on a small portfolio is not worth a trading cost; the same ten points on a large one is.
Trading Cost detail $ What every trade in the plan costs at the rate you entered, buying and selling alike. Note that a contribution does not always reduce this: it removes selling but adds buying, so on a portfolio whose underweight holdings carry more than half the target weight the total turnover can rise even as the sale shrinks. The figure below is the one that isolates the rebalancing part.
Total Now detail $ What the holdings add up to today. Every weight and every drift is measured against this figure, so a holding left out of the grid shifts all of them.
Total To Buy detail $ How much buying the plan calls for in total. When a rebalance is called for this is the whole purchase side of it; when it is not, it is just the contribution going to work, because money you are adding still has to be invested somewhere.
Rebalance Plan detail One row per holding you entered: where it sits now, where it should sit, how far apart those are, what it should be worth after the trade, the trade itself and how much of that trade your contribution pays for. A trade is positive to buy and negative to sell. Unused rows are blank rather than zero, so an empty row is visibly empty rather than looking like a holding worth nothing.
Cost Of The Sale detail $ What the sale and the purchase it funds cost between them, which is the cost the rebalancing itself is responsible for. Buying with new money would have happened anyway, so charging it to the rebalance overstates what rebalancing costs you. This figure falls whenever the contribution does more of the work, and that is the comparison to make.
Holdings Counted detail count How many rows of the grid the model is actually reading. Shown because a row the tool has skipped is invisible otherwise, and a portfolio short of one holding gives a confidently wrong answer.
Selling Without Contribution detail $ What you would have to sell if you brought no new money at all. It is here purely to be read against the figure below it: the gap between the two is what the contribution is worth to you, and that gap is the point of the whole tool.
Sale Avoided By Contribution detail $ The two figures above, differenced: how much selling the contribution has spared you. In a taxable account this is the number to weigh, because a sale avoided is a gain not realised, and no rebalancer we could find reports it.

Model Status reads OK, or explains why the inputs are not valid or why the answer deserves a second look. It is shown alongside the results rather than in place of them.

The calculator also returns a grid that reruns the calculation across two varying assumptions at once. Its axes, corner and body arrive as separate outputs and are the grid's parts rather than results to read on their own; the page assembles them into the table.

Every figure above is returned by the workbook. The page arranges and formats them; it computes none of them.

Validation and status logic

The workbook returns one status alongside the figures. These are the states its delivered test cases exercise, so the list records what it has been observed to return rather than every branch it could take; a figure that moves with the inputs is shown as .

Outcome Returned status
Answers, and flags it CHECK: no holding has drifted further than your band, so there is nothing here worth trading
Answers, and flags it CHECK: your band is zero, so you will be told to trade on any drift at all, however small; that is noise with a spread attached
Answers plainly OK

Assumptions and limitations

  • Holdings are valued at the figures you enter; nothing is priced live.
  • Tax on a sale is not modelled, and it is often the deciding factor in whether to rebalance by selling at all.
  • The trading cost is one rate applied to the traded amount; spreads, minimum commissions and market impact are not modelled.
  • A contribution is allocated to the underweight holdings; it cannot correct an overweight one, which is why selling can still be needed after it is spent.
  • Target weights are yours to set. The calculator does not judge whether they suit you.

Restrictions and non-computing states

The declared bounds are enforced before the calculation runs, so a value outside them is refused rather than answered:

  • New Money: 0 or more.
  • Drift Band: 0% through 25%.
  • Trading Cost Rate: 0% through 5%.

The optional inputs may be left blank. A blank is the empty string rather than a zero, and the calculator reads it as "not supplied" rather than as a value of nothing. Those are different answers, not the same one.

Errors and warnings

CHECK is not an error: the arithmetic is sound and the figures stand, but something about the combination is worth knowing before the answer is used: an assumption at the edge of its range, a comparison that has collapsed to a single case, or a result whose sign is the opposite of what the page's framing suggests. The status is shown with the results rather than in place of them, so a flagged answer is still a readable one.

References

Rebalancing means making regular adjustments to bring a portfolio back to its target allocation, and it can be done by selling what has run ahead, by buying what has fallen behind, or by redirecting new contributions towards the holdings that are lagging. FINRA sets out all three, and notes that there is no official timeline for doing any of them, in its guidance on asset allocation and diversification.

For the role of target weights in an allocation, and for the choice this calculator's drift band represents, see the U.S. Securities and Exchange Commission's Beginners' Guide to Asset Allocation, Diversification, and Rebalancing. It describes rebalancing on the calendar, at a regular interval, and the alternative of rebalancing only when a holding's weight has moved more than a percentage identified in advance, which is the band this calculator asks you for.

These sources provide background; they do not supply the calculator's assumptions or certify its result. This calculator is informational and is not financial, investment, or tax advice. Results follow directly from the rates and amounts you enter, which are assumptions rather than forecasts.

Results are informational and not professional advice. See our Terms of Use. Powered by SpreadsheetWeb · About · Privacy · Terms