Publication-Ready Tables in Stata: esttab, outreg2, and collect
Stop manually formatting regression tables. Here's how to produce camera-ready LaTeX and Word tables from Stata using esttab, outreg2, and the new collect framework.
You have six regression models. You need a publication-ready table with stars, standard errors, model comparisons, and formatted headers. In LaTeX. And Word, for co-authors who refuse to use LaTeX.
You have three options in Stata: esttab (the modern standard), outreg2 (the legacy option), and collect (Stata 17+’s new framework). Here’s when to use each.
esttab: The Standard
Key options:
replace— overwrites existing file (essential for reproducibility)se— reports standard errors below coefficients (vs.tfor t-statistics)booktabs— uses LaTeX booktabs package for clean horizontal ruleslabel— uses variable labels instead of namesstats()— adds summary statistics rows at the bottom
Word/RTF Output
Stop fighting with syntax.
Sytra is an AI research assistant built specifically for statistical computing. No more copy-pasting code into ChatGPT.
Get Early Accessoutreg2: The Legacy Option
outreg2 appends results model-by-model instead of storing them first. It works but produces less customizable output than esttab. It’s still widely used because many professors learned it first.
collect: Stata 17+
The collect framework is Stata’s official modern approach. It’s powerful and flexible but has a steeper learning curve than esttab. For most users, esttab remains the faster path to a publication table.
Pro Tips
- Add custom rows: Use
indicate()to show which FE are included:indicate("Firm FE=1.firm" "Year FE=1.year") - Fragment mode: Use
fragmentwhen embedding in a larger LaTeX document that already has tabular environment. - Coefficient map: Use
order()andkeep()to control which variables appear and in what order. - Regression table automation: Write a loop that runs all specifications and stores estimates, then call
esttabonce at the end. This ensures your table is always regenerable from code.