There is a running joke in FP&A that the annual budget is obsolete by the second week of February. Market conditions shift, supply chains delay, and suddenly a static 12-month plan is just a historical document we have to explain variances against.
Most finance teams know they should be moving to a rolling forecast, continuously forecasting four to six quarters out so leadership always has a clear line of sight. The roadblock is usually the administrative burden.
Managing a rolling forecast in a spreadsheet is a mechanical headache. Every time a month closes, someone has to go into the master template, hide the closed month, add a new month to the end of the horizon, update all the SUM formulas to capture the new range, and make sure they didn't accidentally break a cell reference. It is tedious, error-prone work that keeps analysts busy doing data entry instead of analysis.
The deeper problem is structural. A spreadsheet doesn't know the difference between a closed period with real actuals and an open period with assumptions. Every cell looks the same. Protecting closed periods from accidental edits requires manual locking. Extending the horizon requires structural changes to the file. And when assumptions need updating, there is no systematic way to reseed open periods from the latest actuals without rebuilding the model.
A rolling forecast built on a native planning platform works differently at the architectural level. Every period in the forecast is explicitly classified as either open or closed, and those two states behave completely differently:
It is also worth noting that a closed period can reference a different measure from the open period ahead of it. This means actuals and forecast can live as separate, clean measures — Gross Revenue for closed periods, Forecast for open periods — while the series remains continuous without a break.
This distinction is what makes rolling forecasting operationally manageable. Closed periods are facts. Open periods are assumptions. The system knows which is which.
In Fabric Planning, closing a month is a three-step sequence rather than a manual restructuring exercise:
For teams with sufficient historical data, there is a more powerful alternative to manual assumption entry. Fabric Planning's built-in Predict engine uses historical actuals to infer trend and seasonality automatically, populating the full forecast horizon in a single run.
The minimum history window is 24 months, with two full years of actuals, the model can isolate genuine seasonal patterns rather than mistaking single-year anomalies for structural trends.
One practical note on access: Predict is available in both reading view and edit mode. Analysts reviewing the forecast can run a statistical prediction without switching to edit mode — useful in organizations where most users have read access and edit access is reserved for a smaller group of planners.
When the forecast runs, historical actuals render in grey and predicted values render in green, bounded by a confidence range showing the uncertainty band. The default confidence interval is 90% — the model is 90% confident the actual will land within the shaded band. Adjusting this percentage doesn't change the central forecast line, only the width of the uncertainty band shown in the preview. You can also layer a discretionary growth factor on top of the output — for example, adding a 4% market growth assumption on top of what the model predicts from history alone.

If you are not sure which algorithm fits your data, start with Auto ETS or Auto ARIMA. Both automatically test multiple configurations against your historical series and select the best-fitting one — no statistical expertise required. The table below is a simplified guide to the most common data patterns. For the complete algorithm reference, including all model orders and variants, see the Predict documentation.
| Data Pattern | Recommended Algorithm |
|---|---|
| Stable data with no trend or seasonality | Simple Exponential Smoothing |
| Trend only | Holt's Linear Trend |
| Trend gradually weakens | Holt's Damped Trend |
| Trend with constant seasonal variation | Holt-Winters Additive |
| Trend with seasonal variation proportional to the level | Holt-Winters Multiplicative |
| Multiple seasonal patterns | MSTL |
| Non-seasonal data with autocorrelation | ARIMA |
| Seasonal data | SARIMA |
| Unsure which ETS model to use | Auto ETS |
| Unsure which ARIMA model to use | Auto ARIMA |
Note: Auto ETS and Auto ARIMA are not limited to cases where you are unsure — they are valid choices for any dataset and a reliable default for most teams.
A finance team can move from a blank forecast horizon to a fully populated 12-month projection in a single step. When a period closes, the Reforecast action reseeds the newly opened month using the same statistical logic, keeping the rolling forecast active without a manual update cycle.
The monthly close transforms from a mechanical data-entry task into a review and judgment exercise, cutting forecast preparation from days to hours.
To see how to manage open/closed periods, run statistical predictions, and extend forecast range on a live dataset, work through Exercise E2 in the Fabric Planning training guide.
Hiding columns in Excel is purely visual, the underlying cells remain editable and vulnerable to broken formulas. In Fabric Planning, triggering Close Period permanently locks the closed time frame against data entry, replaces forecasted values with immutable actuals pulled directly from your semantic model, and recalculates downstream variances automatically. The distinction matters: hiding a column is cosmetic, closing a period is a governance action.
Future periods remain open and editable. When you execute Extend Forecast Range, the system appends the next forward period to maintain your configured rolling window of forward visibility — whether that's 12, 18, or any other number of months your team has set. You can then use Reforecast to seed that newly opened period from a reference source, such as prior-year actuals with an applied growth assumption, without rebuilding the grid layout. The trigger that locks an elapsed period is also configurable. Organizations running a consistent monthly close can automate the close action rather than triggering it manually from the ribbon each month.
They serve different purposes in the monthly workflow. Close Period is a governance action. It locks historical periods and commits finalized actuals from the semantic model. Reforecast is an assumption-seeding action. It populates open forward periods with baseline numbers derived from prior actuals, past forecast versions, or statistical models, so planners don't have to start from a blank slate. The two actions work in sequence: close the past, then seed the future.
Yes, a closed period can reference a different measure from the open period ahead of it. For example, closed periods can read from a Gross Revenue actuals measure while open periods read from a Forecast planning measure. The series remains continuous without a break, and actuals and forecast stay as separate, clean measures rather than being written into the same column. This is particularly useful for organizations that want to preserve a clear separation between actuals and planning data in the underlying Fabric SQL database.
Statistical models need at least two full annual cycles to distinguish recurring seasonal patterns, like Q4 retail spikes or summer demand dips, from one-off anomalies or baseline trend shifts. Running predictions with less than 24 months risks mistaking a single-year spike for a permanent structural trend, producing forecasts that overfit to noise rather than capturing genuine seasonality.
If you are uncertain, select Auto ETS or Auto ARIMA. The engine automatically backtests multiple model configurations against your historical series and selects the algorithm with the lowest statistical error rate. For data exhibiting multiple overlapping seasonal cycles, such as monthly revenue affected by both monthly and quarterly cadences, manually selecting Trend Decomposition with MSTL is the recommended starting point.
The confidence interval is the band within which the actual value is statistically expected to fall, given the variability in historical data. The default is 90%, meaning the model is 90% confident the actual will land within the shaded range. A wider band indicates more uncertainty in the data; a narrower band reflects a more stable, predictable pattern. The central line is the point estimate, the single most likely value, and is what gets saved when you commit the forecast. Adjusting the confidence percentage doesn't change the point estimate, only the width of the uncertainty band shown in the preview.
Yes, and Predict is available in both reading view and edit mode, so analysts reviewing the forecast can run a statistical prediction without needing edit access. Once the projection is committed, planners can apply manual cell-level overrides or layer discretionary growth factors directly over the baseline. Statistical Forecasting populates the open periods; those cells remain fully editable afterwards. Many teams use the model for the bulk of the horizon and apply manual overrides only where specific business context, a signed contract, a known supply constraint, should take precedence.
Most teams align the rolling forecast update to the monthly close cycle, one update per month, timed to when actuals become available in the semantic model. The close workflow (Close Period → Extend Forecast Range → Reforecast) is designed to be completed in a single session rather than a multi-day rebuild, so monthly cadence is operationally realistic. Some organizations run a lighter mid-month reforecast for specific categories or business units where assumptions change frequently, but the core rolling cycle is monthly for most finance teams.
Comments
0Please log in to comment.