---
title: "Stress Level Calculator Tool"
slug: "stress-level-calculator-tool"
updated: 2026-06-16T07:21:48Z
published: 2026-06-16T07:21:48Z
canonical: "support.controlup.com/stress-level-calculator-tool"
---

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

# Stress Level Calculator Tool

The **ControlUp Stress Calculator** analyses historical performance data exported from your ControlUp environment and generates recommended yellow and red stress threshold values per organizational folder. These recommendations can then be applied directly in the Real-Time DX Console's [Stress Settings](/tim-reorg/docs/stress-settings).

You can use the [Export-CUQuery](/tim-reorg/docs/export-cuquery) PowerShell cmdlet to calculate suggested stress thresholds for most available metrics in ControlUp.

Note that the tool produces **recommendations** based on your environment's own data. Always review the output **before** applying changes in your production environment.

![ControlUp Stress Calculator tool calculations tab](https://cdn.document360.io/098100b7-b9da-4bea-b4b9-017140ab863e/Images/Documentation/VDIStressCalculatorCalculations.png)

## Updates in Current Version

- **Configurable percentiles**: Yellow and red thresholds are no longer fixed at 75/90. Both are adjustable per run.
- **Time filtering**: You can filter files to working hours and weekdays, ensuring thresholds reflect production load.
- **Improved decimal separator handling**: Detected automatically, with manual override available.
- **Cross-platform**: Native executables available for both Windows (.exe) and macOS (.app).
- **Automated mode**: Full CLI support for scheduled or scripted runs.
- **Processing indicator**: Spinner next to the Process Data button gives visual feedback during longer runs.

## Prerequisites

- **Windows** or **macOS** machine with the [calculator](/v1/docs/stress-level-calculator-tool#downloads)
- **At least one ControlUp Monitor installed** to import the **ControlUp.PowerShell.User** module. Includes the [**Export-CUQuery**](/v1/docs/export-cuquery) Powershell cmdlet that allows you to export monitor data to a CSV file.
- **CSV** exports from the ControlUp for VDI Web App or files generated by the **Metrics Exporter** script action
- **PowerShell version 5 or higher**

## Downloads

- **Stress Level Calculator for Windows**: Download the latest version as a ZIP file:

[ControlUp Stress Calculator Windows](https://cdn.document360.io/098100b7-b9da-4bea-b4b9-017140ab863e/Images/Documentation/ControlUp_Stress_Calculator_v4.0.0_Windows.zip) 100.18 MB

[](https://cdn.document360.io/098100b7-b9da-4bea-b4b9-017140ab863e/Images/Documentation/ControlUp_Stress_Calculator_v4.0.0_Windows.zip)
- **Stress Level Calculator for macOS**: Download the latest version as a DMG file:

[ControlUp Stress Calculator macOS](https://cdn.document360.io/098100b7-b9da-4bea-b4b9-017140ab863e/Images/Documentation/ControlUp_Stress_Calculator_v4.0.0_macOS.dmg) 99.85 MB

[](https://cdn.document360.io/098100b7-b9da-4bea-b4b9-017140ab863e/Images/Documentation/ControlUp_Stress_Calculator_v4.0.0_macOS.dmg)

## Supported Data Sources for Monitor Calculations Exports

The Calculator works with any combination of the following CSV export types:

- [App Delivery Controllers](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#netscalers)
- [Computers](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#computers)
- [Datastores](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#datastores)
- [Datastores on Hosts](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#datastores-on-hosts)
- [Folders](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#folders)
- [Gateways](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#gateways)
- [Hosts](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#hosts)
- [Load Balancers](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#loadbalancers)
- [LB Service Groups](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#lbservicegroups)
- [LB Services](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#lbservices)
- [Logical Disks](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#logicaldisks)
- [Sessions](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#sessions)
- [Virtual Disks](https://support.controlup.com/tim-reorg/docs/monitor-cluster-powershell-fields-by-table#vdisks)

Place all CSV files for a single analysis run in one folder. Files from different prefixes can coexist in the same folder.

## Select the Right Data to Export

Before running the Stress Calculator, determine which performance metrics you want to optimize. ControlUp allows you to export two distinct types of data depending on your operational goals:

- **Calculations (Real-Time Monitor Data)**
  - **Best for**: Dynamic metrics that fluctuate constantly throughout a session and require frequent snapshots.
  - **Examples**: CPU utilization, memory consumption, or real-time resource performance.
- **Historical Data**
  - **Best for**: Static metrics that are measured only once per session and remain unchanged.
  - **Examples**: Logon Duration, Profile Load Time, or initial connection speeds.

The data you select to export should align directly with the specific performance thresholds and stress levels that are most critical for your organization to track accurately.

## Recommended Calculations Data

Depending on whether you need to calculate data in your environment related to hosts, user sessions, or folders, we recommend using the metrics below.

### Hosts

- Active memory
- Consumed memory
- CPU Usage %

### Sessions

- CPU
- Memory (working and private bytes)
- GPU Encoder and Decoder Utilization
- GPU Frame Buffer Utilization
- Non-paged Pool Memory
- Memory Utilization
- Pages / Sec
- Virtual Disk read or write IOPS

### Folders

- Average CPU Usage
- Average Machine Memory Utilization
- Hosts CPU
- Hosts Memory

## Recommended Historical Data

You should export historical data that is measured once per session, such as Logon Duration or Profile Load Time. Based on whether the data is related to managed machines or user sessions, we recommend exporting the metrics below.

### User Sessions Activity

- Active Time %
- Desktop Load Time (s)
- Disconnected Time %
- Group Policy Load Time (s)
- Idle Time %
- Logon Duration (s)
- Logon Duration Others (s)
- Max Latency (ms)
- Profile Load Time (s)
- Session Duration (s)
- Session ID

### Machine Statistics

- CPU AVG (%)
- CPU Count (#)
- CPU MAX (%)
- CPU MIN (%)
- Disk Read Time (ms) AVG
- Disk Read Time (ms) MAX
- Disk Read Time (ms) MIN
- Disk Transfers per sec AVG
- Disk Transfers per sec MAX
- Disk Transfers per sec (MIN)
- Disk Write Time (ms) AVG
- Disk Write Time (ms) MAX
- Disk Write Time (ms) MIN
- Free Space on System Drive (GB) AVG
- Free Space on System Drive (GB) MAX
- Free Space on System Drive (GB) MIN
- Memory (GB)
- Memory Utilization AVG (%)

## Generate CSV Exports

### Option 1: VDI Web App

In the VDI App:

1. Navigate to the relevant view and click the CSV export button. Repeat for each data type you want to include.
2. Save the CSV on the machine that runs the Stress Calculator.

### Option 2: Metrics Exporter script action

Schedule the **Metrics Exporter** script action to run at regular intervals (e.g. every 15 minutes during business hours). This produces consistently named files with timestamps embedded in the filename, which the calculator uses for time filtering.

**Recommended metrics to export:**

| Type | Suggested Metrics |
| --- | --- |
| Hosts | Active memory, consumed memory, CPU usage |
| Sessions | CPU, memory (working set / page file), GPU utilization, disk read/write IOPS |
| Folders | Average CPU, average memory |
| Logical Disks | Read/write latency, IOPS |
| Historical | Logon duration, profile load time, session activity |

## Use the Calculator

1. Click **Select Import Folder** and navigate to the folder containing your CSV exports.
2. Click **Select Export Folder** and choose where the Excel results should be saved.
3. Configure thresholds and filters:

| Setting | Default | Description |
| --- | --- | --- |
| Yellow | 75% | Percentile for yellow (warning) threshold |
| Red | 90% | Percentile for red (critical) threshold |
| From/To | 08:00 – 18:00 | Only include files collected within these hours |
| Include weekends | Off | When off, Saturday and Sunday files are excluded |

The time filter works by reading the timestamp from each filename. Only files collected within your working hours window on the selected days are included in the calculation. This ensures thresholds reflect production-hours load rather than overnight or weekend noise.
4. Click **Process Data**. A spinner appears next to the button while processing is running, and the status bar shows which step is in progress. When complete, one Excel file per data source is written to your export folder.

## Understanding the Output

Each Excel file (e.g. `Sessions.xlsx`) contains:

- One row per organizational folder path
- One pair of columns per metric: `&lt;Metric&gt;_yellow_75th_percentile` and `&lt;Metric&gt;_red_90th_percentile`
- `N/A` for paths or metrics with insufficient data

These values represent the percentile of the observed metric across all collected data points for that folder during the filtered time window. Using the 75th percentile for yellow means 75% of observed values were at or below this level. The 90th percentile for red captures near-peak load.

## Apply the Results

1. Open the Real-Time DX Console.
2. Navigate to **Settings > Stress Settings**.
3. For each metric, locate the corresponding folder in the exported Excel file
4. Enter the yellow and red values from the spreadsheet.

### Run Automated Mode

The calculator can run in automated made without a GUI, suitable for scheduled tasks or CI pipelines. To set the calculator to run without a GUI, open an elevated command prompt and run the following script:

```plaintext
ControlUp Stress Settings Calculator.exe -import_path "C:\data\exports" -export_path "C:\data\results"
```

**Available arguments include:**

| Argument | Default | Description |
| --- | --- | --- |
| `-import_path` | N/A | Source folder (required for automated mode) |
| `-export_path` | N/A | Destination folder (required for automated mode) |
| `-yellow_percentile` | 75 | Yellow threshold percentile (1–99) |
| `-red_percentile` | 90 | Red threshold percentile (1–99) |
| `-start_time` | 08:00 | Working hours start (HH:MM) |
| `-end_time` | 18:00 | Working hours end (HH:MM) |
| `-include_weekends` | off | Flag — include weekend files when present |
| `-decimal_separator` | locale | Override decimal separator (`.` or `,`) |

## Import and Export the Data

Once you set your arguments as described above and you click **OK**, you see the following tab options:

- **Calculations**. Use this tab to calculate the values for data exported from the ControlUp Monitor.
- **Historical Data**. Use this tab to calculate the values for CSV data exported from the web interface.
- **Help**. Access help information for running the tool.

1. In the **Calculations** tab, click **Select Import Folder**, or in the **Historical Data** tab, click **Select CSV file**.
2. Select a CSV file to import data from.
3. In the **Calculations** tab, click **Select Export Folder**, or in the **Historical Data** tab, click **Export results**.
4. Select a target folder to export data to.
5. In the **Calculations** tab, click **Process data** to export data to the target folder. In the **Historical Data** tab, the data exports automatically. Note that depending on the amount of data, it might take a while to load or seem like the tool is not responding.

Error: decimal separator

If the exported .xlsx files show the error "No exportable data found...", its means that the ControlUp Monitor exporting the data has a different decimal separator from the machine running the Stress Calculator. To fix this error, run the executable with `-decimal_separator ","`, or with a period `.` instead of a comma `,`.
6. After the data finishes processing, open the exported Excel files per metric type (computers, sessions, hosts).
7. For calculations data, the suggested Stress Threshold for specific metrics is displayed for both the 75th percentile (yellow) and the 90th percentile (red) in the rows of the Excel files for each folder. If the file contains no data for a metric, the value shows as N/A.![Table displaying suggested CPU usage thresholds for yellow and red.](https://cdn.document360.io/098100b7-b9da-4bea-b4b9-017140ab863e/Images/Documentation/StressCalcExcelThresh.png)

For historical data, the suggested Stress Threshold for specific metrics is displayed for both the 75th percentile (yellow) and the 90th percentile (red) in the rows of the Excel files for each metric. If the file contains no data for a metric, the value shows as empty.![Table displaying suggested thresholds for various historical metrics for yellow and red.](https://cdn.document360.io/098100b7-b9da-4bea-b4b9-017140ab863e/Images/Documentation/StressCalcExcels.png)

In the following section, we show how to make those changes in the Real-Time Console.

## **Adjust Stress Thresholds Based on the Results**

In the previous section, the Calculator provided suggested stress thresholds in Excel files which we need to apply in our organization. This is done from the Real-Time DX Console. Follow the steps below to apply the suggested values:

1. In the Console, click **Settings** > **Stress**. The **Stress Level Settings** window appears.
2. Under **Folders Tree**, browse the source folder that you used in the tool and select the metric.
3. Change the values in the **Yellow** and **Red** fields accordingly. Click **Apply** to save the changes.

!['Stress Level Settings' window. The suggested thresholds are being added to the relevant folder and metric.](https://cdn.document360.io/098100b7-b9da-4bea-b4b9-017140ab863e/Images/Documentation/StressCalcLevelSett.png)

Now, the load calculation adds 1 load point for **CPU** between 18 and 34 percent, and 2 load points for **CPU** above 34 percent.

## Troubleshooting

#### Excel output shows N/A for all values

The decimal separator in your CSV files does not match your system locale. Re-run with `-decimal_separator ,` or `.` depending on your regional settings.

#### Fewer files processed than expected

The time filter is excluding them. Check the working hours and weekend settings, or review `logging.log` for the exact included/excluded file counts.

#### Processing completes with errors

Check `logging.log` in the same folder as the executable. Common causes: CSV files from an unsupported source, corrupted exports, or a missing **Computers.csv** (required for **Sessions** and **Logical Disks** folder mapping).
