Discussion Zipperer (2025)

Real Effects of Aggregate Environmental Information: Evidence from Climate Reduction Investments

Caspar David Peter

Rotterdam School of Management

July 3, 2025

Essentials

Essentials

Bird’s Eye View

My View

Summary

My Questions

  • How much uncertainty is there about the environmental investments?
  • Is there no other way to know about environmental investments?
  • Where were these investments reported before 2009?
  • Separation to Tomar (2023)
  • Benchmarking via United Nations Global Compact, see (Li and Wu 2020)?

Essentials

Uncertainty

Sustainability Uncertainty Index (Germany)1

Code
# Load data from: https://www.policyuncertainty.com/sustainability_index.html

esgui  <- readxl::read_excel('../Papers/Essec/ESGUI_Indexes.xlsx', skip = 2)  %>% 
janitor::clean_names()  %>% select(1:3, germany)  %>% 
mutate(ym = lubridate::ym(date))  

# Plot over time

esgui %>%
  ggplot(aes(x = ym, y = germany)) +
  geom_line() +
  labs(title = "ESGUI Index for Germany",
       x = "Year",
       y = "ESGUI Index") +
  scale_x_date(date_labels = "%Y", date_breaks = "2 years") +
  # Add ribbon from 2009 to 2015
  geom_rect(aes(xmin = as.Date("2009-12-31"), xmax = as.Date("2015-12-31"), ymin = -Inf, ymax = Inf),
            fill = "lightblue", alpha = 0.01) +
  geom_rect(aes(xmin = as.Date("2006-01-01"), xmax = as.Date("2009-12-31"), ymin = -Inf, ymax = Inf),
            fill = "orange", alpha = 0.01) +
  geom_vline(xintercept = as.Date("2006-01-01"), linetype = "dashed", color = "red") +
  geom_vline(xintercept = as.Date("2015-12-31"), linetype = "dashed", color = "red") +
  geom_vline(xintercept = as.Date("2009-08-01"), linetype = "dashed", color = "green") +
  # Annotate graph with text at 2009-01-05
  annotate("text", x = as.Date("2009-08-01"), y = 50, label = "Federal report\nincl. Aggregate Emission Data", color = "black", size = 4, hjust = 0) +
  scale_y_continuous(labels = scales::comma) +
  ggthemes::theme_hc() +
  theme(legend.position = "bottom", 
  axis.text.x = element_text(angle = 45, hjust = 1),
  text = element_text(size=20))

Uncertainty

  • Strengthen of “uncertainty” argument!
    • To counter the “nobody looks at the aggregate data” argument (Survey)
  • x-section based on number of local competitors - aggregate should be even more informative if you know who is in it
  • How does three year old aggregate data help us?
    • Better than nothing, but still outdated, imo

Essentials

Investment data

Carbon Reduction vs. Other Environmental Investments

Figure 5 - Development of Environmental Investments

Comments and Ideas

  • Outlier treatment: Winsorizing at 1% and 99% quintiles
    • How does this affect Environmental Investments?
  • Firm-year Fixed effects: What explains the large drop in observations?
  • Show conditional means to improve credibility of the parallel trends assumption1
  • Include pre-trends based on high vs. low environmental investments
  • Compositional Changes? Moving investments from one category to another?

Trends

Extensions

Awareness Data

Google Trends

Awareness

  • Table 6: Investment Behavior of Firms Under Different Levels of Awareness?
    • Test if subsamples are significantly different, i.e. triple DiD?
  • Alternative awareness measures?
    • Mentions in Tagesschau or other media?
    • Bundestag speeches?
    • Google Trends?
    • (Local) Trade associations

Extensions

Average Emissions over Time1 (GER)

Code
# Read facility report 
### Only German facilities
eprtr_facility <- read_csv('../Papers/Essec/E-PRTR_database_v18_csv/dbo.PUBLISH_FACILITYREPORT.csv')  %>% 
filter(CountryCode == "DE")

### Only German facilities' pollutants
eprtr_pollutant <- read_csv('../Papers/Essec/E-PRTR_database_v18_csv/dbo.PUBLISH_POLLUTANTRELEASE.csv') %>% 
filter(FacilityReportID %in% eprtr_facility$FacilityReportID)

### Only German facilities' transfer reports 

eprtr_transfer <- read_csv('../Papers/Essec/E-PRTR_database_v18_csv/dbo.PUBLISH_POLLUTANTRELEASEANDTRANSFERREPORT.csv') %>%
  filter(PollutantReleaseAndTransferReportID %in% eprtr_facility$PollutantReleaseAndTransferReportID)  %>% 
  select(-CountryCode, -CountryName) %>%
  distinct()

### Join the two datasets
eprtr_data <- eprtr_facility %>%
  inner_join(eprtr_pollutant, by = "FacilityReportID")  %>% 
  inner_join(eprtr_transfer, by = "PollutantReleaseAndTransferReportID")  

# write_csv(eprtr_data, '../Papers/Essec/eprtr_data.csv')

#view(eprtr_data)

# eprtr_data  <- read_csv('../Papers/Essec/eprtr_data.csv')

# Plot different pollutants over time

# eprtr_data %>%
# group_by(ReleaseMediumCode,ReportingYear)  %>% 
# mutate(TotalQuantity = TotalQuantity/1000)  %>% 
# summarise(total_release = sum(TotalQuantity, na.rm = TRUE)/1000) %>%
# ggplot(aes(x = ReportingYear, y = total_release, color = ReleaseMediumCode)) +
#   geom_line() +
#   labs(title = "Total Release Quantity by Reporting Year and Medium",
#        x = "Reporting Year",
#        y = "Total Release Quantity (in tonnes)",
#        color = "Release Medium") +
# geom_vline(xintercept = 2009, linetype = "dashed", color = "red") +
# ggthemes::theme_hc() +
# theme(legend.position = "bottom") +
#   scale_x_continuous(breaks = seq(2001, 2022, by = 2)) +
#   scale_y_continuous(labels = scales::comma)


eprtr_data %>%
group_by(ReleaseMediumCode,ReportingYear)  %>% 
mutate(TotalQuantity = TotalQuantity/1000)  %>% 
summarise(total_release = mean(TotalQuantity, na.rm = TRUE)/1000) %>%
ggplot(aes(x = ReportingYear, y = total_release, color = ReleaseMediumCode)) +
  geom_line() +
  labs(title = "Total Release Quantity by Reporting Year and Medium",
       x = "Reporting Year",
       y = "Average Release Quantity (in tonnes)",
       color = "Release Medium") +
geom_vline(xintercept = 2009, linetype = "dashed", color = "red") +
ggthemes::theme_hc() +
theme(legend.position = "bottom", text = element_text(size=20)) +
  scale_x_continuous(breaks = seq(2001, 2022, by = 2)) +
  scale_y_continuous(labels = scales::comma)

Emission Data

  • Did the investments lead to lower emissions?
  • Fit with your story?
    • Data on investments in emission reduction ❌
    • Data on emissions: firm level ✅, public ✅
    • Reflection problem on the table again?
  • Do investments correlate with emission reduction?

Extensions

Mean Reversion

  • Issue: Mean reversion in environmental investments
  • How to detect it?
    • Correlation between investments and lagged investments?
      • If negative correlation, then mean reversion
  • What to do about?
    • Nothing, if mean reversion happens on the firm level - both treated and control are affected -, DiD should take care of it.
    • Firm-specific time-trends (likely overkill)

Extensions

Standard Errors

“(…) enabling them to compare their own investment levels against the industry average.”

  • Shock occurs at the industry level?
  • Standard errors should be clustered at the industry level?
    • Small number of industries
    • Check Cameron and Miller (2015) and MacKinnon, Nielsen, and Webb (2023) for (better) practical advice

Last but not least

Minor tweaks

  • page 19: Clarify what (28) means/refers to, i.e. the firm-year fixed effects specification
  • All Tables: I think you mean t-statistics, not standard errors
  • page 19: “The coefficient of the variable Treat is negative and shows that emission reduction investments are lower than environmental investments in the pre-period.”

References

Cameron, A Colin, and Douglas L Miller. 2015. “A Practitioner’s Guide to Cluster-Robust Inference.” Journal of Human Resources 50 (2): 317–72.
Li, Jun, and Di Wu. 2020. “Do Corporate Social Responsibility Engagements Lead to Real Environmental, Social, and Governance Impact?” Management Science 66 (6): 2564–88.
MacKinnon, James G, Morten Ørregaard Nielsen, and Matthew D Webb. 2023. “Cluster-Robust Inference: A Guide to Empirical Practice.” Journal of Econometrics 232 (2): 272–99.
Tomar, Sorabh. 2023. “Greenhouse Gas Disclosure and Emissions Benchmarking.” Journal of Accounting Research 61 (2): 451–92.
Zipperer, Daniela. 2025. “Real Effects of Aggregate Environmental Information: Evidence from Climate Reduction Investments.” Working Paper.

Appendix