A broken-down portable toilet service truck gets towed in Voorheesville, NY. How to price portable restroom rental jobs from the drive, not the unit
Photo by 4300streetcar on Wikimedia Commons, CC BY 4.0

Guides

How to price portable restroom rental jobs from the drive, not the unit

Set portable restroom rental prices from the drive, not the unit: a stop-cost derivation in named terms, plus the minimum that makes an isolated job viable.

What to take away

  • Build the price up from one stop, and put the drive inside it. Time at the unit is the part everyone counts; time between units is the part that decides whether the job earns.
  • Write the derivation in named terms and fill it from your own records. A price built from a competitor's published rate describes their route, not yours.
  • Set a minimum that reflects the slot a job occupies on a route, then hold it.
  • Re-derive when disposal distance, wage rates or route density change. Those three move the answer; almost nothing else does.

General guidance only, not financial or legal advice. This page contains no rates. Every term below is filled from your own costs.

The terms

Define these once, in writing, and reuse them.

Terms to define once

  • T: minutes at unit per service visit
  • D: minutes driving from previous stop
  • E: emptying trip minutes divided across stops
  • H: loaded hourly cost for driver and truck
  • C: consumables cost at one visit
  • V: number of service visits over job term
  • A: one-off delivery and collection cost
T
is time at the unit per visit, in minutes.
D
is drive time per stop, in minutes.
E
is disposal time charged to one stop, in minutes.
H
is the loaded hourly cost of driver and truck, in dollars per hour.
C
is consumables and per-visit materials, in dollars per visit.
V
is the number of service visits the job buys.
A
is the one-time cost attached to the job rather than to a visit. Delivery, collection and placement sit here.

The derivation

Cost of one service visit = ((T + D + E) divided by 60) x H, plus C.

From visit cost to price

  1. Visit cost = ((T + D + E) / 60) x H + C
  2. Job cost = A + (V x visit cost)
  3. Price = job cost + decided margin
  4. D and E differ between identical customers
  5. Rate sheets hide D and E

Cost of the job = A + (V x cost of one service visit).

Price = cost of the job, plus the margin you have decided the job type should carry.

Two customers who buy exactly the same thing can cost you very different amounts. D and E are the reason, and neither of them appears on a rate sheet.

The reason for writing it this way is that D and E are where jobs differ, and they are precisely what a rate sheet hides.

Worked example. The numbers are illustrative, not a market rate.

One isolated stop, four visits in the month:

  1. T = 12 minutes, D = 20 minutes, E = 6 minutes. With H at 45 dollars an hour, (12 + 20 + 6) / 60 x 45 = 28.50.
  2. Add C of 9.00 and one visit costs 37.50.
  3. With A at 60.00 the job costs 60 + (4 x 37.50) = 210.00.
  4. At a 30 percent markup the price is 273.00 for the month, which is 68.25 a visit.

Five stops on one route leg, four visits each:

  1. T stays at 12 minutes. D falls to 6 minutes and E to 4, because one disposal run now serves five stops.
  2. (12 + 6 + 4) / 60 x 45 = 16.50, plus C of 9.00, so one visit costs 25.50.
  3. The job costs 60 + (4 x 25.50) = 162.00. At the same markup the price is 210.60, which is 52.65 a visit.

Same unit, same frequency, same consumables. Only D and E changed, and they cut the visit price by about 23 percent. That is the argument for pricing the drive.

Filling the terms honestly

  1. Measure T at several real stops, on different site types. A construction unit that has taken a week of heavy use is not the same visit as a lightly used one at an office site.
  2. Take D from actual route data rather than from map estimates. Traffic, gates, parking and getting the hose out are all in the real number.
  3. Derive E from the round trip to the receiving point and the number of stops one tank serves. If the tank serves eight stops, each carries an eighth of the trip.
  4. Build H as a loaded cost. The Bureau of Labor Statistics wage tables publish occupational wage estimates by area, which is the sensible way to check your assumption is plausible where you operate, and then add everything that sits on top of a wage.
  5. Take C from invoices, per visit, not per month.

The equipment assumptions inside H come from how the fleet and the truck are chosen, and the daily measurement that produces T, D and E is described in what a driver does at each stop.

What the derivation reveals

Three things, usually.

What the derivation reveals

  • Cheapest stopnext to another stop
  • Isolated jobneeds a minimum not a rate
  • Service frequencylargest driver of job cost
  • Frequency set bygoverning authority and users

That the cheapest stop on your route is the one next to another stop, which argues for pricing density rather than volume.

That an isolated job needs a minimum rather than a rate.

Service frequency is the largest single driver of job cost, so agree on it explicitly. The site's governing authority and the number of people using the unit, not you, set how often a unit must be serviced.

Put the frequency in the contract and price against it. When the site's crew count grows, the frequency conversation has to happen again.

Setting the minimum, and holding it

A minimum charge is not a way of extracting more from small customers. It is the price of the slot a job occupies: the drive to it, the drive from it, and the fact that no other work can happen in that time. The drive costs the same whether the job is one unit or ten.

Holding the minimum

Is the job below the minimum?

Yes

decline rather than discount

No

apply the published minimum consistently

Derive it from the same terms. Take the thinnest stop you will accept, with no other stop near it. Minimum = (cost of one visit + A) x (1 + markup). With the single-stop numbers above, (37.50 + 60) x 1.30 = 126.75 for a one-visit call-out.

Publish one figure per job type, apply it consistently, and be willing to decline rather than discount it. An operator who discounts a minimum has not lowered a price; they have accepted a job that funds nothing.

Quoting what you can honor

A quote is a representation, and the conditions on it have to be visible when the customer reads it, not when they receive the invoice.

The FTC's advertising guidance for small business sets the standard: claims must be truthful, not misleading and supportable.

Applied here, a price must name the service frequency it assumes, the access it assumes, the area it covers and what happens when a visit cannot be completed. A price that depends on all four and mentions none is not a price.

A clause that does this reads:

Service is weekly. The price covers units at the address on this quote. The truck must reach within 50 feet of each unit, and gates must be unlocked by 7am on the service day.

If a visit cannot be completed because of locked gates, blocked access or a missing unit, it is billed at the visit rate, and the next visit stays on schedule. The price assumes the user count stated above, and a rise above it starts a frequency review.

The equipment and consumables assumptions behind a quote are worth listing too, and the checklist of what to own first is a reasonable place to check what you have actually committed to supplying.

Closing the loop after the job

The derivation is only as good as its feedback. After a job ends, compare what you assumed against what happened: how long the stops really took, how many visits were actually made, how many were blocked, and what came back damaged.

Keep that comparison with the job record. The IRS on which records a business keeps leaves the system to you if it clearly shows income and expenses, and those records answer what a price sheet cannot: which jobs earned.

The wider framework these numbers sit inside is in how rental pricing is built. The permissions and cover assumed in H are in the legal and insurance ground rules.

When to re-derive

Three triggers, and they are the only ones that matter much: a change in disposal distance or charges, a change in wage rates, and a material change in route density. Fuel matters too, but it moves the answer less than owners expect because it is small beside driver time.

Set a review date as well, so a year cannot pass without anyone looking.

Common questions

Should every customer get the same rate?

No, and pretending otherwise is what creates unprofitable accounts. Customers differ in drive time, access, frequency and term, and the price should differ with them. What should be consistent is the method.

How do I raise prices on an existing standing order?

Give notice in the form the contract requires, explain what changed, and do it at a renewal point rather than mid-term. Contracts written with an adjustment mechanism make this a routine step instead of a negotiation.

Is it worth quoting below cost to win a large account?

Only if you can name what you are buying and when it converts. A large account at a loss is a large loss, and in a route business it also consumes the truck hours you would need for profitable work.

What about the job that only exists because it is next to another one?

That is exactly the job the derivation is for. With D near zero it can be priced attractively and still earn, which is how density becomes a commercial advantage rather than an accident.

More in Guides

Latest from Policy Desk