Strata Academy
How to Read a Forest Plot & Meta-Analysis Step-by-Step
Read the diamond, null line, and study weights — then I² heterogeneity, fixed vs random effects, funnel plots, and common pooling mistakes
Read a forest plot in seven steps
- Effect measure + null — OR/RR/HR null at 1; MD/SMD null at 0
- Study rows — Point estimate (square), 95% CI, weight %
- Which CIs cross null? — Inconclusive alone — still contribute to the pool
- The diamond — Pooled point + CI — does it cross null?
- Clinical vs statistical — Significant OR of 0.96 may be trivial
- Heterogeneity line — I², τ², Q — explore, don't ban pooling by cut-off
- Model footnote — Fixed vs random; ITT; imputation rules
Explore an interactive forest plot, or run pooling on your own dataset in Compile — without writing the R yourself.
Interactive forest plot tool Try Compile on your data
Related frameworks
RoB 2 · PRISMA 2020 · AMSTAR 2 · GRADE
Quick answer
A meta-analysis pools similar studies into one effect estimate — on a forest plot each row is a study, the diamond is the pooled result, and the null line is at 1 for odds ratios (check clinical similarity before trusting the pool).
- Forest plot null line: OR/RR/HR at 1; mean difference at 0.
- Random-effects models are default in Cochrane when studies differ.
- I² measures dispersion of effects – not whether pooling is forbidden.
- Funnel plot asymmetry is suggestive, not proof, of publication bias.
What is meta-analysis?
Meta-analysis combines results from independent studies answering the same question. It usually sits inside a systematic review – after comprehensive search, screening, and risk-of-bias assessment.
Pooling narrows the confidence interval around an overall effect. It does not correct biased primary studies: if included trials are flawed, the diamond reflects those flaws.
When pooling is appropriate
Ask two questions before interpreting the diamond: (1) Are studies clinically similar enough? (2) Was the synthesis method pre-specified?
- Same population, intervention, comparator, outcome definition, and timing
- Effect estimates measure the same quantity (e.g. all log odds ratios, not mixing OR with raw counts)
- Direction of effect broadly consistent – investigate if one trial points the opposite way
Note: Software will pool almost anything. Your job is to say whether pooling answers a meaningful clinical question.
Explore an interactive forest plot, or run pooling on your own dataset in Compile — without writing the R yourself. Interactive forest plot tool · Try Compile on your data
Fixed-effect vs random-effects
Fixed-effect: one true effect; differences between studies are chance only. Large precise trials dominate weight.
Random-effects: true effects vary across studies; pool estimates the average effect, with wider CI. Cochrane recommends random-effects as the default when heterogeneity is plausible.
| Model | Assumption | When to use | Weighting |
|---|---|---|---|
| Fixed effect | One true effect | Clinically identical studies, strong rationale | By precision (1/SE²) |
| Random effects | Distribution of effects | Typical clinical reviews | DL, REML, or Hartung-Knapp – check software |
Why forest plots use a logarithmic scale for odds ratios
When the effect measure is an odds ratio (OR), risk ratio (RR) or hazard ratio (HR), the forest plot x-axis is displayed on a logarithmic (log) scale. This is standard Cochrane and RevMan practice.
The reason is mathematical symmetry. On a linear scale, an OR of 2 (doubling risk) would be plotted much further from 1 than an OR of 0.5 (halving risk), even though they represent equal and opposite effect sizes. On a log scale, OR = 2 and OR = 0.5 are equidistant from OR = 1 (log 2 = 0.69, log 0.5 = −0.69).
This also means the confidence intervals for ratios are symmetric on the log scale and appear symmetric on the forest plot. In the underlying calculation, all pooling is done in log space — the software logs each OR, pools them, then exponentiates back to display the diamond.
- Null value for ratio measures: OR/RR/HR = 1 (the vertical line is at 1, not 0)
- Left of 1 = favours control; right of 1 = favours intervention (depends on outcome direction)
- The spacing between tick marks looks non-linear (0.1, 0.2, 0.5, 1, 2, 5, 10) — that is expected on a log scale
- Mean difference (MD) and standardised mean difference (SMD) use a linear scale because differences are already symmetric around zero
- Cochrane Handbook Chapter 10 explains the statistical basis for log-scale pooling of ratio measures
Tip: If you see a forest plot where the x-axis ticks look unevenly spaced (e.g., 0.1, 0.5, 1, 2, 10), that is a log scale — normal and correct for OR/RR outcomes.
Heterogeneity (I², τ², Q)
I² is the percentage of variability in effect estimates due to between-study differences rather than chance. τ² is the between-study variance on the effect scale (log OR, MD, etc.).
Cochrane does not use fixed I² cut-offs to ban pooling. Instead: explore sources (subgroups pre-specified in protocol, sensitivity analyses, prediction intervals) and decide whether the average effect still answers a meaningful question.
Worked reading example: suppose five trials of the same drug for mortality show ORs of 0.72, 0.81, 0.88, 0.95, and 1.10, with I² = 48% and a random-effects diamond at OR 0.86 (95% CI 0.74–0.99). That I² is moderate — effects differ in size, not direction. A prediction interval that still favours benefit supports cautious clinical use; one that crosses 1 means a future trial could easily show no effect even if the average does.
- High I² with all studies favouring intervention → often different effect sizes, not opposite directions — still explore why magnitudes differ.
- High I² with studies on both sides of the null → clinical or methodological mixing is likely; reconsider whether one diamond is honest.
- Always pair I² with the forest plot: the picture of CI overlap matters more than the single percentage.
- GRADE inconsistency downgrades use I² plus clinical sense — not I² alone.
| Statistic | What it answers | How to read it (without cut-off dogma) |
|---|---|---|
| Q (Chi²) | Is between-study variance > 0? | Low power with few studies — a non-significant Q does not prove homogeneity |
| I² | % of variability not due to chance | 0–40% often low; 30–60% moderate; 50–90% substantial; 75–100% considerable — bands overlap on purpose |
| τ² / τ | Absolute between-study SD of effects | More interpretable than I² when comparing reviews with different outcome scales |
| Prediction interval | Where a new study might land | If it crosses the null, the pooled mean may mislead practice for the next patient/setting |
Tip: See our Cochrane heterogeneity hub for formulas. Below, step through I² bands interactively, then return to the forest-plot walkthrough.
Reading a forest plot – step by step
Forest plots are the standard output in RevMan, R meta package, and Cochrane reviews. Learn the layout once and you can read any specialty.
- Read the effect measure label (OR, RR, MD, SMD) and the null value (1 for ratios, 0 for differences).
- Scan each study row: name, weight %, point estimate (square size ∝ weight in many plots), horizontal 95% CI.
- Note which studies' CIs cross the null – inconclusive alone, but still contribute to pool.
- Find the diamond: pooled point and 95% CI. Does it cross null?
- Compare clinical vs statistical importance – a significant OR of 0.96 may be trivial in absolute terms.
- Read the heterogeneity line (I², τ², p for Q) below the plot.
- Check footnotes for random vs fixed model, analysis population (ITT?), and imputation rules.
| Element | What it means | Common mistake |
|---|---|---|
| Square | Study point estimate | Assuming biggest square is best quality – it's often largest N |
| Horizontal line | 95% CI for that study | Ignoring wide CI in small studies |
| Diamond | Pooled estimate + CI | Ignoring that clinical heterogeneity may make pool meaningless |
| Null line | No effect | Using 0 instead of 1 on OR plots |
| Weight % | Contribution to pool | Thinking weight = quality score |
Funnel plots and publication bias
A funnel plot graphs effect size vs precision (often SE or 1/SE). In the absence of bias, small imprecise studies scatter symmetrically around the pooled effect.
Asymmetry can mean publication bias, but also heterogeneity, poor methods in small studies, or chance with few points. Cochrane treats tests as exploratory.
- Egger test – regression of effect on precision; fragile with <10 studies
- Trim-and-fill – sensitivity analysis, not proof of missing studies
- GRADE may downgrade certainty when bias is plausible and supported by registries/grey literature
Sensitivity and subgroup analyses
Pre-specify in the protocol: leave-one-out, exclude high ROB studies, alternative effect measures, only low-risk-of-bias trials.
Post-hoc subgroups (e.g. 'it worked in males') are hypothesis-generating. Covidence and Cochrane both stress documenting which analyses were pre-planned.
Linking meta-analysis to GRADE
After pooling, rate certainty per outcome: risk of bias in contributing studies, inconsistency (I² + clinical sense), indirectness (PICO mismatch), imprecision (CI width, events), publication bias.
- Wide diamond CI crossing thresholds that matter clinically → imprecision downgrade
- One small positive study among many nulls → do not over-interpret without replication
Appraising a published meta-analysis
Workflow: PRISMA flow matches counts → AMSTAR 2 critical items → ROB 2/ROBINS-I on key trials → forest/funnel statistics → GRADE certainty → clinical bottom line.
Common meta-analysis mistakes
Most forest-plot misreads are avoidable once you separate clinical similarity, model choice, and GRADE certainty.
- Pooling trials that answer different PICO questions because the software can run.
- Reading the diamond as 'proof' without checking study-level risk of bias.
- Treating a single I² cut-off as a ban on pooling.
- Mixing odds ratios with risk differences on the same plot without converting scales.
- Calling funnel-plot asymmetry definitive proof of publication bias.
- Ignoring whether the null line is at 1 (ratios) or 0 (mean differences).
Frequently asked questions
How do I read a forest plot in meta-analysis?
Each row is one study: a square shows the effect estimate sized by weight, and a horizontal line is the 95% confidence interval. The vertical line is the null effect (1 for odds ratios). Compare where squares and CIs fall relative to null — then read the diamond as the pooled result.
What does the diamond on a forest plot mean?
The diamond is the pooled effect estimate from meta-analysis. Its width spans the 95% confidence interval for the combined result. If the diamond crosses the null line, the pooled effect is not statistically significant at the 5% level.
What does I² mean in a meta-analysis?
I² is the percentage of variability in effect estimates due to between-study differences rather than chance. Interpret it with τ², prediction intervals, and clinical diversity — Cochrane does not use a single I² cut-off to forbid pooling.
When should I use fixed-effect versus random-effects meta-analysis?
Fixed-effect assumes one true effect and is appropriate when studies are clinically similar. Random-effects allows real differences between studies and is Cochrane's default when heterogeneity is plausible. Pre-specify your model in the protocol.
What is publication bias in meta-analysis?
Publication bias occurs when studies with null or unfavourable results are less likely to be published. Funnel plot asymmetry and tests such as Egger's are suggestive but not definitive — AMSTAR 2 Item 15 expects assessment when ten or more studies are pooled.
Interactive forest plot tool
Explore an interactive forest plot, or run pooling on your own dataset in Compile — without writing the R yourself.
Interactive walkthroughs and quizzes load when JavaScript is enabled — the checklist and tables above are fully readable without it.