
PISA Explorer
Ask the OECD's PISA data a question in plain language and get a survey-correct answer

Project Overview
PISA is the OECD's assessment of what 15-year-olds around the world know in mathematics, reading, and science. Its databases are public, but they are hard to use well: about 88 GB of raw files, more than 29,000 variables, and statistics that are only correct when they are computed with survey weights, plausible values, and replicate weights. As a result, most ministry staff, journalists, teachers, and students cannot use the data directly.
PISA Explorer lets anyone ask a question in plain language. It covers the official 2018, 2022, and 2025 public-use databases (80, 80, and 90 economies, nearly two million student records) and answers with a population estimate and its standard error, a chart with 95% confidence intervals, the data table with CSV export, and a provenance card listing the tables, variables, sample sizes, and exact method behind every number.
Every number comes from code, not from the language model. The model reads the question and fills in a closed analysis form. A statistics engine computes the result. The app then writes the facts itself, and the model's wording is checked against them mechanically: a draft that states a number, a country, or a significance claim that is not in the result is rejected.
The statistics engine and data pipeline run without any AI at all, so researchers can rebuild the database from the OECD files and reproduce every figure. The project is open source under the MIT license, free to use online, and supported by the Penn GSE Learning Analytics and Artificial Intelligence program. It is not an OECD product.
🔬 Research & Findings
The engine reproduces the OECD's published figures: country means and standard errors for PISA 2018 and 2022, and the sample sizes, weighted populations, and standard errors in the PISA 2025 Technical Report for all 90 economies in science, reading, and mathematics. Estimates use the final student weight, all ten plausible values combined with Rubin's rules, and Fay's balanced repeated replication over the 80 replicate weights. A regression set of verified answers is rerun before each release so that no computed number can drift unnoticed.
Project Scope
- RoleCreator & Lead Developer
- PlatformWeb app · Python, DuckDB, Gemini
- ResearchValidated against OECD published results · 3 cycles, 90 economies
- LocationPhiladelphia, PA
- Years2026
Media Gallery


