{"id":218,"date":"2025-04-10T07:57:56","date_gmt":"2025-04-10T07:57:56","guid":{"rendered":"https:\/\/www.endogeneity.net\/?page_id=218"},"modified":"2026-04-07T07:03:21","modified_gmt":"2026-04-07T07:03:21","slug":"evaluating-endogeneity","status":"publish","type":"page","link":"https:\/\/www.endogeneity.net\/?page_id=218","title":{"rendered":"Sensitivity Analysis"},"content":{"rendered":"<div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container has-pattern-background has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--link_hover_color: var(--awb-color5);--link_color: var(--awb-color5);--awb-background-blend-mode:multiply;--awb-border-color:var(--awb-color1);--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:50.156000000000006px;--awb-padding-bottom:0px;--awb-padding-top-small:70px;--awb-padding-right-small:40px;--awb-padding-bottom-small:0px;--awb-padding-left-small:40px;--awb-margin-bottom-medium:0px;--awb-margin-bottom-small:60px;--awb-background-color:#ffffff;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-center fusion-flex-content-wrap\" style=\"max-width:1248px;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-padding-bottom-medium:0px;--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:1.92%;--awb-margin-bottom-large:85px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-margin-bottom-small:44px;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-1 fusion-text-no-margin\" style=\"--awb-content-alignment:center;--awb-text-color:var(--awb-color1);--awb-margin-right:15%;--awb-margin-bottom:0px;--awb-margin-left:15%;\"><p style=\"text-align: left;\"><span style=\"color: #000000;\"><strong>Sensitivity Analysis<\/strong><\/span><\/p>\n<p style=\"text-align: left; color: #000000;\">After addressing plausible confounding through rich controls and fixed effects, accounting for latent heterogeneity, and mitigating simultaneity and measurement error, researchers must assess whether meaningful endogeneity concerns remain. Because no statistical test can directly detect endogeneity, this assessment relies on sensitivity analysis.<\/p>\n<p style=\"text-align: left;\"><strong style=\"color: #000000;\">The Core Idea<\/strong><\/p>\n<p style=\"text-align: left;\"><span style=\"color: #000000;\">A common endogeneity critique is that an estimated effect may be driven by an unobserved confound. Sensitivity analysis as developed by Frank (2000) reframes this critique as a quantitative question: how strong would an unobserved confound need to be to change the conclusion?<\/span><br \/>\n<span style=\"color: #000000;\"><br \/>\nRather than debating whether bias exists, the approach asks how much bias would be required to push an estimate below a specified threshold, whether that threshold reflects statistical significance or managerial relevance.<\/span><\/p>\n<p style=\"text-align: left;\"><strong style=\"color: #000000;\">An Example<\/strong><\/p>\n<p style=\"text-align: left; color: #000000;\">Consider a retailer that deploys personalized coupons through its app. Estimated spending increases following coupon exposure, but a critic argues that higher-propensity customers were more likely to receive the coupon, rendering the estimated lift non-causal. The sensitivity analysis does not try to settle this debate directly. Instead, it asks: how strong would that unobserved propensity need to be to make the estimated coupon effect disappear?<\/p>\n<p style=\"text-align: left;\"><strong style=\"color: #000000;\">Impact Threshold for a Confounding Variable (ITCV)<\/strong><\/p>\n<p style=\"text-align: left; color: #000000;\">The ITCV quantifies the minimum strength an unobserved confound would need, in partial-correlation terms, conditional on observed controls \u2014 to overturn a focal inference.<\/p>\n<p style=\"text-align: left; color: #000000;\">The key insight is that an unobserved confound threatens inference only if it is related to both the predictor and the outcome. The ITCV captures this as the product of these two partial correlations. If no observed control variable in the model exerts an influence of comparable magnitude, an unobserved confound of the required strength is less plausible.<\/p>\n<p style=\"text-align: left;\"><em><strong style=\"color: #000000;\">Beyond Inflated Effects<\/strong><\/em><\/p>\n<p style=\"text-align: left; color: #000000;\">The ITCV is most directly informative when confounding inflates an estimated effect, raising Type I error concerns. But the same logic applies to suppression, situations where confounding masks a true effect. By redefining the inference threshold relative to a substantively meaningful benchmark, researchers can assess how much bias would be required to sustain an incorrect conclusion that an effect is negligible or nonexistent.<\/p>\n<p style=\"text-align: left;\"><em><span style=\"color: #000000;\">Supported model types:<\/span><\/em><\/p>\n<ul style=\"text-align: left;\">\n<li><span style=\"color: #000000;\">Ordinary least squares<\/span><\/li>\n<li><span style=\"color: #000000;\">Poisson regression<\/span><\/li>\n<li><span style=\"color: #000000;\">Tobit regression<\/span><\/li>\n<li><span style=\"color: #000000;\">Weighted regression<\/span><\/li>\n<li><span style=\"color: #000000;\">Fixed effects and random effects models<\/span><\/li>\n<\/ul>\n<p style=\"text-align: left;\"><strong style=\"color: #000000;\">Robustness of Inference to Replacement (RIR)<\/strong><\/p>\n<p style=\"text-align: left; color: #000000;\">The RIR builds on the same logic but expresses robustness differently: it reports the percentage of observations that would need to be entirely driven by an unobserved confounder for the inference to fail.<\/p>\n<p style=\"text-align: left; color: #000000;\">A high RIR means that a large share of the data would have to be contaminated by confounding before the result breaks down \u2014 a strong signal of robustness. Because this metric captures bias regardless of its source, it speaks to endogeneity from omitted variables, simultaneity, measurement error, and selection alike.<\/p>\n<p style=\"text-align: left;\"><em><span style=\"color: #000000;\">Supported model types:<\/span><\/em><\/p>\n<p style=\"text-align: left; color: #000000;\">All models supported by ITCV, plus:<\/p>\n<ul style=\"text-align: left;\">\n<li><span style=\"color: #000000;\">Logit regression<\/span><\/li>\n<li><span style=\"color: #000000;\">Probit regression<\/span><\/li>\n<\/ul>\n<p style=\"text-align: left;\"><strong style=\"color: #000000;\">Implementation<\/strong><\/p>\n<p style=\"text-align: left; color: #000000;\">Both metrics are implemented through the konfound command, which runs directly after the regression estimation.<\/p>\n<ul style=\"text-align: left;\">\n<li><span style=\"color: #000000;\">R: the <\/span><em><strong style=\"color: #000000;\">konfound<\/strong><\/em><span style=\"color: #000000;\"> package <a href=\"https:\/\/cran.r-project.org\/web\/packages\/konfound\/index.html\" target=\"_blank\" rel=\"noopener\">https:\/\/cran.r-project.org\/web\/packages\/konfound\/index.html<\/a><\/span><\/li>\n<li><span style=\"color: #000000;\">Stata: the <b><i>konfound <\/i><\/b>command <a href=\"https:\/\/journals.sagepub.com\/doi\/pdf\/10.1177\/1536867X19874223\" target=\"_blank\" rel=\"noopener\">https:\/\/journals.sagepub.com\/doi\/pdf\/10.1177\/1536867X19874223<\/a><\/span><\/li>\n<li><span style=\"color: #000000;\">Interactive web app <a href=\"https:\/\/konfound-it.org\" target=\"_blank\" rel=\"noopener\">https:\/\/konfound-it.org<\/a><\/span><\/li>\n<\/ul>\n<p style=\"text-align: left;\"><strong style=\"color: #000000;\">Interpreting the Results<\/strong><\/p>\n<p style=\"text-align: left; color: #000000;\">There is no universal cutoff for either metric. Both should be interpreted in context:<\/p>\n<ul style=\"text-align: left;\">\n<li><span style=\"color: #000000;\">Benchmark against observed controls. Compare the ITCV threshold to the actual partial correlations of control variables already in the model. If no observed control comes close, an unobserved confound of the required strength is less plausible.<\/span><\/li>\n<li><span style=\"color: #000000;\">Benchmark against the literature. Compare the implied confound strength to effect sizes reported in related studies or meta-analyses.<\/span><\/li>\n<li><span style=\"color: #000000;\">Consider the RIR percentage. A result requiring, say, 40% of observations to be entirely driven by bias is more robust than one requiring only 5%.<\/span><\/li>\n<\/ul>\n<p style=\"text-align: left; color: #000000;\">Sensitivity analysis complements careful research design \u2014 it does not substitute for it. These diagnostics are most informative when applied to the strongest available specification, after incorporating all plausible controls, fixed effects, and design features.<\/p>\n<p style=\"text-align: left;\"><span style=\"color: #000000;\"><strong>An Alternative: Coefficient Stability and Unobservable Selection<\/strong><\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"color: #000000;\">A complementary sensitivity approach was developed by Oster (2019) and formalizes a heuristic that researchers have long relied on: if a coefficient barely moves when controls are added, the result is often viewed as unlikely to be driven by unobserved confounding. Oster shows that this intuition is informative only when coefficient movements are evaluated together with movements in the R-squared.<\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"color: #000000;\"><em>Implementation<\/em><\/span><\/p>\n<ul style=\"text-align: left;\">\n<li><span style=\"color: #000000;\">Stata: the psacalc command<\/span> <a href=\"https:\/\/ideas.repec.org\/c\/boc\/bocode\/s457677.html\" target=\"_blank\" rel=\"noopener\">https:\/\/ideas.repec.org\/c\/boc\/bocode\/s457677.html<\/a><\/li>\n<li><span style=\"color: #000000;\">R: the robomit package<\/span> <a href=\"https:\/\/cran.r-project.org\/web\/packages\/robomit\/refman\/robomit.html\" target=\"_blank\" rel=\"noopener\">https:\/\/cran.r-project.org\/web\/packages\/robomit\/refman\/robomit.html<\/a><\/li>\n<\/ul>\n<p style=\"text-align: left;\"><strong style=\"color: #000000;\">What Sensitivity Analysis Does Not Do<\/strong><\/p>\n<p style=\"text-align: left; color: #000000;\">These tools speak to the stability of an inference around a threshold, not to the bias in the causal effect itself. Substantial attenuation or inflation of the true effect may occur even when statistical significance is unchanged.<\/p>\n<p style=\"text-align: left; color: #000000;\">Sensitivity analysis neither reveals the source of bias nor resolves endogeneity. The appropriate interpretation is not that a model is unbiased, but that overturning the focal inference would require confounding of a specified magnitude. When that magnitude seems implausible given the institutional context and observed covariates, the inference stands on firmer ground.<\/p>\n<p style=\"text-align: left; color: #000000;\">When sensitivity diagnostics suggest that a plausible confound could overturn the result, researchers should escalate to instrumental variable or instrument-free approaches to attempt to correct the bias.<\/p>\n<p style=\"text-align: left;\"><span style=\"color: #000000;\"><strong>References<\/strong><\/span><\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li style=\"text-align: left;\"><span style=\"color: #000000;\">Altonji, Joseph G., Todd E. Elder, and Christopher R. Taber (2005), \u201cSelection on Observed and Unobserved Variables: Assessing the Effectiveness of Catholic Schools,\u201d Journal of Political Economy, 113 (1), 151-184.<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"color: #000000;\">Frank, Kenneth A. (2000), \u201cImpact of a confounding variable on a regression coefficient,\u201d Sociological Methods &amp; Research, 29 (2), 147-194.<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"color: #000000;\">Frank, Kenneth A, Spiro J. Maroulis, Min Q. Duong, and Benjamin M. Kelcey (2013), \u201cWhat would it take to change an inference? Using Rubin\u2019s causal model to interpret the robustness of causal inferences,\u201d Educational Evaluation and Policy, 35 (4), 437-460.<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"color: #000000;\">Frank, Kenneth A., Qinyun Lin, Spiro Maroulis, Anna S. Mueller, Ran Xu, Joshua M. Rosenberg, Christopher S. Hayter, Ramy A. Mahmoud, Marynia Kolak, Thomas Dietz, and Lixin Zhang (2021), \u201cHypothetical Case Replacement can be used to Quantify the Robustness of Trial Results,\u201d Journal of Clinical Epidemiology, 134, 150\u2013159<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"color: #000000;\">Oster, Emily (2019), \u201cUnobservable Selection and Coefficient Stability: Theory and Evidence,\u201d Journal of Business &amp; Economic Statistics, 37 (2), 187-204.<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"color: #000000;\">Narvaiz, Sarah, Qinyun Lin, Joshua M. Rosenberg, Kenneth A. Frank, Spiro J. Maroulis, Wei Wang, and Ran Xu (2024), \u201ckonfound: An R Sensitivity Analysis Package to Quantify the Robustness of Causal Inferences,\u201d Journal of Open Source Software, 9(95), 5779.<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"color: #000000;\">Xu, Ran, Kenneth A. Frank, Spiro J. Maroulis, and Joshua M. Rosenberg (2019), \u201ckonfound: Command to Quantify Robustness of Causal Inferences,\u201d The Stata Journal, 19(3), 523-550.<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/div><\/div><\/div><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"100-width.php","meta":{"footnotes":""},"class_list":["post-218","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.endogeneity.net\/index.php?rest_route=\/wp\/v2\/pages\/218","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.endogeneity.net\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.endogeneity.net\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.endogeneity.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.endogeneity.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=218"}],"version-history":[{"count":24,"href":"https:\/\/www.endogeneity.net\/index.php?rest_route=\/wp\/v2\/pages\/218\/revisions"}],"predecessor-version":[{"id":513,"href":"https:\/\/www.endogeneity.net\/index.php?rest_route=\/wp\/v2\/pages\/218\/revisions\/513"}],"wp:attachment":[{"href":"https:\/\/www.endogeneity.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=218"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}