How to Price a Garage Floor Coating Job (Without Guessing)
Ask five coating contractors how they price a two-car garage and you will get five different answers — and at least two of them are quietly losing money. Pricing by gut feel works right up until material costs move, a floor needs twice the prep you assumed, or you finally sit down and calculate what your "busy" season actually earned.
Here is a repeatable way to price coating work, from a company that has priced thousands of floors.
Start With the Real Square Footage
Not the customer's guess. A "standard two-car garage" can run anywhere from 400 to 650+ square feet, and steps, aprons, and closets add up fast. Measure it, or make your quote contingent on measurement. Every pricing mistake downstream gets multiplied by this number.
Price the System, Not Just the Floor
A full-flake polyaspartic system, a metallic epoxy, and a grind-and-seal are three different jobs with three different material bills and labor days. Your price list should be built around system tiers — each with its own per-square-foot rate that already accounts for:
- Material coverage rates per coat (basecoat, broadcast, topcoat)
- Labor hours for that system's workflow
- Consumables people forget: diamond tooling wear, mixers, spike shoes, tape and plastic
When your systems are templated, quoting stops being arithmetic done in the truck and starts being a menu.
Walk the Floor Before You Commit to Prep
Prep is where margins go to die. Two floors with identical square footage can be hours apart in grinding time. Before you lock a price, look for:
- Moisture issues — test, don't assume. Moisture failures become warranty calls with your name on them.
- Existing coatings — removing a failed DIY epoxy kit is real labor, and the customer rarely mentions it on the phone.
- Cracks, spalling, and pitting — repair material and time.
- Oil stains — contamination that affects adhesion and needs extra attention.
Build prep conditions into your quote as line items. Customers accept "your floor needs crack repair, here is the line for it" far better than a mystery number.
Do Not Forget the Boring Costs
The jobs-per-truck math most contractors skip: insurance, fuel, marketing spend per lead, payment processing fees, the CRM, the office half-day it takes to chase an unanswered estimate. Your per-square-foot rate has to carry all of it. If you have never divided last quarter's total overhead by last quarter's installed square footage, do it once — it is usually a wake-up call.
Protect the Margin at Quote Time
Know your floor (pun intended): the number below which a job is not worth winning. A quote that closes at break-even did not "keep the crew busy" — it burned a day you could have sold profitably. This is much easier to enforce when your estimating tool shows margin on every quote before it goes out.
This is exactly why we built margin visibility into CoatingOS estimates — you see material, labor, and profit on every system tier before the customer ever sees a price.
Follow Up Like the Job Depends on It (It Does)
Pricing well only matters if the estimate closes. Most coating jobs are lost not to a lower bidder but to silence — the customer got busy, and nobody followed up. Automate it: a text the moment the estimate lands, and a polite sequence after that until they answer. It is the highest-ROI "pricing" move there is, because it raises your close rate at the same price.
The Short Version
- Measure the real square footage.
- Quote from system tiers with material math baked in.
- Price prep as visible line items after walking the floor.
- Load your overhead into the rate — all of it.
- Know your walk-away number and see margin before you send.
- Follow up automatically until you get an answer.
If you want the system-tier templates, margin view, and automated follow-up in one place, that is what CoatingOS is — a CRM built by a working coating contractor. See pricing here.


