干隆六十年（1795年）典试云南。累迁翰林院侍读。嘉庆三年（1798年）大考降为检讨。嘉庆四年（1799年）督广东学政。累迁侍讲学士，任满还京，直上书房，提拔为詹事。督山东学政。荐举提拔为礼部侍郎，命还京。嘉庆十二年（1807年），督学江苏，任内因清江浦、荷花塘工程取势太直，屡筑屡圮，奏请恢复原状，并得到许可。之后调兵部任职。嘉庆十四年（1809年），嘉庆帝五旬万寿，万承风请求解任还京祝寿，遭降诏严斥，左迁内阁学士。调任安徽学政，期间调解定远士子与凤阳胥役争议。擢兵部侍郎，还京，仍直上书房，充经筵讲官。