Skip to main content

Branching in Aire

A branch is an isolated version of your model. You start from a base version, change whatever you need (inputs, formulas, even structure), and run the full model on the branch. Nothing you do in a branch can alter the base case. Branching is how a team explores cheaply and safely. Stress-test a capacity assumption, model revised offtake terms, or run a downside case, all without risk of propagating a change into the canonical model. Because a branch can’t touch the base, exploring no longer has to be gated up front, and the whole team can branch from the current model at the same time. This page covers how branches relate to the base case, how values flow between them, and how to compare them. For combining alternate assumptions into named project versions, see Scenario Analysis.

Branch vs. Clone

When you create a new version of your model, you choose how it relates to its source: A clone is a branch that has been cut loose at birth: the same starting point, but it stops tracking the source the moment it’s created. Branches are the default for exploration; clones are for a frozen point-in-time copy. To create one, open the scenario panel, choose New scenario, and select Branch or Clone. To spin up several related scenarios at once, choose Label group.

Organizing scenarios with labels

As a project accumulates branches, labels keep them navigable. A label is a tag that groups related scenarios in the scenario panel and the scenario index, for example “Q4 refinance”, “Texas site”, or “downside”. Scenarios that share a label appear together, and any without one sit under “Ungrouped”. When you create scenarios, the Label group option lets you spin up several at once under a shared label instead of one at a time. It is the tidiest way to set up a cohort of related cases, such as one branch per candidate site or one per financing structure.

How values flow: inherited vs. overridden

A branch starts out inheriting every value from its parent. As edits land in the parent (a new vendor quote, updated power pricing, revised financing terms), they flow through to the branch automatically for any value you haven’t changed. Your branch stays current with the base instead of drifting. The moment you change a value in the branch, that value becomes an override: it holds independently and no longer tracks the parent. Everything you haven’t touched keeps inheriting. This is what lets you change one assumption and trust that the rest of the model is still up to date.

Comparing branches

Comparison is where branching pays off. Open the comparison view to put branches side by side, up to three at once, and the differences surface on their own, inputs and downstream outputs together, so you read where the model diverged instead of hunting for it cell by cell.
  • Inputs and outputs together. See the values you changed and the IRR, NPV, LCOE, and cash flows they moved, in one view.
  • Override vs. inherited. The comparison marks which values are overrides and which are inherited, so it’s clear what’s actually driving a difference.
  • Honest units. Cells with mismatched units are projected into the base’s unit before variance is calculated, so comparisons reflect real differences rather than unit mismatches.
  • Live. Compare columns refresh when a teammate edits a branch you’re watching, without a manual reload.
Because you always compare against the current base case, not a copy that has drifted out of date, the comparison stays honest as the base model moves.

Detaching a branch

If a branch should become independent and no longer track its parent, use Detach from parent. Detaching resolves the branch’s current effective values into a standalone version and removes the parent link. From that point it behaves like a clone: it keeps its values and stops inheriting.

Who can branch

Branching follows project access. Anyone with edit access can create branches, override values, and compare. Viewers have read-only access: they can review branches and comparisons but can’t create or edit. There is not yet a separate approval-only role. See Roles & Permissions for the full access model.

How branching relates to scenarios

  • Scenario Analysis. Branches are how you build and explore the project versions you compare. Use branching to create the alternatives, and use scenario analysis to reason about the range of outcomes across them.
  • Project History. Each branch carries its own history, so you can trace how a version evolved over time.