Forecasting In Pigment

by gopigment6fec49f4ce9dNo license22 starsListed Oct 8, 2026Updated Oct 8, 2026Repository updated 2 days ago

Execution skill. Use when creating forecasts or choosing between growth-rate hypotheses and statistical forecasting functions.

AI-generated overview

Guides choosing between growth-rate and statistical forecasting approaches in Pigment planning models.

What it does
This skill explains two forecasting approaches in Pigment: growth-rate hypotheses applied to historical actuals, and built-in statistical formula functions. It provides a decision tree and comparison table for selecting functions such as FORECAST_LINEAR, SIMPLE_EXPONENTIAL_SMOOTHING, DOUBLE_EXPONENTIAL_SMOOTHING, SEASONAL_LINEAR_REGRESSION and FORECAST_ETS, plus parameter guidance for Alpha, Beta and seasonality. It also covers combining statistical forecasts with manual overrides and lists best practices.
When to use it
Use it when building or reviewing forecast models in Pigment and deciding between simple growth-rate assumptions and statistical forecasting functions. It is also relevant when tuning smoothing parameters or choosing a function based on trend and seasonality in the data.
Requirements
Requires the Pigment planning platform and its metric formula environment. It references other skills (building-versions-and-planning-cycles, choosing-formula-patterns, using-formula-functions) and assumes a Version dimension with Actual and Forecast items. It ships no scripts.

Forecasting in Pigment

Mandatory prerequisite: every forecast model MUST have a Version dimension with Actual and Forecast items. Load skill:building-versions-and-planning-cycles before creating any metrics.

For the correct time-offset formula pattern ([SELECT: Month-12] vs PREVIOUS), load skill:choosing-formula-patterns.

Two forecasting approaches with different setup effort, accuracy, and use cases.

Choose Among the Forecasting Approaches

ApproachWhen to useSetup effortAccuracy
Growth-rate hypothesesSimple budgets, top-down targets, early-stage planning with limited historyLowLow to medium (depends on assumption quality)
Statistical formula functionsFormula-driven forecasts with full modeler control over method and parametersMediumMedium to high (depends on data quality and function choice)

Approach 1 — Growth-Rate Hypotheses

Apply a growth rate to historical actuals or a base period.

pigment
'Forecast Revenue' =  IF(    'Is_Plan',    'Last Actual Revenue' * (1 + 'Growth Rate Input'),    'Actual Revenue'  )

When to prefer:

  • Less than 12 months of historical data
  • Business drivers well understood and stable
  • Management sets targets top-down (e.g. "grow 10% next year")
  • Planning process values simplicity over precision

Limitations: does not capture seasonality, trends, or non-linear patterns.

Approach 2 — Statistical Formula Functions

Built-in forecasting functions in metric formulas; modeler controls every parameter.

Function selection decision tree:

  1. Does the data have a seasonal pattern (repeating highs/lows at regular intervals)?
    • No → step 2
    • Yes → step 3
  2. Does the data show a trend (consistently increasing or decreasing)?
    • No trend → SIMPLE_EXPONENTIAL_SMOOTHING (level only; Alpha 0-1)
    • Linear trend → FORECAST_LINEAR (Value, Dimension) or DOUBLE_EXPONENTIAL_SMOOTHING (Value, Dimension, Alpha, Beta)
  3. Seasonal pattern type?
    • Additive or unsure → FORECAST_ETS (Value, Dimension, Seasonality) or SEASONAL_LINEAR_REGRESSION (Value, Dimension, SeasonalPeriod)
    • Strong multiplicative → FORECAST_ETS (closest built-in option)

Function selection guide:

FunctionPattern detectedBest forKey parameters
FORECAST_LINEARLinear trend onlySteady growth/decline without seasonalityValue, Dimension
SIMPLE_EXPONENTIAL_SMOOTHINGLevel (no trend)Stable series, noise reductionValue, Dimension, Alpha (0-1)
DOUBLE_EXPONENTIAL_SMOOTHINGLevel + linear trendTrending series without seasonalityValue, Dimension, Alpha, Beta
SEASONAL_LINEAR_REGRESSIONLinear trend + seasonalityMonthly/quarterly data with repeating seasonal patternsValue, Dimension, SeasonalPeriod
FORECAST_ETSLevel + trend + seasonalityComplex seasonal data (additive Holt-Winters)Value, Dimension, Seasonality

Parameter guidance:

  • Alpha (smoothing): 0.7-0.9 reacts faster to recent changes; 0.1-0.3 smoother forecasts. Start with 0.3.
  • Beta (trend smoothing): similar range as Alpha; lower values dampen trend changes.
  • Seasonality / SeasonalPeriod: must match data's natural cycle. 12 for monthly/yearly, 4 for quarterly, 52 for weekly.
  • All functions require sufficient historical data on the time dimension. At least 2 full seasonal cycles recommended for seasonal functions (24 months for monthly).

For detailed function syntax and examples, see skill:using-formula-functions (forecasting functions section).

Example — monthly sales with yearly seasonality:

pigment
'Forecast Sales' =  IF(    'Is_Plan',    FORECAST_ETS('Actual Sales', Month, 12),    'Actual Sales'  )

When to prefer: modeler wants full control, transparent formula, moderate data volume with well-understood patterns.

Combining Approaches

Statistical forecast + manual overrides:

pigment
'Final Forecast' =  IFBLANK(    'Manual Override',    FORECAST_ETS('Actuals', Month, 12)  )

Best Practices

  • Validate forecasts against holdout data when possible
  • Match forecast granularity to planning granularity
  • For seasonal functions, provide at least 2 full cycles of history
  • Document approach and parameters for reproducibility
  • Forecasts typically apply to Budget or Forecast versions, not Actuals; use IF('Is_Plan', ...) to guard forecast formulas

Source and attribution

Source:gopigment/ai-pluginsinskills/forecasting-in-pigmentat commit6fec49f

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal