3 min read

UCU is still in pay dispute

The Background

In my short time in UCU we entered a pay dispute that lead to a series of strike actions. The dispute boiled down to “inflation is eroding our wages, at least pay us as much in real terms as we were worth a few years ago”.

I was a little complicated - I was still a member of NUS who had condemned the strikes. I joined UCU as a postgraduate tutor, and was automatically in NUS as a postgraduate student. I ended up on picket lines on my non-tutoring days because timetables are random and UCU decided on random 1 days.

Anyway, I left for the Public Sector, but I have mates in UCU. Despite UCEA promising to resolve the issues and re-open good-faith negotiations, UCU have felt it necessary to vote for industrial action.

I’ve offered to graph the real-terms cuts to University salaries for one of these mates, and since this blog is Creative Commons Licenced anyone else can grab the graphs

Data

UCEA already have commissioned an independent analysis of the real-terms pay cuts. I’m going with CPIH as it looks at a standard bucket of living costs including housing, and ONS recommend it and I sit next to a Statistician at work.

I plucked the relevant table into a spreadsheet, giving all values in 2008-09 pounds:

pay_data <- read_csv(here::here("static/data/UCU/paycuts.csv"))

pound <- function(x) scales::dollar(x, prefix = "£")

pay_data %>%
  mutate(`Spine Point` = as.character(`Spine Point`)) %>%
  mutate_if(is.numeric, pound) %>%
  knitr::kable()
Spine Point 2008-9 2013-14 2018-19 2019-20
3 £16,858 £15,525 £16,146 £16,458
11 £20,818 £19,133 £19,202 £19,286
21 £27,836 £25,526 £25,482 £25,510
31 £37,408 £34,249 £34,189 £34,226
41 £50,276 £45,972 £45,892 £45,942
51 £67,567 £61,726 £61,618 £61,684

As simple line graphs:

parse_year <- function(year) str_extract(year, "^[0-9]+") %>% paste0("-01-01") %>% lubridate::ymd()

pay_data %>%
  pivot_longer(-`Spine Point`, names_to = "year", values_to = "pay") %>%
  mutate(`Spine Point` = as_factor(`Spine Point`)) %>%
  mutate(year =parse_year(year)) %>% #Quick function to turn year into something ggplot recognises as a year
  ggplot(aes(x=year,y=pay, colour=`Spine Point`)) + geom_line() + geom_point() +   ggthemes::theme_tufte() +
  scale_y_continuous(labels=pound) + 
  labs(title="All University Pay Bands have seen real cuts")

As percentages:

pay_data %>%
 mutate(`Spine Point` = as_factor(`Spine Point`)) %>%
  pivot_longer(-`Spine Point`) %>%
  group_by(`Spine Point`) %>%
  mutate(value = value/first(value)-1) %>%
  ungroup() %>%
  mutate(year = parse_year(name)) %>%
  ggplot(aes(x=year, y=value, colour=`Spine Point`)) + geom_line() + scale_y_continuous(labels = scales::percent) + ggthemes::theme_tufte() + ggthemes::scale_color_few() + labs("Almost everyone is 8% worse off")

Spine Point 3 saw less cut than the rest, a quick eyeballing suggests that this is because min wage went up, so I’m re-doing the above graph without SP 3 just in case.

pay_data %>%
  filter(`Spine Point`!=3) %>%
  mutate(`Spine Point` = as_factor(`Spine Point`)) %>%
  pivot_longer(-`Spine Point`) %>%
  group_by(`Spine Point`) %>%
  mutate(value = value/first(value)-1) %>%
  ungroup() %>%
  mutate(year = parse_year(name)) %>%
  ggplot(aes(x=year, y=value, colour=`Spine Point`)) + geom_line() + scale_y_continuous(labels = scales::percent) + ggthemes::theme_tufte() + ggthemes::scale_color_few() + labs("Almost everyone is 8% worse off")

As a table:

pay_data %>%
  mutate(`Spine Point` = as_factor(`Spine Point`)) %>%
  rename(base = `2008-9`) %>%
  pivot_longer(-c(`Spine Point`, base)) %>%
  mutate(value = value/base-1) %>%
  select(`Spine Point`, year=name, value) %>%
  mutate(value = scales::percent(value)) %>%
  pivot_wider(names_from = year, values_from = value) %>%
  knitr::kable()
Spine Point 2013-14 2018-19 2019-20
3 -7.91% -4.22% -2.37%
11 -8.09% -7.76% -7.36%
21 -8.30% -8.46% -8.36%
31 -8.44% -8.61% -8.51%
41 -8.56% -8.72% -8.62%
51 -8.64% -8.80% -8.71%

As a time comparison - 8% of a 40-hour week is about 3.2 hours, or half a day. “About half a day” holds as long as they’re on a 5-day week, which definitely isn’t universal in Uni. (If >40 hours then each day is longer, and half a day is longer.)

Or compared against 10 years ago, most folk in Universities are effectively working for free for half of Friday.