> ## Documentation Index
> Fetch the complete documentation index at: https://docs.velyti.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Demand forecast

> How many units of each line the model expects to sell, what to buy against what is on the lot, and where its limits are.

The **Demand forecast** estimates how many units you will sell each month, by brand and line, and compares that demand with what you already have on the lot. You find it under **Analytics** in the side menu.

<Frame caption="The Demand forecast page.">
  <img src="https://mintcdn.com/steven-org/Veqecz06SlGfVx7e/images/en/forecast.png?fit=max&auto=format&n=Veqecz06SlGfVx7e&q=85&s=9927f5521d0c3dc1f8caef965fab2af0" alt="The Demand forecast page." width="1366" height="860" data-path="images/en/forecast.png" />
</Frame>

<Note>
  The forecast needs the **Demand forecast** module in your plan, and your role needs the **Forecast** permissions: **Predict** to see predictions, **Retrain** to train the model, and **Models** for the model itself. See [Users and roles](/administration/users-and-roles).
</Note>

## Before the first prediction

The forecast learns from your own sales history. Until someone trains the model, the page says **No model has been trained yet** and explains that forecasting needs a minimum number of months with contracts recorded.

* If your role can retrain, you see **Train the model**. Training takes several minutes and you can keep working; the app notifies you when it ends (**Model ready**, or **Training failed**).
* If your role cannot, the page says that the predictions will appear once an administrator trains the model.
* If your company does not yet have enough months of contracts, the app tells you so. Keep recording contracts and try again later.

## Predict a vehicle

<Steps>
  <Step title="Choose the vehicle">
    In **Vehicle**, search by brand or line. Only segments with enough history to predict are listed. A segment is a brand and line, such as "Mazda CX-5".
  </Step>

  <Step title="Set the horizon">
    **Horizon** is how many months ahead to look: 3, 6, 12, 18 or 24. The default is 6.
  </Step>

  <Step title="Set the range">
    **Range** is the chance that actual sales fall inside the forecast range: 80%, 90%, 95% or 99%. The default is 95%. A wider chance gives a wider range.
  </Step>

  <Step title="Press Predict">
    The result, **Expected sales**, gives a sentence such as "About N sales expected between two months (approximate range low to high)", a chart of **History** and **Forecast** with the **Approximate range** band, and a month-by-month table you can open with **Show as a table**.
  </Step>
</Steps>

The forecast is a range, not an exact number. A wide range means more uncertainty. See "Range" in the [Glossary](/help/glossary).

## What to buy

**What to buy** compares the expected demand for the next 3 months with the units on the lot, segment by segment. It uses an 80% range: 8 times out of 10, actual sales land inside it.

| Recommendation | Meaning |
| - | - |
| **Restock +N** | The lot does not cover even the low end of the range. N is the difference. |
| **Surplus N** | The lot exceeds even the high end of the range. |
| **Covered** | The lot falls inside the range. |

Each row also shows the demand, what you have on the lot (median days and capital) and the **Coverage**: how many months of expected sales the lot covers.

Some rows carry a note:

* **little history**: the segment has few months of sales.
* **no sales since** a month: the segment stopped selling.

Under the table the app says how many of your units the list covers, how many belong to lines without enough history, and how many quiet segments are not shown. If your role cannot see cars or motorcycles, the list says it excludes them.

## How far to trust it

<Warning>
  This is an estimate. Decide with what you see on the lot and in recent sales, and use the forecast as a guide.
</Warning>

**Model quality** shows when the model was trained, its version and its **Model reliability**: high, medium or low. The reliability depends on how much the model improves on repeating recent sales and how far off it is overall.

| Reliability | What the app advises |
| - | - |
| **high** | Use it to decide what to buy. |
| **medium** | Use it as a guide and compare it with what you see on the lot. |
| **low** | Take it with care: decide on what you see on the lot and in recent sales. |

The page also shows whether the model beats the **naive baseline**, which is the best free forecast: repeating the last observed month, or the average of the last three. If the model does not beat it, it adds nothing. Under **Technical detail** you find the error measures (RMSE, MAE, MAPE, WAPE and R squared), each with a one-line explanation, and **What drives the forecast**, the relative weight of each variable in the trained model.

### Limits to keep in mind

* The model only knows your sales up to the last month it learned. Later months count as no sales, and the page says so and asks you to retrain. If the data is too old, the forecast is paused until the model is retrained.
* A new or rare line has no history, so it is not listed.
* **Retrain the model** learns again from the whole sales history, takes several minutes and, when it finishes, replaces the current model for every prediction even if its metrics turn out worse. The list of vehicles that can be predicted may change. The app asks you to confirm.
* Only one training runs at a time. If the forecasting service is busy training, or is not available, the app asks you to try again in a few minutes.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.