A Decade of Interventions Targeting the Social Determinants of Mental Health
Analyzing Individual vs. Systems, First vs. Second-Order Change
Authors
Edie Gobel
Connor Sayle
Kaila Pelton-Flavin
Alejandro Baez
Shane McCarty, PhD
Lisa Cosgrove, PhD
Published
June 18, 2025
Abstract
In 2014, the mental health field began a shift from treatment-focused, individual-level mental health interventions toward promotion/prevention approaches to address social determinants of mental health (SDoMH: see WHO, 2014) that facilitate community mental health (Nelson, Kloos & Ornelas, 2014) and population mental health (Dodge et al., 2024). Recent reviews of mental health interventions targeting social factors demonstrate the effectiveness of housing, cash transfer programs, and psychosocial interventions (e.g., Oswald et al., 2023). However, these reviews do not critically assess the extent to which neoliberal influences may be undermining efforts to realize SDMH goals of structural change. Specifically, Chater and Loewenstein (2022) argue that a historical over-emphasis on ‘i-frame’ (individual-level) interventions, often driven by corporate interests, diverts from ‘s-frame’ (systems-level) interventions which could more effectively address population mental health. Numerous leaders in the field of community psychology have distinguished between first-order change and second-order change (Bond et al., 2017) along with ameliorative and transformational change (Prilleltensky, 2008). Despite this important dynamic, it is unknown whether the new paradigm brought about by the social determinants of mental health movement has resulted in interventions that have shifted away from the dominant individual-level to a systems-level. In a scoping review, we identify interventions targeting the social determinants of mental health/ill health and categorize them using two independent reviewers into i-frame or s-frame interventions. Additionally, coders consider the commercialization of interventions, such as conflicts of interest with authors and industry as well as copyrighted intervention approaches to account for the commercial drivers of health (Maani, Petticrew & Galea, 2022).
Keywords
social determinants of mental health, scoping review, individual-level interventions, systems-level interventions, i-frame, s-frame, community psychology, population mental health
1 Introduction
A 2014 report by the World Health Organization on the Social Determinants of Mental Health called for the examinination of unfavorable social, economic, and environmental circumstances on population mental health. The mainstream adoption of the social determinants of health (SDOH) framework and its application to mental health (SDOMH: Compton & Shim, 2015) differs markedly from its origin story with a power-centric, social determination theory that emphasizes sociopolitical and structural factors as the primary cause of health and health inequity (Breilh, 2019). Oswald and colleagues (2024) categorized 101 systematic review articles on SDOMH interventions as: demographic, economic, environmental events, neighborhood, or sociocultural. However, this analysis fails to account for other categorical frameworks related to critical mental health and community mental health studies.
In critical community psychology and across the behavioral sciences, different analytical frameworks have been developed to categorize interventions based on: the target focus as individuals (i-frame) vs. systems (s-frame: Chater and Loewenstein 2022), the type of change as ameliorative/first-order change or transformative/second-order change (Prilleltensky, 2008), and the strategy of the intervention to reform the existing paradigm, offer an alternative, or build toward a new paradigm (Wright, 2015). In this study, we aim to determine the prevalence of SDOMH intervention types and the associations between target, change type, and strategy.
2 Method
Review articles (n = 101) from a systematic review by Oswald et al., 2024 were uploaded into a screening tool, Rayyan. Three study team members (E.G., C.S., A.B.) generated the codebook and were assigned two-thirds of the 100 included articles to code. Inter-rater reliability shows fair to moderate agreement (κ = .342 to .517). Coders reviewed their codes with their assigned partner to identify and discuss coding discrepancies, arriving at a single choice (e.g., ALT) or a hybrid option when needed (e.g., REFORM-ALT).
#str(raw_data)# Display first few rowscat("\nFirst few rows:\n")
First few rows:
Show the code
#head(raw_data)# Check for any issues with the data objectcat("\nClass of data object:", class(raw_data), "\n")
Class of data object: tbl_df tbl data.frame
3.1.2.4 Data Transformation
Show the code
# Create the transformed dataset with new categorical variablesdata_transformed <- raw_data %>%mutate(# Create CHANGE variable based on FIRST and SECONDCHANGE =case_when( FIRST ==1& SECOND ==1~"BOTH", FIRST ==1& SECOND ==0~"FIRST", FIRST ==0& SECOND ==1~"SECOND",TRUE~"NEITHER" ),# Create FRAME variable based on IFRAME and SFRAMEFRAME =case_when( IFRAME ==1& SFRAME ==1~"BOTH", IFRAME ==1& SFRAME ==0~"IFRAME", IFRAME ==0& SFRAME ==1~"SFRAME",TRUE~"NEITHER" ),# Create STRATEGY variable based on REFORM, ALT, and BUILDSTRATEGY =case_when( REFORM ==1& ALT ==1& BUILD ==1~"REFORM-ALT-BUILD", REFORM ==1& ALT ==1& BUILD ==0~"REFORM-ALT", REFORM ==1& ALT ==0& BUILD ==1~"REFORM-BUILD", REFORM ==0& ALT ==1& BUILD ==1~"ALT-BUILD", REFORM ==1& ALT ==0& BUILD ==0~"REFORM", REFORM ==0& ALT ==1& BUILD ==0~"ALT", REFORM ==0& ALT ==0& BUILD ==1~"BUILD",TRUE~"NEITHER" ) )# Display summary of new variablescat("Summary of transformed variables:\n")
Summary of transformed variables:
Show the code
cat("\nCHANGE variable distribution:\n")
CHANGE variable distribution:
Show the code
table(data_transformed$CHANGE)
BOTH FIRST NEITHER SECOND
1 87 1 11
Show the code
cat("\nFRAME variable distribution:\n")
FRAME variable distribution:
Show the code
table(data_transformed$FRAME)
BOTH IFRAME SFRAME
3 94 3
Show the code
cat("\nSTRATEGY variable distribution:\n")
STRATEGY variable distribution:
Show the code
table(data_transformed$STRATEGY)
ALT NEITHER REFORM REFORM-ALT
54 1 38 7
Show the code
# Display first few rows with new variableshead(data_transformed %>%select(FIRST, SECOND, CHANGE, IFRAME, SFRAME, FRAME, REFORM, ALT, BUILD, STRATEGY))
# A tibble: 6 × 10
FIRST SECOND CHANGE IFRAME SFRAME FRAME REFORM ALT BUILD STRATEGY
<dbl> <dbl> <chr> <dbl> <dbl> <chr> <dbl> <dbl> <dbl> <chr>
1 1 0 FIRST 1 0 IFRAME 0 1 0 ALT
2 1 0 FIRST 1 0 IFRAME 0 1 0 ALT
3 1 0 FIRST 1 0 IFRAME 0 1 0 ALT
4 1 0 FIRST 1 0 IFRAME 0 1 0 ALT
5 1 0 FIRST 1 0 IFRAME 0 1 0 ALT
6 1 0 FIRST 1 0 IFRAME 0 1 0 ALT
3.1.2.5 Mosaic Plots
3.1.2.6 Data Cleaning and Preparation
Show the code
# First, let's clean and prepare the data properlydata_clean <- data_transformed %>%filter(!is.na(CHANGE) &!is.na(FRAME) &!is.na(STRATEGY)) %>%filter(CHANGE !=""& FRAME !=""& STRATEGY !="")# Check data distributioncat("Sample size after cleaning:", nrow(data_clean), "\n\n")
# Now create the plot with the new orderingplot.mosiac.three <-ggplot(data = data_transformed) +geom_mosaic(aes(x =product(STRATEGY, FRAME, CHANGE), fill = CHANGE)) +labs(title ="Three-Way Mosaic Plot: CHANGE × FRAME × STRATEGY",subtitle ="Showing associations between all three categorical variables",x ="STRATEGY and FRAME",y ="CHANGE" ) +theme_minimal() +theme(axis.text.x =element_text(size =4, angle =90, hjust =1, vjust =0.5),plot.margin =margin(10, 10, 50, 10) ) +scale_fill_brewer(palette ="Set3")ggsave(filename ="plot.mosiac.three.png",plot = plot.mosiac.three,device ="png",width =35,height =15,units ="cm",dpi =300)
Show the code
plot.mosiac.three
3.1.2.9 Alt Plots
Show the code
# Improved ggplot2 script with custom layout requirements# 1. STACKED BAR CHARTS with improved layoutp1.1<-ggplot(plot_data, aes(x = STRATEGY, y = n, fill = CHANGE)) +geom_bar(stat ="identity", width =0.8) +# Custom faceting with specified order: IFRAME, SFRAME, BOTHfacet_wrap(~factor(FRAME, levels =c("IFRAME", "SFRAME", "BOTH")), labeller =labeller(FRAME =c("IFRAME"="IFRAME", "SFRAME"="SFRAME", "BOTH"="BOTH")),strip.position ="bottom") +# Custom x-axis ordering: ALT, REFORM, REFORM-ALT, NEITHERscale_x_discrete(limits =c("ALT", "REFORM", "REFORM-ALT", "NEITHER"),drop =FALSE) +# Remove grid and set transparent backgroundtheme_minimal() +theme(# Remove grid linespanel.grid.major =element_blank(),panel.grid.minor =element_blank(),# Transparent backgroundplot.background =element_rect(fill ="transparent", color =NA),panel.background =element_rect(fill ="transparent", color =NA),# Rotate x-axis labels for better readabilityaxis.text.x =element_text(angle =45, hjust =1),# Optional: make strip background transparent toostrip.background =element_rect(fill ="transparent", color =NA) ) +# Labels and stylinglabs(title ="SDOMH Intervention Categorizations",subtitle ="Associations by Frame, Change, Strategy",x ="", y ="Frequency of Systematic Reviews", fill ="CHANGE" ) +# Color palettescale_fill_brewer(palette ="Set3")# Print the plotprint(p1.1)
Show the code
# Optional: Save with transparent backgroundggsave("plot.png", p1.1, bg ="transparent", width =12, height =6, dpi =300)
Show the code
# 4. BALLOON PLOT (Size = frequency)p4 <-ggplot(plot_data, aes(x = STRATEGY, y =interaction(CHANGE, FRAME))) +geom_point(aes(size = n, color = CHANGE), alpha =0.7) +scale_size_continuous(range =c(2, 15), name ="Count") +scale_color_brewer(palette ="Set3", name ="CHANGE") +labs(title ="Balloon Plot: Three-Way Associations",subtitle ="Point size = frequency, Color = CHANGE, Y-axis = CHANGE × FRAME",x ="STRATEGY", y ="CHANGE × FRAME" ) +theme_minimal() +theme(axis.text.x =element_text(angle =45, hjust =1))print(p4)
Show the code
# 5. FACETED DOT PLOTp5 <-ggplot(plot_data, aes(x = n, y = STRATEGY, color = CHANGE)) +geom_point(size =4) +facet_wrap(~ FRAME, scales ="free") +labs(title ="Dot Plot: Frequency by STRATEGY and FRAME",subtitle ="Faceted by FRAME, colored by CHANGE",x ="Count", y ="STRATEGY", color ="CHANGE" ) +theme_minimal() +scale_color_brewer(palette ="Set3")print(p5)
Show the code
# 8. GROUPED BAR CHART (Alternative grouping)p8 <-ggplot(plot_data, aes(x = FRAME, y = n, fill = STRATEGY)) +geom_bar(stat ="identity", position ="dodge") +facet_wrap(~ CHANGE, scales ="free") +labs(title ="Grouped Bar Chart: Alternative View",subtitle ="Faceted by CHANGE, grouped by STRATEGY",x ="FRAME", y ="Count", fill ="STRATEGY" ) +theme_minimal() +scale_fill_brewer(palette ="Set2")print(p8)
# 10. SUMMARY: Which visualization to choose?cat("VISUALIZATION RECOMMENDATIONS:\n\n")
VISUALIZATION RECOMMENDATIONS:
Show the code
cat("For UNBALANCED data (like yours):\n")
For UNBALANCED data (like yours):
Show the code
cat("✓ Stacked bar charts (p1, p2) - Best overall\n")
✓ Stacked bar charts (p1, p2) - Best overall
Show the code
cat("✓ Heat map (p3) - Shows all combinations clearly\n")
✓ Heat map (p3) - Shows all combinations clearly
Show the code
cat("✓ Table visualization - Most accurate\n\n")
✓ Table visualization - Most accurate
Show the code
cat("For BALANCED data:\n")
For BALANCED data:
Show the code
cat("✓ Mosaic plots\n")
✓ Mosaic plots
Show the code
cat("✓ Alluvial diagrams\n")
✓ Alluvial diagrams
Show the code
cat("✓ Treemaps\n\n")
✓ Treemaps
Show the code
cat("For PRESENTATION:\n")
For PRESENTATION:
Show the code
cat("✓ Clean heat map (p3)\n")
✓ Clean heat map (p3)
Show the code
cat("✓ Proportional stacked bars (p2)\n")
✓ Proportional stacked bars (p2)
Show the code
cat("✓ Simple table with color coding\n")
✓ Simple table with color coding
4 Discussion
The resulting categorizations of SDOMH interventions using critical community and behavioral science frameworks demonstrate the ubiquity of ameliorative, individual-level interventions rather than the more radical, socio-structural analysis associated with social determination theory (Breilh, 2019). Iframe, first-order change interventions offering an alternative to or as a reform for the biomedical paradigm were the most common intervention type (85%, n = 85). Interestingly, all sframe interventions were coded as second-order change interventions (n=3). The absence of interventions building toward a new paradigm beyond the biomedical mental health model is notable.
Future research should continue to examine prior SDOMH interventions and call for more alternative and/or building-type strategies to advance an SDOMH paradigm for mental health beyond the biomedical paradigm.
4.1 Future Directions
While numerous studies examine the social conditions of mental health (Compton & Shim, 2014), recent reviews highlight a critical gap in policy-level interventions within the SDoMH literature (Alegría et al., 2023; Kirkbride et al., 2024). This gap may reflect what Chater and Loewenstein (2022) describe as corporate interests driving researchers to prioritize ‘i-frame’ over ‘s-frame’ interventions. Notably, the growth of the $32.7 billion private, for-profit social determinants of health industry (Goldberg et al., 2024) suggests corporate actors are capitalizing on social interventions (see Maani, Petticrew & Galea, 2022).
Using PRISMA guidelines (Tricco, 2018), we plan to conduct a scoping review of 3484 peer-reviewed articles published between 2014-2024 in academic databases (PubMed, PsycINFO, Web of Science). Our search combines “mental health,” “mental illness,” “mental ill health,” and “social determinants of health” to answer: 1) what is the relative prevalence of i-frame versus s-frame social interventions for mental health, and 2) how frequently are these interventions commercialized?
5 References
Breilh, J. (2019). Critical Epidemiology in Latin America: Roots, Philosophical and Methodological Ruptures. In J. Vallverdú, A. Puyol, & A. Estany (Eds.), Philosophical and Methodological Debates in Public Health (pp. 21–45). Springer International Publishing. https://doi.org/10.1007/978-3-030-28626-2_3
Chater, N., & Loewenstein, G. (2023). The i-frame and the s-frame: How focusing on individual-level solutions has led behavioral public policy astray. Behavioral and Brain Sciences, 46, e147. https://doi.org/10.1017/S0140525X22002023
Oswald, T. K., Nguyen, M. T., Mirza, L., Lund, C., Jones, H. G., Crowley, G., Aslanyan, D., Dean, K., Schofield, P., Hotopf, M., & Das-Munshi, J. (2024). Interventions targeting social determinants of mental disorders and the Sustainable Development Goals: A systematic review of reviews. Psychological Medicine, 1–25. https://doi.org/10.1017/S0033291724000333
Prilleltensky, I. (2008). The role of power in wellness, oppression, and liberation: The promise of psychopolitical validity. Journal of Community Psychology, 36(2), 116–136. https://doi.org/10.1002/jcop.20225