Michael Stepner

I've written and published a variety of Stata programs, which anyone can install and use.

I originally developed these programs while working on applied research as a Pre-Doctoral Fellow at Harvard LEAP. They have been incredibly useful in my own work, and are now being used by a growing number of researchers.


binscatter is a Stata program which generates binned scatterplots. These are a convenient way of observing the relationship between two variables, or visualizing OLS regressions. They are especially useful when working with large datasets.


maptile provides a simple method for mapping a variable in Stata. It divides the areas on the map into groups and shades them according to the value of the variable being plotted. The map is drawn using a geography template, which are easy to create and share with others.


vam uses student-level scores to compute teacher value-added measures, applying the estimation procedure from Chetty, Friedman, Rockoff (2013). Each teacher's value-added is not assumed to be fixed over time: drift is accounted for by permitting the coefficients on score data from different years to vary non-parametrically.


fastxtile is a drop-in replacement for Stata's built-in command xtile. It has the same syntax and produces identical results, but runs substantially faster in large datasets. fastxtile also has a few added features.

mergepoly.ado (with Robert Picard)

mergepoly takes a mapping shapefile and merges adjacent polygons by removing shared borders. For example, it can be used to transform a map file describing the U.S. states into a map file for the nine U.S. census divisions.