Epoxy is one of the few finishes where the failure mode is dramatic. It does not fade or wear thin; it lifts in sheets, usually starting where you park a warm tyre. And in nearly every case we are called out to look at, the coating itself was fine. It simply never had anything to bond to.
Concrete straight from a builder is usually sealed, either deliberately with a curing compound or incidentally by power-troweling that closes the surface. Epoxy cannot key into a closed surface. Acid etching, which many kits recommend, opens it only partially and leaves residue behind. Diamond grinding is the honest answer: it removes the sealed layer, opens the pores, and gives the primer something mechanical to grab.
Moisture is the second issue and the one most often skipped. A slab without a vapour barrier underneath — common in older garages and basements — moves water upward continuously. Trap that under an impermeable coating and hydrostatic pressure will eventually push the epoxy off the concrete no matter how well the surface was prepared. A simple moisture test before quoting tells you whether you need a moisture-tolerant primer or a different system entirely.
Cracks and pits need filling with a proper repair product rather than being coated over, because a coating spanning a moving crack will telegraph and then split. And joints need a decision made about them: filled and coated over, or honoured through the finish. Ignoring them is the option that looks worst in two years.
Do all of that and the coating part is straightforward: primer, base coat, flake or metallic if you want it, topcoat, and a clearly stated cure time before you drive on it. Skip it, and you are buying a floor twice.
