20 Metrics in 20 Days- Day 18: Year-Over-Year Performance Variability

Day 18 in our series of 20 consecutive posts on HR Metrics: Year-over-year performance variability


Year-Over-Year Performance Variability can be measured as the standard deviation of the difference in individual employee performance ratings between two consecutive years.

Why You Should Care

The standard deviation is a standard measure of variability within a group.

Here, we want to know how much on average performance ratings change for individuals from year to year.

We naturally expect performance and performance ratings to vary somewhat over time but generally we would should expect fairly consistent performance results from year to year, all things being equal. Your best people now should generally be your best people later.

High variability tells you ratings change substantially from year to year. Concretely, this might mean that last year’s top performers are now in the middle of the pack or even at the lower end while those at the lower end may have suddenly leapfrogged those who were rated more highly.

Incredibly low variability, on the other hand, suggests that your ratings process may be insensitive to differences in performance.

Such radical year-over-year changes suggest that your performance ratings may not systematically measure what you intend. After all, would you really expect employee performance to vary sharply from year to year?

Calculating Year-Over-Year Performance Variability: The Basic Steps

You can handle this in one step in Excel using the ” = stdev()” command.

In R, you would use the “sd()” function as you will see below.

I’ll describe the underlying calculations here though so you can understand the process if you are not familiar with standard deviations.

For each individual employee with a performance rating in both Year 1 and Year 2 do the following:

  • Subtract the Year 2 rating from the Year 1 rating (or vice versa; the order doesn’t matter)
  • Calculate the mean of all those differences
  • Subtract that mean from all of those observed differences
  • Square each result and then sum them (the sum of squares)
  • Divide by N – 1 (that is, your sample size minus 1)
  • Get the square root of that result

Example in R by Hand

y1 <- 1:7 # year 1 scores
y2 <- c(2,2,3,4,6,5,7) # year 2 scores
diff <- y1 - y2 # Difference in scores
sum_sq <- sum((diff -(mean(diff)))^2) #sum of squared differences
var1 <- sum_sq/(length(y1)-1) # dividing by sample size -1
sqrt(var1) #final step
## [1] 0.6900656

Of course, we can do all of this with a single line of R code, applying the sd command to the observed ratings differences.

## [1] 0.6900656


If your ratings are unusually variable or unusually consistent year-over-year, you may wish to consider the following possible actions:

  • Provide training to your supervisors on how to properly implement your performance ratings process
  • Re-evaluate your performance ratings metrics. For example, is your current ratings system transparently applicable to the kind of work people do?
  • Determine whether supervisors feel comfortable providing honest performance ratings and make sure they understand the impact of those ratings on compensation, hiring strategy, and the overall business.

Contact Us

Yes, I would like to receive newsletters from HR Analytics 101.