Toto (Time Series Optimized Transformer for
Observability) is a family of time series foundation models for multivariate forecasting developed by
Datadog. Toto 2.0 is the current generation, featuring u-μP-scaled transformers ranging from 4m to 2.5B parameters, all trained from a single recipe. Forecast quality improves reliably with parameter count across the family.
The family sets a new state of the art on three forecasting benchmarks:
BOOM, our observability benchmark;
GIFT-Eval, the standard general-purpose benchmark; and the recent contamination-resistant
TIME benchmark.
Inference code is available on
GitHub.
1import torch
2from toto2 import Toto2Model
3
4model = Toto2Model.from_pretrained("Datadog/Toto-2.0-4m")
5device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
6model = model.to(device).eval()
7
8# (batch, n_variates, time_steps)
9target = torch.randn(1, 1, 512, device=device)
10target_mask = torch.ones_like(target, dtype=torch.bool)
11series_ids = torch.zeros(1, 1, dtype=torch.long, device=device)
12
13# Returns quantiles of shape (9, batch, n_variates, horizon)
14# Quantile levels: [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9]
15quantiles = model.forecast(
16 {"target": target, "target_mask": target_mask, "series_ids": series_ids},
17 horizon=96,
18 decode_block_size=768,
19 has_missing_values=False,
20)
All five Toto 2.0 sizes share the same training recipe; pick a size based on your accuracy/latency budget. Latency is forward-pass time for a 1,024-step single-pass forecast at batch size 8 on a single A100.
1@misc{khwaja2026toto20timeseries,
2 title={Toto 2.0: Time Series Forecasting Enters the Scaling Era},
3 author={Emaad Khwaja and Chris Lettieri and Gerald Woo and Eden Belouadah and Marc Cenac and Guillaume Jarry and Enguerrand Paquin and Xunyi Zhao and Viktoriya Zhukov and Othmane Abou-Amal and Chenghao Liu and Ameet Talwalkar and David Asker},
4 year={2026},
5 eprint={2605.20119},
6 archivePrefix={arXiv},
7 primaryClass={cs.LG},
8 url={https://arxiv.org/abs/2605.20119},
9}