The opioid epidemic persists in the United States; in 2019, annual drug overdose deaths increased by 4.6% to 70,980, including 50,042 opioid-related deaths. The widespread abuse of opioids across geographies and demographics and the rapidly changing dynamics of abuse require reliable and timely information to monitor and address the crisis. Social media platforms include petabytes of participant-generated data, some of which, offers a window into the relationship between individuals and their use of drugs. We assessed the utility of Reddit data for public health surveillance, with a focus on the opioid epidemic. We built a natural language processing pipeline to identify opioid-related comments and created a cohort of 1,689,039 geo-located Reddit users, each assigned to a city and state. We followed these users over a period of 10+ years and measured their opioid-related activity over time. We benchmarked the activity of this cohort against CDC overdose death rates for different drug classes and NFLIS drug report rates. Our Reddit-derived rates of opioid discussion strongly correlated with external benchmarks on the national, regional, and city level. During the period of our study, kratom emerged as an active discussion topic; we analyzed mentions of kratom to understand the dynamics of its use. We also examined changes in opioid discussions during the COVID-19 pandemic; in 2020, many opioid classes showed marked increases in discussion patterns. Our work suggests the complementary utility of social media as a part of public health surveillance activities.