The closet
Pick a common job to start, then replace every rate with a fixture invoice and a crew you have timed. Changing scope, bowl, or rough-in fills starting hours and material only when you have not already edited that field.
Hours and material rates
These start from the scope, bowl, and rough-in you picked. They are ballpark crew figures, not a fixture catalog or a guarantee.
Your costs
Payroll burden covers employer taxes, workers’ compensation, liability insurance, and paid time off. Underestimating it is how a $249 swap that looked profitable was not.
Your bid
- Toilets
- Travel
- Crew hours
- Loaded labor
- Bowl and seal
- Flange, supply, extras
- Travel & other
- Overhead
- Total cost
- Profit
- Price per toilet
- Effective hourly rate
- Walk-away price
A bid link carries your own rates — wage, burden, overhead, and target margin — so the page reopens exactly as you left it. Send it to yourself or your crew. The numbers ride after the #, which is never sent to a server, so copying a link uploads nothing. The customer should get the price, not the link.
Same closet, four scopes
| Scope | Hours | Price |
|---|
Same closet, four bowls
The upgrade a homeowner is asking for when they say “can we do a one-piece instead?” — same closet, same scope, starting bowl kits. Matching the two-piece special on a one-piece job is the losing bid.
| Bowl | Hours | Price | vs two-piece |
|---|
Same closet, who bought the bowl
The $249 “just set what I bought at the store” special. Zeroing the fixture invoice is not the same as a free install — the trip and the set still cost money, and a wrong rough-in is a second trip. Should I install a customer-supplied toilet?
| Who supplies | Hours | Your bid | At their number |
|---|
Same closet, when you can work
The “can you come Saturday? Same $249?” special. A weekday slot is the bid you already have. Same-day while they stay home is the same wage on a slower set. After-hours is time-and-a-half plus a second dispatch because an overflowing toilet is not a stop you combine with a weekday route. Should I take a Saturday toilet call?
| When | Hours | Your bid | At their number |
|---|
Where the hours go
Transparent arithmetic from your own inputs. The starting hours and material rates are common ballpark figures, not an industry standard, a benchmark, or a guarantee — time your own crews and replace them.
Hand the customer a proposal
The price above is for you. This is the page you print or save as a PDF and give to the customer — your details, their details, the scope, the deposit split, and a line for them to sign. Your business details are saved on this device so you only type them once; the customer’s details are never saved.
Everything on the printed page is text you typed or a number this calculator worked out. It contains no warranty, lien, or cancellation wording — those depend on your jurisdiction and your contract, and this tool is not the place to invent them.
Common questions
Why is a $165 toilet a $645 job?
Because almost none of the cost is the fixture. On the defaults the toilet is $165 of a $644.71 price; the rest is 2.76 hours of loaded labor, a wax ring, a supply line, a $55 offset flange, the vehicle, overhead, and margin. This is the arithmetic to show a homeowner who has priced the same toilet at a big-box store and wants to know what the rest is for.
Why is travel 1.11 hours for six miles?
Because the trip is not just driving. The default allows a fixed turnout time plus a per-mile component, which together cover loading, parking, walking the fixture in, and getting back out — the real elapsed cost of attending a short job. On a 2.76-hour call, 40% of the paid time is arriving and leaving, which is exactly why a flat “one hour labor” quote loses money on small plumbing work.
What is the $55 offset flange for, and do I always need one?
No — it is in the defaults because it is the commonest surprise, not because every job needs it. It shifts the toilet slightly off the existing waste pipe centre when the new fixture rough-in does not match the old one, which happens most often on older homes with a 10-inch or 14-inch rough-in. Set it to zero when you have confirmed a matching 12-inch rough-in; leave it in when you are quoting sight-unseen.
Is haul-away of the old toilet included?
Not on the defaults, and neither is a bidet seat or a wax-free seal. Disposal is worth pricing rather than absorbing: many transfer stations charge for porcelain, and an old toilet left at the kerb is a complaint. Turn the option on when the customer expects the old unit to leave with you, which most do unless you have said otherwise in writing.