finds.dev

Nixtla/hierarchicalforecast

Probabilistic Hierarchical forecasting 👑 with statistical and econometric methods.

View on GitHubHomepage ↗

★ 763PythonApache-2.0updated Oct 2026

// the take

A reconciliation library for hierarchical and grouped time series: given base forecasts for every node in a hierarchy (e.g. total sales down to store/SKU), it adjusts them so they sum correctly across levels. For teams already using Nixtla's statsforecast/mlforecast/neuralforecast to generate the base forecasts and who need those forecasts to actually add up for planning or finance.

Covers the full method space, not just BottomUp/TopDown — MinTrace, ERM, and probabilistic variants (Bootstrap, PERMBU, Conformal) that most reconciliation code never bothers implementing. The matrix-heavy parts (reconciliation math) are implemented in C++ against Eigen rather than pure pandas/numpy loops, which matters once you're reconciling thousands of series. It handles temporal hierarchies with the same API as cross-sectional ones, which is genuinely rare — most libraries pick one. The methods are faithful to the published statistical literature (Hyndman/Wickramasuriya) rather than home-grown heuristics, backed by their own arXiv paper.

This only reconciles — it produces nothing on its own. You need base forecasts from statsforecast, mlforecast, neuralforecast, or your own model, which means buying into Nixtla's unique_id/ds/y conventions and building the summing matrix (S_df) and tags dict yourself; that's real integration work before you see any value. MinTrace and ERM require inverting a covariance matrix sized to your hierarchy, and nothing in the docs addresses how that scales once you have a few thousand nodes — you'll find out the hard way. It's a single-company project (Nixtla), and their public attention is clearly on TimeGPT now; a C++ extension with few maintainers is a bad place to be stuck debugging if something breaks. No guidance anywhere on memory or runtime cost for large hierarchies — all the examples are toy datasets (tourism, 500-ish series).

We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →

// at a glance

Stars
763
Forks
99
Language
Python
License
Apache-2.0
Last commit
19 Oct 2026

// nearby

If hierarchicalforecast isn't quite it.

All repos →