Disclosed are a heavy metal passivator and a preparation method therefor. The heavy metal passivator has a raw material composition comprising component A and component B, wherein raw material component A comprises the following raw material components, in percentage based on the mass of component A: 15-80 of pyrite; 5-80 of quicklime; and 5-70 of reducing iron powder; and raw material component B comprises the following raw material components, in percentage based on the mass of component B: 30-80 of clay mineral; and 3-40 of anhydrous sodium sulphate. The steps of the preparation of the heavy metal passivator comprises: (1) preparation of primary product I; (2) preparation of primary product II; and (3) blending the prepared primary products I and II, and crushing and packaging same to obtain the heavy metal passivator. The heavy metal passivator of the present invention has a better treating curing effect on various heavy metals, and a good compatibility with soil, does not result in secondary soil polluti