
Economist studying the safety net and health. AP @WestPointSOSH. Past: @CAPolicyLab, @UCDavisEcon. Former life: @HoyasFB.
West Point, NY
Joined August 2021
- Tweets235
- Following277
- Followers130
- Likes435
Geoffrey Schnorr retweeted
Preliminary evidence suggests GLP-1 drugs may reduce cravings for addictive substances, but stronger evidence is needed to support broader access.
We @Arnold_Ventures are proud to fund the most rigorous study ever of effect of GLP-1s on alcohol/opioid use and downstream impacts.
Geoffrey Schnorr retweeted
A quick 🧵 on my new favorite (mostly AI-proof) assignment for my 300-level health econ class...
This should work well for basically any upper-level undergraduate field course.
Geoffrey Schnorr retweeted
GLP1s for weight loss impact lives beyond health. My new paper shows single women’s marriage/cohabitation rates rise 29pp, employment among nonemployed women rises 27 percentage points after 1.5+ years.
Link to paper below:
Geoffrey Schnorr retweeted
Remote work hurts mental health. New research out in Science with @emma_k_h and Amanda Pallais. science.org/doi/10.1126/scie…
Geoffrey Schnorr retweeted
This is a great point, @arindube , and I am really guilty of not sharing more about what I have been up to on the teaching side of things, given that this is what they pay me for! Let's get back on track with a mega post.
At @LSEEcon, we've been running a series of structured experiments to figure out exactly how GenAI changes the production function of economics education. We moved past the "cheating" panic early (although we didn't really have one in our programmes) and started actively rebuilding our pedagogy around these tools. Here's what we're doing and what we're learning, and btw we will be presenting our work at CTREE 2026 in Las Vegas in late May if you are in town.
The AI Economics Professor
With Ronny Razin, we built a specialised, course-aligned AI tutor. The key idea Ronny had: best way to verify if a student actually understands a concept is to ask them to explain it interactively. Clearly this does not scale to the class size we have at LSE (Ronny teaches his course to 850 first-year students). But we can scale with AI! The key pedagogical principle is that the chatbot uses a Socratic framework. It refuses to hand out final answers. Instead, students are prompted with an exercise, and the chatbot asks them to identify the next step in a mathematical or logical derivation themselves, guiding them through the reasoning rather than short-circuiting it. It adapts to the students' level, for example by clarifying concepts or notation if needed.
This gives students access to 24/7 personalised tutoring, levelling the playing field for those who might hesitate to speak up in small classes or office hours, and solving Bloom's "2-sigma problem" in economics education. Notice that we didn't train the bot or fine-tuned t to our course material. We just provided a system prompt embracing the Socratic approach, and the solutions to the exercise students had to solve. That's it. Off the shelf LLM model (it was Gemini 2.5 Flash).
We did run a small experiment for a game theory exercise, where students had to work out strictly dominated strategies, and pure and mixed strategy Nash equilibria. The feedback we received is overwhelmingly positive: students found it useful to work through the reasoning with the chatbot, and it helped them understand the material better. We are also in the process of establishing if the use of the chatbot improves marks in the final exam, although we don't have a full analysis yet. But I can say that this was a very good year for the distribution of marks in this course, way above the average of previous years. If this proves as good as it looks, next step is to scale this to more courses, potentially expand to similar disciplines in LSE, and potentially expand to other universities. Stay tuned.
AI Feedback Experiment
Providing high-quality, scalable formative feedback is one of the hardest problems in our job. It's incredibly labour-intensive, and the result is that students often get too little feedback, too late to act on it. Main problem, again, is scale. Can we use AI to enhance our feedback process? We did an experiment with @MichaelGmeiner2 in one of our MSc courses.
Michael is a great teacher. In his Econometrics course, he teaches students how to write referee reports, and provides feedback to each one of them on 5 submitted referee reports. We thought, why don't we provide two feedback reports for each submission, one AI-generated and one human-generated? This will allow us to evaluate how good the AI feedback is with respect to human feedback (well, Michael's feedback, which is superhuman in my view, but ok).
And so we did. We didn't say which is which to students, to avoid any kind of bias. And again, we just cooked up a prompt for the LLM to generate feedback on the referee report, we provided the AI with the paper to referee, the referee report submitted by the student, and nothing more.
We found out that students rated the AI-generated feedback as less useful than the human-generated, although not by a lot. Main problem with the AI-generated feedback is that it is too generic, and does not address the specific TECHNICAL issues that the student may have missed in their report. It is also too positive, and does not provide the student with the critical feedback that they need to improve. In particular, students highlighted that the AI feedback did not enhance their critical thinking, and did not address methodological problems in the research article they were refereeing.
Some of these aspects can be addressed with a better prompt, and we are working on it. The technical and methodological issues can also be addressed by providing a summary of what the teacher expects students to criticise in the paper, although there may be additional challenges in this approach (what if the student finds something else to criticise that the teacher did not think of? it happens all the time).
Students also mentioned they think the two pieces of feedback are complementary, and they will be happier getting both that just one of them.
This points in the direction of a hybrid approach, where AI is used to enhance the human feedback process, rather than substituting it. The caveat is, of course, that we haven't used the most recent models, we didn't try with mixture-of-experts and all the tricks in the book.
Teaching Python & RELAI Principles
Perhaps our biggest curriculum shift: with @JADHazell we pioneered teaching AI coding tools to first-year students. In the first year macro course that Joe teaches, we introduce students to Python coding for economic analysis. This year, we decided to move in a different direction: since the advent of AI coding agents, we believe it is more important to be able to READ and ORGANISE code than writing it. It is more important to be able to explain your intent to the AI coding agent, and verify that intent has been reflected in the code, than to be able to write the code yourself and test it. But how can you teach students that have never seen a line of code to do that?
Introducing Reverse Engineering Learning with AI (RELAI). Start with a full snippet of Python code. The student is told to prompt the AI to explain what the code does. Once the student understands what the code does, it can asks about the syntax and the programming concepts behind the snippet. Then can ask a study plan for those concepts, if needed. Then can try to enquire the AI about what would happen if I change this line or this parameter. Then it can experiment itself by changing the code, and debug with the help of the AI. Finally, the student can ask the AI to produce new code, based on what was learned, and the new intent. I call this the EXPLORE approach: Examine the code, eXplain what it does, Probe deeper, Link to economics, Output prediction, Recreate understanding, Extend with modification.
Once students are familiar with AI coding agents, they are assessed with a challenging coursework that Joe created. The assignment has a part that is difficult to do without AI, but should be feasible with AI. There are open ended questions where students have to go beyond the simple repetition of what was learned in the course, possibly explore new datasets and questions, etc.
We think this approach can help integrate AI coding agents into the curriculum in a meaningful way, and help students develop a deeper understanding of coding tools in a faster and more efficient way. Coursework is on the way, so we will be able to evaluate the impact of this approach in the next few months. I personally believe RELAI can be adapted to other topics and subjects, and can become one of the way we interact with AI when learning something new.
Read more about our approach here: python-ec1b1.vercel.app/
AI as a productivity tool
This is where you can really go nuts.
I have used AI to produce new teaching material for several workshops and courses. Slides, assignments, exercises, etc. The last few exams were written with AI tools, creating a series of questions first with suggested solutions, and then choosing the most appropriate ones.
I use a coding agent (@cursor_ai ) with access to my teaching materials and past exams, so that it is aware of the content and style. You get a very good exam draft in minutes, and can edit, change questions, generate new ones, etc. It used to take me days to write a good exam, now it takes me a few hours in the afternoon.
I used Cursor to do deep research about a new course I wanted to design. I asked for topics, examples, current research in the field that I may not have been aware of, similar courses' syllabi, and in general what was the state of the art in the field. I got a very long list of topics that I could choose from to design my own course, based on my taste, interest and what I think my students should know. I could generate different versions of the same course for different levels (UG, MSc and PhD).
Conclusion
We are still at the early stages of this journey. We are learning a lot, and we are still figuring out how to best use AI to enhance our teaching. One important thing you may have noticed is that we first define our pedagogical approach and then we integrate AI tools to support it. The other principle should be, design not for the tools you have now, but the ones you will have in a few months or years.
If you have comments, or have been running similar experiments, I will be happy to hear from you.
Geoffrey Schnorr retweeted
New economic research: How is AI affecting the US labor market?
We introduce a new measure of AI displacement risk to spot disruption, then test it against employment data.
We find limited evidence AI has increased unemployment to date.
Read more: anthropic.com/research/labor…
Geoffrey Schnorr retweeted
New paper (w/ Jon Gruber): What’s a building permit worth? And what can we learn about the importance of de-facto regulatory burdens versus de-jure constraints in housing development? We study these questions using a new setting: the market for land with preapproved permits.
Geoffrey Schnorr retweeted
I'm super excited for my new paper with @ATabarrok and Mark Whitmeyer:
"Chaos and Misallocation under Price Controls"
During the 1973-74 gasoline crisis, the U.S. had about a 9 percent national shortfall. But that was far from evenly spread out.
Over 90 percent of stations in Connecticut were rationing fuel somehow, limiting purchase or straight up closed.
In Idaho, Montana, Utah, and Wyoming? Not a single surveyed station reported any problem. Zero. Texas and the Great Plains were "virtually awash with gasoline."
How does a 9 percent shortfall produce 90 percent rationing in one state and zero in another? And how big of a deal is that misallocation?
Our paper does three things.
First, we prove a Chaos Theorem: price controls generically push allocations to corners where some markets get everything and others get nothing, and which corner the economy lands on is unpredictable.
Second, we develop a new way to find sharp robust bounds on the welfare cost of this misallocation. Price controls destroy the demand information you'd need for standard welfare analysis, so we bound the losses across all demand curves consistent with the data. Sharp bounds.
Third, we apply both to the 1973-74 crisis and show that misallocation losses are 1 to 9 times the textbook Harberger triangle.
Let's go through each.
Why do price controls cause chaos?
Price controls kill arbitrage. Normally, if gasoline is scarcer in Connecticut than Idaho, the price rises in Connecticut, attracting supply eastward. A small cost advantage captures only a marginal reallocation, because prices push back.
Freeze the price everywhere and that pushback disappears. The supplier's problem reduces to pure cost minimization. Thinking of the geometry, cost is linear in quantity. A linear objective over a feasible set with corners always lands on a corner. This is the old idea, as Thomas Sowell put it, that economy loses its capacity for incremental adjustment and instead lurches between all-or-nothing extremes
The figure below shows why. The blue segment is the feasible set. The dashed orange iso-cost lines are straight because cost is linear. A straight line sliding across a line segment always hits an endpoint. Flip the cost ranking by a fraction of a cent and the allocation jumps to the other end.
Freeze the price everywhere and that pushback disappears. Every gallon earns identical revenue regardless of destination. The supplier's problem reduces to pure cost minimization. And cost is linear in quantity. A linear objective over a feasible set with corners always lands on a corner. Some markets get filled to capacity. Others get nothing.
The figure below shows why.
The blue segment is the feasible set, all the ways to split a fixed supply between two markets. It has two endpoints. The dashed orange lines are iso-cost lines, and because cost is linear, they're straight. A straight line sliding across a line segment always hits an endpoint. Flip the cost ranking by a fraction of a cent and the allocation jumps to the other end.
Corners are bad enough. But which corner the economy lands on is unpredictable. When delivery costs are nearly equal, a pipeline repair, a refinery outage, a regulatory tweak can flip the entire allocation. Small parameter changes produce discontinuous jumps.
We call this the Chaos Theorem.
How big of a deal is it that we end up at a corner where?
Every textbook draws the Harberger triangle as the cost of a price ceiling. But that triangle assumes reduced supply still goes to the right places. It didn't.
The top row below shows the textbook case: supply spread efficiently, shadow prices equalized, small welfare triangles.
The bottom row shows what actually happens at a corner. One market is fully served. The other bears the entire shortage. Same total supply.
Look at the map again. It's natural to focus on the Northeast. The lines. That's the problem with price controls.
But actually the states with abundant fuel are a sign of the misallocation. Instead of a shortage, they are getting more than they would get without a price control.
How can we estimate welfare in extreme cases?
Standard welfare analysis assumes a demand curve. But price controls destroy the information you'd need to pick the right one. Elasticity estimates work near the previously estimated equilibrium. In the 1974 case, rationed stations received 68 percent of baseline quantity, and many received nothing.
So we developed a bounding approach. No assumed functional form. Across all demand curves consistent with the observed data and plausible demand slopes, what are the largest and smallest possible welfare losses?
No assumed functional form. The key insight: efficient allocation equalizes shadow prices across markets, which collapses what would be an infinite-dimensional problem into a one-dimensional search.
How large was gasoline misallocation in 1974?
This is a theory and methods paper, but we show how to use it in the context of the gasoline shortages. Using station-level AAA survey data presented to President Ford during the crisis, we find exactly the corner-solution structure the chaos theorem predicts: 62.3 percent of stations operating normally, 27.6 percent limiting purchases, and 10.1 percent completely out of fuel.
The shadow price maps tell the story. The Northeast is dark red, consumers valuing gas at multiples of baseline. The Mountain West is blue, below baseline. That gap is the arbitrage opportunity price controls created and simultaneously prevented anyone from exploiting.
To answer that, we need to estimate "shadow price," what consumers would actually pay for one more gallon if they could. When goods are allocated efficiently, shadow prices equalize across markets.
Again, we are bounding this.
How do we do that?
For the upper bound, give the starved markets steep, inelastic demand, so each missing unit costs a lot of welfare. Give the oversupplied markets shallow, elastic demand, so the extra units they got didn't add much. For the lower bound, do the opposite.
The real novel part that makes our multi-market welfare bounds possible is that we then impose that markets add up. That pins everything down to a one-dimensional search.
The shadow price maps show the result. In the upper-bound case, Connecticut's shadow price was 2.5 times baseline. Montana's was 0.7. Shipping a barrel east would have more than tripled your money. That is the arbitrage opportunity price controls created and simultaneously prevented anyone from exploiting.
In terms of WELFARE, we want to look at the misallocation relative to the Harberger triangle.
In our case, the misallocation loss is 1 to 9 times the Harberger triangle. Even at the lower bound, misallocation roughly equals the standard quantity-reduction loss. At the upper bound, the triangle accounts for barely one-tenth of total welfare cost.
As we move into a world where price controls are back in vogue on both sides of the political aisle, let's remember the 1970s. Yes, gasoline lines.
But that wasn't everything.
Chicken farmers gassed, drowned, and suffocated roughly a million baby chicks. “It’s cheaper to drown ‘em than to put ‘em down and raise ‘em,” one Texas farmer explained. Dairy farmers slaughtered cows. Hog farmers culled breeding stock.
In other words, chaos and misallocation.
Paper: briancalbrecht.com/Albrecht_…
A bit deeper write-up on Economic Forces: economicforces.xyz/p/price-c…
Geoffrey Schnorr retweeted
There is a growing consensus in health econ that GLP1s -- like bariatric surgery before -- are unlikely to reduce healthcare costs in the short to medium term (even excluding the direct costs of the drugs).
Geoffrey Schnorr retweeted
In the popular imagination, the great civilizations of East Asia rivalled those of Western Europe up to 1800. However, this was not true - East Asians were much poorer. Why?
I show that vastly different economic structures led East Asia down an alternative path of development.
Geoffrey Schnorr retweeted
Yesterday, I posted a note about an app I made that lets you practice seminars with an AI audience. Then @zhiyufu_econ told me you could use it for teaching, so I added a short update that lets you prepare for a lecture with AI students. Hope it's useful!
practice-dry-run.vercel.app/
I've always found seminar preparation to be one of the trickiest parts of academic research.
Inspired by @ben_golub and @alexolegimas, I vibe coded Dry Run -- a tool to practice presentations with an AI-powered audience that interrupts you in real-time.
Geoffrey Schnorr retweeted
🚨🚨🚨 MY JOB MARKET PAPER 🚨🚨🚨
"Incomplete and Endogenous Take-Up of Unemployment Insurance Benefits" (with @BrendanDMoore)
➡️ We study how the generosity of UI benefits affects take-up and the implications for optimal policy.
Geoffrey Schnorr retweeted
🚨NEW RESULTS (w/ @cailin_slattery & @WNober)
- When gov't engineers retire, highway projects cost more: the engineers pay for themselves 6 times over
- Improving gov’t engineer quality from the 25th to 75th percentile reduces costs by 14%, equal to 3x avg. engineer pay
Geoffrey Schnorr retweeted
Around 1.2 million people are hospitalized involuntarily due to mental illness in the US each year. Policymakers are thinking of expanding such programs across the country. We conducted the first study to determine the causal effects of involuntary hospitalization.
Geoffrey Schnorr retweeted
Honored to discuss the captivating and polarizing "AI-Powered (Finance) Scholarship" by Novy-Marx+@VelikovMihail, at @TaniaBabina's AI conference yesterday! Thought I'd share my view here 🧵
Geoffrey Schnorr retweeted
This full-time, pre-doc RA position working with labor, public, and education economists in OEMA and the Economics Program at West Point is an excellent opportunity to develop skills and work with a great team. @econ_ra
otie.hrmdirect.com/employmen…
Geoffrey Schnorr retweeted
Quick @Stata tip: I've added 43 new tips to my book, bringing the total to 140.
You can download "Quick Stata Tips" and the accompanying .do file for free at toddrjones.com/quickstatatip…
Geoffrey Schnorr retweeted
Economic inequality has not always been a feature of market economies. I show using new data from pre-industrial Japan, 1637-1872, that the Japanese had managed to keep inequality low for centuries without massive state intervention. How did they do it? 1/n
Geoffrey Schnorr retweeted
Just published in @JPubEcon:
"Between a rock and a hard place: The costs and benefits of expanded unemployment insurance benefits"
By Naser Hamdi, Ankit Kalda, & David Sovich
sciencedirect.com/science/ar… #econtwitter
Geoffrey Schnorr retweeted
Fear after police fatalities leads to fewer low-level arrests, but crime rates stay unchanged. Just Accepted new paper by Sungwoo Cho (@chosw13), Felipe Gonçalves, and Emily Weisburst zurl.co/mxmeK
































