The geopolymer was chosen to immobilize the municipal solid waste incineration (MSWI) fly ash because of its strong fixing capacity for heavy metals. The fly ash-based geopolymer was synthesized from metakaolinite with MSWI fly ash under activation of sodium silicate solution, and then cured at relative humidity (RH) between 40% and 90% at 20°C. The ability of immobilization of heavy metals in MSWI fly ash with the geopolymer was evaluated in terms of the compressive strength and leaching concentration. The experimental results confirmed that the compressive strength of the resulting solidified body could achieve 35.13 MPa after 7 days of curing. Meanwhile, the leaching concentrations of Pb, Zn, Cu and Cr were 0.0230 mg/kg, 0.186 mg/kg, 0.231 mg/kg, and 6.56 mg/kg, respectively. We confirm that geopolymerisation is an effective alternative in the disposal of various hazardous wastes containing heavy metals.