（306年），晋惠帝被迎回洛阳，司马羕的封爵获得恢复，并任抚军将军。永嘉初年拜镇军将军，加散骑常侍，领后军将军。后东海王司马越东出鄄城，司马羕随行，及后南渡长江。司马羕后来获承制的司马睿任命为抚军大将军、开府。后应诏与南顿王司马宗领流民充实中州，但因江西地区荒凉闭塞，于是回到江南。长安被汉国攻破后，司马羕与百官都劝司马睿即晋王位，司马睿最终接纳，司马羕亦升任侍中、太保。司马睿继位为帝后录尚书事，后领大宗师，升任太宰。太宁二年（324年），王敦之乱被平定后，司马羕加领太尉。司马羕因为是宗室长辈元老，晋明帝