Min-Max Normalization Calculator

StatisticsLast updated: August 22, 2026

Min-max normalization is a linear transformation that moves every value of a variable onto a shared range in which the smallest observation becomes 0 and the largest becomes 1. Because it puts variables measured in different units (age against income, a score against a duration) on the same scale, it is an almost mandatory preprocessing step for distance-based methods — k-nearest neighbors, k-means clustering, and neural networks.

This calculator rescales your data set to whatever [a, b] range you choose and shows, in a single table, each observation's raw value, its position on the unit interval, its scaled value, and its z-score. It also quantifies how outliers break normalization: a single extreme observation squeezes the rest of the data into a narrow band of the scale, a problem that standardization (the z-score) does not have.

You can separate the numbers with commas, spaces, or line breaks. A decimal comma is also accepted (3,14).
The value the smallest observation takes after the transformation. In classic normalization it is 0.
The value the largest observation takes after the transformation. A range of −1 to 1 is also common for neural networks.

Min-Max Normalization Formulas

Unit interval [0, 1]:  x′ = (x − min) / (max − min)
Chosen range [a, b]:   x″ = a + (b − a) · (x − min) / (max − min)
Range:                 R = max − min
Inverse:               x = min + (x″ − a) · R / (b − a)
Normalized mean:       x̄′ = (x̄ − min) / R
Normalized deviation:  s′ = s / R
For comparison (z):    z = (x − x̄) / s

The denominator of the formula is the range of the data, which means the whole scale rests on just two observations — the smallest and the largest value. A single extreme observation shifts the entire transformation, whereas in standardization the scale comes from all n observations.

How to Calculate

  1. Paste the values you want to rescale into the box; commas, spaces, and line breaks are all accepted.
  2. Set the target range: a = 0 and b = 1 for classic normalization, a = −1 and b = 1 for networks with a tanh output.
  3. In the transformed value table, compare each observation's raw value, its position on the unit interval, and its scaled value.
  4. Read the outlier warning: when there is an extreme observation, the results panel states what percentage band of the target range the remaining data is squeezed into.
  5. Look at the before and after histograms side by side; the shape staying the same confirms that the transformation is linear.
  6. If you are going to use this in a model, note down the min and the max — the very same two numbers must be applied to the test data and to new observations.

Worked Examples

Compression in a series with an outlier

The min is 12, the max is 90, and the range is 78, so the value 25 maps to (25 − 12)/78 = 0.1667. Because 90 is an outlier, the remaining 9 observations are squeezed into only 55.1% of the 0-1 scale and the normalized mean stays at 0.2846; the z-score of that same extreme observation is merely 2.38.

Sample size (n): 10 · Smallest value (min): 12.00 · Largest value (max): 90.00

A −1 to 1 range for a neural network

The min is 20, the max is 80, and the range is 60, so the value 50 first becomes (50 − 20)/60 = 0.5 on the unit interval and then −1 + 2·0.5 = 0.0000 on the scaled one. With symmetric data the normalized mean lands exactly in the middle, at 0.0000.

Sample size (n): 9 · Smallest value (min): 20.00 · Largest value (max): 80.00

Moving exam scores onto a 0-100 scale

A range of 46 points is spread across 100 units: the lowest score of 34 becomes 0, the highest of 80 becomes 100, and a score of 58 maps to 100·(58 − 34)/46 = 52.1739. Since there are no outliers, the observations spread across the whole scale.

Sample size (n): 9 · Smallest value (min): 34.00 · Largest value (max): 80.00

Frequently Asked Questions

What is the difference between min-max normalization and standardization (the z-score)?
Min-max normalization compresses the data into a fixed [a, b] range and takes its scale only from the smallest and the largest observation. Standardization sets the mean to 0 and the standard deviation to 1 and uses every observation, so the values have no upper bound. Normalization is preferred when a bounded range is required (image pixels, sigmoid inputs), and standardization when outliers are present or the work is statistical modeling.
Can min-max normalization be used when there are outliers?
It can, but the result is misleading. Since a single extreme observation determines one end of the scale on its own, the rest of the data is squeezed into a narrow band and the differences between observations become invisible. In that situation it is better to account for the outlier first, use robust scaling (the median and the IQR), or clip the data at percentile bounds (winsorization).
Does normalization turn the data into a normal distribution?
No. The similarity of the names causes a common misconception: min-max normalization is a linear change of scale and does not change the shape of the distribution. Skewness and kurtosis are identical after the transformation. To move a distribution toward normality you need a non-linear transformation such as a logarithm, a square root, or Box-Cox.
Can I scale the test data with its own min and max?
No, that is data leakage and it makes the model look better than it really is. The correct approach is to compute the min and the max from the training set alone and apply those same two numbers to the validation and test sets. In scikit-learn this corresponds to fitting the MinMaxScaler on the training set and only calling transform on the test set.
How do you do min-max normalization in Excel?
If the data sits in A2:A100, entering =(A2-MIN($A$2:$A$100))/(MAX($A$2:$A$100)-MIN($A$2:$A$100)) in B2 and copying it down is enough. For a different [a, b] range the formula becomes =a+(b-a)*(A2-MIN(...))/(MAX(...)-MIN(...)). Forgetting the absolute reference markers ($) is the most frequent mistake.
Which methods require scaling?
It is mandatory for distance-based and gradient-based methods: k-nearest neighbors, k-means, support vector machines, principal component analysis, and neural networks. Split-based methods such as decision trees, random forests, and gradient boosting are unaffected by scale, so normalization is a pointless step for those models.