How a contractor price estimator works
A rules table, a calculator and a clear label. There is no AI and no hidden model: your approved rules go in one configuration file, and the same inputs always give the same answer.
What the visitor sees
Answers up to six questions
Floor area (with a length-times-width helper), type of space, coating system, current surface, cracks, and one optional add-on.
Sees a range, not a single number
A low and high figure, rounded outward, with a minimum job fee applied to small jobs.
Can read the working
A line-by-line breakdown, the assumptions, what is not included, and a plain notice that it is not a binding quote.
Chooses whether to send an enquiry
On a live build the estimate is shown first. Contact details are only needed if the visitor wants a confirmed quote. In the public demo this form is switched off.
How the range is calculated
For every job the calculator adds up: coating system and surface preparation (each priced per square foot), a space adjustment, a flat allowance for crack repair, and the optional add-on. That is the base estimate.
The range is the base estimate with a lower and upper allowance, rounded outward to a set step, then raised to your minimum job fee if it falls below it. Money is held in whole cents internally so totals add up exactly.
Impossible combinations are blocked rather than priced. Two examples: an area outside the supported limits, or an add-on that your rules say does not go with the chosen system.
What is configurable
- Rates, multipliers, flat allowances, minimum job fee, range allowance and rounding step.
- Option names and notes, assumptions, exclusions and the disclaimer wording.
- Name, one accent colour and a starting floor area. These can be passed in the page address for previews, and are checked against a strict allowlist. They can never change prices or where an enquiry goes.
Each configuration has a version identifier shown under the result, so you can tell exactly which approved rules produced a number. The demo's is demo-epoxy-2026-10-v1.
Limits worth knowing
The rules are sent to the visitor's browser. Anyone who views the page source can read them. If your margins must stay private, this approach is the wrong fit.
- It estimates standard jobs. Unusual spaces still need a person to look.
- The range is only as good as the pricing rules you approve. You are responsible for them and for the prices you quote.
- The public demo stores nothing and sends nothing. A live build sends enquiries only to the one destination written into the agreed scope.
- Embedding depends on your website platform. See the embedding guide.