Chapter 4 of 4

Time Fixed Effects & Two-Way FE

Fixed Effects Regression

Entity fixed effects handles differences between clubs. But what about shocks that hit all clubs at the same time?

Think about the 2020/21 season — played almost entirely behind closed doors due to COVID. Every club was affected: no home crowd advantage, disrupted training schedules, compressed fixture lists.

If that same season happened to coincide with changes in training load, our entity FE estimate would be biased — we'd be attributing the COVID effect to training.

The issue: entity FE removes time-invariant differences between clubs, but it does not remove shocks that vary over time but are common to all clubs in a given period.


What kinds of shocks affect all clubs in the same season?

COVID-19 (2020/21)

Empty stadiums, schedule disruptions, all clubs affected equally.

VAR introduction (2019/20)

New officiating technology changed how all matches were refereed.

5-substitution rule (2022/23)

Tactical change available to every club, altering fatigue management.

Ball change / pitch standards

League-wide equipment or regulation changes that affect scoring.

None of these are constant within a club (they change over time), and entity FE doesn't remove them. We need a different tool.


The solution: add time fixed effects — a separate intercept for each time period.

yit=β1xit+αi+λt+εity_{it} = \beta_1 x_{it} + \alpha_i + \lambda_t + \varepsilon_{it}

αi\alpha_i = club FE, λt\lambda_t = season FE

The new term λt\lambda_t is a dummy for each season. It absorbs anything that is common to all clubs in season tt — COVID disruptions, rule changes, economic conditions, you name it.

Just like entity FE subtracts each club's mean, time FE subtracts each season's mean. What's left is variation that differs across both clubs and seasons.


Entity FE and time FE control for different things. Let's compare.

Entity FE (αi\alpha_i)

Removes differences between clubs that are constant over time.

  • Stadium size, fan base, prestige
  • City, historical brand power
  • Any time-invariant club trait

Time FE (λt\lambda_t)

Removes shocks common to all clubs in a given season.

  • COVID season effects
  • Rule changes (VAR, subs)
  • League-wide trends

Still NOT controlled

Things that vary across both clubs and time: a specific club's new manager in a specific season, a star player's injury, a club's transfer spending that year. These are unit-time-specific confounders.


Using both entity and time fixed effects together is called two-way fixed effects.

Two-way FE is one the common way of modern panel data analysis. The model:

yit=β1xit+αi+λt+εity_{it} = \beta_1 x_{it} + \alpha_i + \lambda_t + \varepsilon_{it}

The demeaning now happens in two dimensions. Conceptually, you can think of it as:

y~it=yityˉiyˉt+yˉ\tilde{y}_{it} = y_{it} - \bar{y}_i - \bar{y}_t + \bar{y}

Subtract club mean, subtract season mean, add back the grand mean

After this double-demeaning, the remaining variation is: how does a club's training deviation — from its own average and from that season's average — relate to its performance deviation?


When should you use entity FE, time FE, or both?

1

Entity FE only

Use when your main concern is unobserved differences between units (e.g., club quality, natural ability) and there are no major common time shocks.

2

Time FE only

Rare on its own. Useful in cross-sectional time series where you want to remove macro trends but don't have unit-level confounders.

3

Two-way FE (both)

The default in most applied work. Use whenever you have panel data and want to be safe against both types of confounders.

In practice: two-way FE is so common that many researchers include it by default. The cost is low (you just add season dummies), and the protection against common time shocks is substantial.


No within variation, no estimate. Fixed effects needs things to change.

Suppose you want to estimate the effect of having an artificial pitch. If Arsenal always plays on natural grass across all seasons, there's no within variation in that variable for Arsenal — fixed effects has nothing to work with.

More generally, if a variable barely changes over time within units, the FE estimate will be imprecise (large standard errors) because you're trying to identify an effect from very little variation.

With two-way FE, this requirement is even stricter: you need variation that isn't absorbed by either the entity or the time dummies. A variable that changes over time but in exactly the same way for all clubs would be collinear with the time FE.

Rule of thumb: before running FE, check that your key variable of interest has meaningful within-unit variation. If it barely moves, FE may not be the right approach — even if it's technically estimable.


The key takeaway:

Time fixed effects removes common shocks that hit all units simultaneously. Combined with entity FE as two-way fixed effects, it's the standard approach for panel data — controlling for both unobserved unit differences and common time trends.

Even with two-way FE, confounders that vary across both units and time remain a threat. For those, you'd need additional strategies, such as difference-in-differences designs.

Built with SvelteKit + D3.js