Back to all resources
TimesFM v3.0.2 Apache-2.0 code, weights vary PyTorch or MLX LIVE

Stop averaging last month to guess next month.

Projecting signups or revenue forward from a spreadsheet average ignores the pattern the actual data already contains. TimesFM is a pretrained model that takes a numeric time series, feeds, sales, anything with a timestamp, and forecasts it forward without you training anything. TimesFM 3.0 ranks first on three major forecasting benchmarks. Its pretrained weights are restricted to non-commercial use, which the code license alone does not tell you.

By Raj Singh · September 2026 · 32k stars · Rank #1, three benchmarks · 5 min read

WHAT IT LOOKS LIKE

A week of signups fed in on the left, a projected week fed out on the right, no manual seasonality tuning required. The same call handles a single series or a multivariate batch with covariates.

A dark dashboard showing a leverage curve, standing in for a forecast projected from historical data
History in, a forecast horizon outAgileSingh
BEFORE YOU INSTALL IT

3.0 weights are non-commercial only. The code is Apache-2.0, but TimesFM 3.0's pretrained weights carry a separate non-commercial license. Commercial or production use of the default 3.0 checkpoint is explicitly not permitted.

Weights up to 2.5 stay Apache-2.0. If you need this in a commercial product today, install the 2.5 weights, not 3.0. pip install timesfm==1.3.0 reaches the archived 1.0 and 2.0 code if you need those specifically.

No training required to start. It is a pretrained foundation model. Zero-shot forecasting on your own series works out of the box; fine-tuning with LoRA is an optional extra example, not a required step.

Apple Silicon skips PyTorch entirely. pip install timesfm[mlx] runs native MLX inference on a Mac with no PyTorch dependency at all, useful if you want this on a laptop rather than a GPU box.

Licence, in plain English: Apache-2.0 for the code always. For weights: 2.5 and earlier are Apache-2.0 too; 3.0 is non-commercial, non-production only, for now.

Honest limitA foundation model forecasts the pattern in the numbers you feed it. A demand shock nothing in your history predicts, a new product launch, a policy change, is exactly the kind of turn a pattern-based forecast will miss.
Read the whole setup

Get the setup that works.

Drop your email and unlock the rest: what you need, the install for your platform, which model version to pick for commercial use, and the first real forecast.

One email. No follow-up unless I ship something that fits.

WHAT YOU NEED
  • Python 3.10 or newer
  • PyTorch, or MLX if you are on Apple Silicon and want to skip it
  • A time series with a timestamp, even a rough one, to forecast against
INSTALL

PyPI for most people, MLX for Mac

The PyPI install is the fast path. Pick the 2.5 weights explicitly if commercial use matters, since the library defaults to the newest checkpoint otherwise.

The install

terminalPyTorch path
$ pip install timesfm[torch] → or: pip install timesfm[mlx] # Apple Silicon, no PyTorch

The local install path (git clone plus uv pip install -e .[torch]) is worth it only if you plan to read or modify the model code, not for normal use.

Prove itForecast a short synthetic series, a straight ramp or a simple sine wave, first. A projection that continues the visible pattern confirms the model loaded and ran correctly before you point it at real data.
CONFIGURE

The one setting that is actually a licence decision

Which checkpoint you load is not a performance tuning knob, it is the difference between a model you can ship and one you cannot.

model configcommercial-safe choice
# NOT for production/commercial use: checkpoint_path = "google/timesfm-3.0-pytorch" # Apache-2.0, safe for commercial use: checkpoint_path = "google/timesfm-2.5"
SettingDefaultWhy I change it
checkpoint_pathTimesFM 3.0Non-commercial license. Pin to a 2.5 checkpoint for anything shipping in a paid product.
context lengthup to 16k on 2.5Longer context costs more compute per forecast. Match it to how much real history you actually have, not the maximum.
CovariatesTimesFM 3.0 adds native multivariate forecasting with past-and-future covariates, useful for a metric with a known future input like planned ad spend. 2.5 supports covariates too, through XReg, with a slightly different API.
DAILY DRIVING

Feed it a series, get a horizon back

The workflow is the same whether you are forecasting signups, revenue, or support ticket volume. The only real variable is how far out you ask it to project.

  • Feed raw history. A plain array of numbers with a consistent time step is enough, no manual seasonality decomposition required first.
  • Ask for a specific horizon. A week, a month, a quarter, set explicitly rather than accepted at a default that may not match your planning cycle.
  • Treat it as one input, not the answer. A forecast informs a plan, it does not replace the judgment call about what to actually do with it.

Google's own use inside BigQuery ML and Connected Sheets is the same model, wrapped for people who would rather write SQL or use a spreadsheet than Python.

WHEN IT DRIFTS

Two failures, both configuration

Forecast looks flat or wrong
Context length is too short for the series' real seasonality. Feed more history, up to the 16k limit on 2.5, before assuming the model is wrong.
Legal flags the model in review
The default checkpoint is 3.0, which is non-commercial only. Point checkpoint_path at a 2.5 weight instead before it ships.
ResetThere is no local state to corrupt. Reinstalling the package and re-downloading the checkpoint from Hugging Face resolves nearly everything.
THE SHAPE OF IT

Where everything lives

src/timesfm/the 2.5 and earlier model code timesfm3-usage/TimesFM 3.0 usage examples and the evaluator API timesfm-forecasting/examples/finetuning/the optional LoRA fine-tuning example v1/archived 1.0 and 2.0 code, installable via `timesfm==1.3.0` tests/unit tests for the core layers and configs

Model weights download from Hugging Face on first use and cache locally. Nothing here needs a Google Cloud account unless you specifically want the BigQuery ML or Vertex integrations.

That is the whole setup

One pip install, one checkpoint choice that is really a licence choice, and a spreadsheet average stops being your forecasting method. Pick 2.5 the moment commercial use is on the table.

Open on GitHub →

↑ Unlocks the moment you submit the form above.

RS
WRITTEN BY

Raj Singh

I'm Raj Singh, founder of DebtOps.ai and a Claude certified partner. Over the last five years I've managed $25M in ads, built AI solutions for Fortune 100 companies, and installed AI operating systems and AI brains inside small businesses. Everything here is something I've shipped, debugged, or watched a client ship. My goal with AgileSingh is to make you irreplaceable in this AI age.

$25M
Ads managed · 5 yrs
F100
Enterprise AI builds
Claude
Certified partner
19
Guides shipped
More guides

Now wire the forecast into a decision.

A forecast is only useful once something acts on it. The AI infrastructure guide covers where a model like this fits into a real product stack instead of a one-off notebook.