---
title: Period Accuracy
description: Period Accuracy provides the ability to compute error metric values for specific periods of the backtest validation source.
section_name: Time Series
maturity: public-preview
---

# Period Accuracy {: #period-accuracy }


!!! info "Availability information"
    The Period Accuracy insight is off by default. Contact your DataRobot representative  or administrator for information on enabling the feature.

    **Feature flag:** Period Accuracy Insight

In some use cases, certain time periods can have more significance than others. This is particularly true for financial markets&mdash;for example, a trader may only be interested in seeing the performance of a model over the first 4 hours of each trading day. **Period Accuracy** gives you the ability to specify which are the more important periods within your training dataset, which DataRobot can then provide aggregate accuracy metrics for and surface results on the Leaderboard.

Using a selected optimization (accuracy) metric, you can use the **Period Accuracy** insight to compare these specified periods against the metric score of the model as a whole. In the example above, seeing the RSME for the validation period of a model does not provide much insight into the performance of that model when it really matters most to the trader. 

![](images/period-accuracy-1.png)

To use the insight, simply:

1. Upload a period file and import it to a project after models are built.  
2. Set filters for calculating period performance.

The insight is available for both OTV and single- and multiseries time series projects in **Evaluate > Period Accuracy**.

## Create a period file {: #create-a-period-file }

The first step in using **Period Accuracy** is to create a period file. Similar to calendar files, the period file indicates the name of the periods, its start date/time (and by that, its duration). Unlike calendar files, which support ranges, the period file is a two-column CSV that includes:

1. **Column 1:** The date/time column. 

	This is the feature used to build the project; its label must match the name of the feature exactly. The data populating the date/time feature column should represent all the time steps you want to visualize in the insight. For example, if the project has daily data from January 30, 2022 through February 8, 2023, and you want to visualize all of that data, the first column would contain 374 entries, one per date in that range.

2. **Column 2:** The period column.

	The period column represents how you would like to group the data in the insight&mdash;it represents the core of what the insight should visualize, giving more information about the accuracy of the model within the defined subset of the data, so define it based on how you want to understand your data. In the above example, you could:

	* Mark all dates in January as members of the January bucket by entering the string `January` in column 2 for every applicable date. Next, mark all dates in February as `February`, etc.

	* Group by weekday by labeling each Sunday with the string `Sunday`, each Monday with the string `Monday`, etc.

	* Represent dates corresponding to Monday through Friday as the string `weekday` and the dates corresponding to Saturday and Sunday as `weekend`.

![](images/period-accuracy-2.png)

Once the period file is created, save it locally or upload it to the AI Catalog.

### Time steps in a period file {: #time-steps-in-a-period-file }

Defining specific time periods within a date feature is dependent on the granularity of your data (e.g., you need hourly data to view hourly predictions). To show results that match data granularity, add multiples rows in the period file to match the times of interest. For example:

Your date/time feature is `date` and you have hourly data for each day. You are interested in sales between 11:00am and 1:00pm each weekday. Your period file would look like:

![](images/period-accuracy-3.png)

## Generate Period Accuracy {: #generate-period-accuracy }

**Period Accuracy** must be computed for each model in a project. However, once a period file is uploaded to one model in the project, it is available to all models. You can upload multiple period files to a project, which may be useful for examining data in different ways (for example, each day, weekday vs weekend, etc.).

To view insights, open a model's **Period Accuracy** tab and, using the dropdowns, set filters for calculating period performance. Only project-applicable filters are visible.

Filter | Description
------ | -----------
Period file | Select a [period file](#create-a-period-file). From there, you can also: <br /> <ul><li> Upload a new period file, either directly or from the AI Catalog. </li><li>Remove an uploaded file from the insight. This action will not delete the file from the AI Catalog.
Backtest | Select the backtest to display results for. Although DataRobot runs all backtests when building a project, you must individually train a backtest's model and compute its validation predictions before viewing period insights for that backtest. If you select a backtest that is not yet calculated, DataRobot will prompt to run calculations. 
Series to plot (_multiseries only_) | If the project is multiseries, select a series to plot. 
Forecast distance (_time series and multiseries only_) | Set the window of time to base the visualization on. See more details in [**Accuracy Over Time**](aot#change-the-forecast-distance).

Click **Compute period insights** to start calculations. Once computed, changing any filter&mdash;other than series, where applicable&mdash;requires rerunning the calculations.

## Interpret Period Accuracy {: #interpret-period-accuracy }

When calculations are complete, DataRobot displays a table reflecting results based on the validation data. You can also generate over time histograms.

Field | Description
----- | -----------
Period name | The name of the period, identified by column 2 in the period file.
Observations | The number of data points that fall within the defined period. The period is based on the applied period file and filters (backtest, series, and forecast distance, as applicable). 
Earliest/latest date | The first and last timestamp found in the period.
Predicted/Actual | The average predicted and actual values observed in the selected backtest.
Metric <metric>* | The performance of the observation for the period. In other words, if you were to create a project with just this period in the validation data, the displayed value is the value that would display on the Leaderboard. The red/green values below the score indicate the percentage variance from the Leaderboard score. Note that "preferedness" of a score (red/green, up/down) is dependent on the metric type.
**Plot over time** | A link to display the Over Time chart for the selected period. Click and scroll down to see the histogram.

\* You can change the reported metric using the Leaderboard dropdown: 

![](images/period-accuracy-4.png)

When you click **Plot over time**, the histogram shows a point for each observation in the selected period, visualizing actual and predicted values. This helps to understand how the model performs on each row of the period of interest.


![](images/period-accuracy-5.png)


## Considerations {: #considerations }

Consider the following when working with **Period Accuracy**:

- Only the first 1000 series are computed.
- Maximum period file size is 5MB. An unlimited number of files are allowed.
- Insight export is not supported.