元丰八年神宗病死,哲宗年幼,高太后临朝,次年改元元祐,起用旧党司马光执政,苏轼被调回京都任中书舍人、翰林学士、知制诰等职。他不同意司马光“专欲变熙宁之法,不复校量利害,参用所长”。在罢废免役法问题上与旧党发生分歧。苏轼认为差役免役“二害轻重,盖略相等,今以彼易此,民未必乐”(《辩试馆职策问札子》),这又引起了旧派疑忌,元祐四年,出知杭州。六年召回,贾易等人寻隙诬告,苏轼“七上封章乞除一郡”(《乞外补回避贾易札子》),先后被派知颍州、扬州、定州。苏轼在杭州,曾减赋赈荒,掘湖修堤;在定州,曾整饬军纪,加强边备。在元祐保守气氛充满朝廷的时代,他仍然在力所能及的范围内不断进行某些兴革。
绍圣元年哲宗亲政,新党得势,贬斥元祐旧臣,苏轼又成为这些新贵打击的对象,被一贬再贬,由英州(今广东英德)、惠州,一直远放到儋州(今海南儋县)。尽管当时“饮食不具,药石无有”,条件极为艰苦,苏轼却能“食芋饮水,著书以为乐”。并对惠州百姓和黎族人民流露了深厚的同情。直到元符三年(1100)宋徽宗即位,他才遇赦北归。建中靖国元年(1101)七月死于常州。