---
title: ''
description: Telegraf plugin for transforming metrics using Scale
url: https://docs.influxdata.com/telegraf/v1/processor-plugins/scale/
estimated_tokens: 712
product: Telegraf Enterprise
version: v1
publisher: InfluxData
canonical: https://docs.influxdata.com/telegraf/v1/processor-plugins/scale/
date: '2026-05-21T20:10:18+02:00'
lastmod: '2026-05-21T20:10:18+02:00'
---

==========

* Telegraf v1.27.0+

[Plugin source](https://github.com/influxdata/telegraf/tree/v1.39.1/plugins/processors/scale/)[Download configuration](https://raw.githubusercontent.com/influxdata/telegraf/refs/tags/v1.39.1/plugins/processors/scale/sample.conf)

# Scale Processor Plugin

This plugin allows to scale field-values from an input range into the given
output range according to this formula:

```math
\text{result}=(\text{value}-\text{input\_minimum})\cdot\frac{(\text{output\_maximum}-\text{output\_minimum})}
{(\text{input\_maximum}-\text{input\_minimum})} +
\text{output\_minimum}
```

Alternatively, you can apply a factor and offset to the input according to
this formula

```math
\text{result}=\text{factor} \cdot \text{value} + \text{offset}
```

Input fields are converted to floating point values if possible. Otherwise,
fields that cannot be converted are ignored and keep their original value.

> [!Note]
> Neither the input nor output values are clipped to their respective ranges!

**Introduced in:** Telegraf v1.27.0**Tags:** transformation**OS support:** all

## Global configuration options

Plugins support additional global and plugin configuration settings for tasks
such as modifying metrics, tags, and fields, creating aliases, and configuring
plugin ordering. See [CONFIGURATION.md](/telegraf/v1/configuration/#plugins) for more details.

## Configuration

```toml
# Scale values with a predefined range to a different output range.
[[processors.scale]]
    ## It is possible to define multiple different scaling that can be applied
    ## do different sets of fields. Each scaling expects the following
    ## arguments:
    ##   - input_minimum: Minimum expected input value
    ##   - input_maximum: Maximum expected input value
    ##   - output_minimum: Minimum desired output value
    ##   - output_maximum: Maximum desired output value
    ## alternatively you can specify a scaling with factor and offset
    ##   - factor: factor to scale the input value with
    ##   - offset: additive offset for value after scaling
    ##   - fields: a list of field names (or filters) to apply this scaling to

    ## Example: Scaling with minimum and maximum values
    # [[processors.scale.scaling]]
    #    input_minimum = 0.0
    #    input_maximum = 1.0
    #    output_minimum = 0.0
    #    output_maximum = 100.0
    #    fields = ["temperature1", "temperature2"]

    ## Example: Scaling with factor and offset
    # [[processors.scale.scaling]]
    #    factor = 10.0
    #    offset = -5.0
    #    fields = ["voltage*"]
```

## Example

The example below uses these scaling values:

```toml
[[processors.scale.scaling]]
    input_minimum = 0.0
    input_maximum = 50.0
    output_minimum = 50.0
    output_maximum = 100.0
    fields = ["cpu"]
```

```
- temperature, cpu=25
+ temperature, cpu=75.0

```
