The invention discloses a building coating and a preparation method thereof. The building coating is composed of a cementing material, water glass, sodium hydroxide, quartz sand, metakaolin, zeolite, fibers and water. The preparation method comprises the following steps: mixing the cementing material, the quartz sand, the metakaolin and the zeolite, stirring, adding the water glass, the sodium hydroxide and the water, stirring, adding the fibers, and stirring to obtain the building coating. A coating layer formed by the building coating has ultrahigh toughness and excellent strain hardening characteristics, can still provide protection for a structure or a component matrix after being subjected to large deformation, is high in anti-permeability grade and excellent in bonding performance, and can be widely applied to surface protection of various building structures and components thereof; and the coating can also be used for reinforcing and maintaining aged and damaged building structures.