Can I pour epoxy over stained or sealed concrete?
Usually, yes, but it depends on what's on the concrete.
Stained but not sealed: you can pour with minimal prep. Clean the surface thoroughly with denatured alcohol or acetone to remove dust and residue, then seal coat and flood coat with UltraClear Bar & Table Top Epoxy as normal. There's no need for heavy sanding that could damage a decorative stain pattern.
Oil-based stain that left a film or residue: that can keep the epoxy from bonding properly. Apply 3 coats of an oil-based polyurethane over the surface first; the epoxy adheres well to oil-based poly.
Sealed concrete: customers have had success applying the epoxy over sealed concrete, but it depends on the type of sealer. If the concrete was sealed with a product we haven't tested, you have two options. Either test the epoxy on a small test piece first, or apply 3 coats of oil-based polyurethane over the sealer and pour the epoxy on that. A test tells you quickly: if the epoxy fish-eyes, pulls away or separates on the surface, it isn't bonding. You can also wait 72 hours to confirm it cured properly.
Once the surface is sorted out, the process is the same as for bare concrete: seal coat, then flood coat 4 to 6 hours later.