Skip to main content

Elevator Service Company Bookkeeping: Costing Every Callback at the Burdened CET Rate

Published 10 min readMike ThriftMike Thrift
Elevator Service Company Bookkeeping: Costing Every Callback at the Burdened CET Rate

Every month the same check arrives from the building owner — the full-maintenance fee for the six elevators in their tower. It feels like your steadiest income. Then one entrapped-car call at 2 a.m., a burned-out door operator, and a Saturday overtime visit wipe out three months of margin on that contract, and your books never told you it was coming.

If you run an elevator service and maintenance company, your monthly contract billing looks smooth while your costs arrive in lumps. The fix is not more revenue. It is job-costing every contract the way the work actually happens: per elevator, per callback, at your mechanic's true hourly cost — not the number on their pay stub.

The Two Contracts You Sell Create Two Different Sets of Books

Most of your work falls into one of two agreement types, and each one moves risk — and bookkeeping complexity — to a different side of the table.

A full-maintenance agreement gives the building owner a fixed monthly cost: routine examinations plus all service calls between visits are covered. Predictable for them; the callback risk sits entirely with you. If a unit callbacks four times in a quarter, you absorb every hour.

An examination-and-lubrication agreement (still called "oil and grease" in the trade) covers only the scheduled maintenance visits. Every callback is billed separately, usually time-and-materials. Your margin per visit is safer, but your revenue is lumpier and every invoice has to carry its own labor and parts detail.

Know which type each contract is before you post a single entry, because the full-maintenance book needs a callback budget and the exam-and-lube book needs airtight time tracking. Mixing the two up is the first way margins disappear.

That Monthly Check Is Not Revenue Yet

When a customer prepays — a full year of maintenance upfront, or even a single month billed on the first for service delivered across the month — the cash arrives before the work. Record it as a liability (deferred or unearned revenue) first, then move it to revenue as the month's visits and standby coverage are delivered:

  • Debit Cash / Accounts Receivable, credit Deferred Revenue when you bill or collect
  • Debit Deferred Revenue, credit Maintenance Revenue each month as you perform the service

This is the standard ratable-recognition treatment for service retainers, and it matters most at renewal and sale time: a buyer or lender looking at a December balance sheet full of annual prepayments should see a liability, not a windfall. If you booked the whole prepayment as January revenue, your first quarter looks heroic and the rest of the year looks like a slump — and you will price renewals off a fantasy.

Cost Every Contract Per Elevator, Not Per Month

Here is the discipline that separates shops that grow from shops that grind: a profit-and-loss statement for each unit under contract, updated at least quarterly. A six-elevator tower is not one $3,000-a-month contract. It is six $500-a-month contracts with six different callback histories, and one bad actor — the 40-year-old hydraulic with the obsolete controller — is usually eating the margin of the other five.

For each unit, accumulate:

  • Routine visit labor: scheduled examinations at your burdened hourly rate, including travel and parking time downtown
  • Callback labor: every unscheduled visit, tagged to the unit, at the rate actually paid — straight time, time-and-a-half, or double-time for nights, weekends, and entrapments
  • Parts used on callbacks and repairs, at cost, tagged to the unit
  • A share of standby and dispatch overhead: someone answers the emergency line at midnight; that cost belongs to the full-maintenance pool

After twelve months you will know the number that matters: callbacks per unit per year × blended cost per callback. Suppose a tower's six units averaged two callbacks each last year, and each callback costs you roughly $450 in burdened labor plus $180 in parts. That is $7,560 a year — $630 a month — of expected callback cost hiding inside a $3,000 monthly contract, over 20 percent of the fee. Price the renewal without that number and you are negotiating blind.

A CET-Certified Mechanic's Hour Costs Far More Than Their Pay Rate

Industry data puts the median annual wage for elevator installers and repairers above $100,000 — the Bureau of Labor Statistics reported roughly $109,910 in May 2025 — and that is only the starting point for your math. Elevator work cannot legally go to the cheapest bidder with a toolbox in most states: mechanics typically need a state license built on documented experience or a completed apprenticeship, and the industry credentials stack up from there.

The National Association of Elevator Contractors (NAEC) certifies CETs (Certified Elevator Technicians), who must document years of on-the-job hours or complete an approved training program and pass a certification exam; CATs (Certified Accessibility Technicians) for platform lifts and home elevators; and QEIs (Qualified Elevator Inspectors) qualified under the ASME QEI-1 standard. Several states write these credentials directly into their licensing laws. A general handyman — whatever their hourly rate — cannot lawfully perform or sign off conveyance work, and your customer's insurance carrier and the authority having jurisdiction will both ask who did it.

So build every job cost on the burdened rate, not the wage:

  1. Start with the hourly wage (say $50–55/hour for an experienced mechanic in many markets)
  2. Add payroll taxes, workers' comp (high for this trade), health insurance, and retirement — typically 30–40 percent on top
  3. Add the truck: payment or depreciation, fuel, insurance, and tooling
  4. Add training and continuing education, license renewals, and certification fees
  5. Add unbillable time: callbacks that run long, drive time between far-flung units, safety meetings

A $52/hour mechanic routinely costs $85–$100 per hour before profit, and entrapment or night work at overtime multiplies from there. Your billing rate needs to clear that burdened cost with margin to spare — commonly 1.5 times or more for time-and-materials work. Shops that cost callbacks at the pay-stub rate systematically underprice both their exam-and-lube invoices and their full-maintenance renewals, and they do it on every ticket, all year.

Track Parts Like Inventory, Not Like Office Supplies

The second margin leak is the parts shelf. A door operator, a controller board, or a hydraulic packing kit can cost hundreds to thousands of dollars, and elevator parts have long lead times — so every shop carries truck stock and shop stock. If all of it hits "parts expense" in the month purchased, your monthly P&L swings with your purchase orders instead of your work.

Keep it simple but strict:

  • Truck stock and shop stock are inventory on the balance sheet, counted at least quarterly. Only move a part to cost of goods or job cost when it goes onto a specific unit.
  • Tag big-ticket parts to the unit and the ticket. When the obsolete controller finally fails six months later, you want to know the part cost that contract already consumed.
  • Reserve for the known-unknowns. If you service aging equipment with obsolete components, a small monthly warranty-style reserve for full-maintenance units smooths the quarter when a $4,000 board dies. Fund it from the contract's own history, not a guess.

The Costs Owners Forget to Allocate

Four line items routinely escape the per-contract P&L and quietly turn winners into losers:

  • Licensing, permits, and inspection pass-throughs. Your contractor license, each mechanic's license, and QEI inspection coordination all cost money. Decide explicitly which fees you pass through to the building owner and which live inside your monthly rate — then make sure the rate actually covers the latter.
  • Insurance beyond the obvious. General liability, commercial auto for the fleet, and the umbrella coverage that high-rise contracts increasingly demand. Allocate premiums across contracts by revenue or by unit count, and revisit the allocation as the mix changes.
  • Modernization work is not maintenance. A controller replacement or cab interior is capital work for the building and project revenue for you — track it as a separate job with its own budget, never as an overrun on the maintenance contract. Blending the two flatters the project and starves the contract, or vice versa.
  • Callback clustering. Two callbacks on the same unit within weeks usually signal an underlying fault the routine visit missed. The accounting fix is a "repeat callback" flag in your ticketing; the business fix is sending your best diagnostician before the third free visit on a full-maintenance unit.

Price Renewals From Your Own Callback History

When a full-maintenance contract comes up for renewal, you hold something the building owner does not: twelve months of unit-level truth. Use it.

  1. Pull the trailing twelve months of routine hours, callback hours (split by pay rate), parts at cost, and allocated overhead for the units in the building.
  2. Total it, add your target margin — 15 to 20 percent is a defensible floor for full-maintenance risk — and divide by twelve. That is your renewal ask.
  3. Present the callback log alongside the price. Owners renew at higher rates when they can see the 2 a.m. entrapment response, the door operator, and the Saturday overtime itemized. Your ticketing history is your negotiating leverage.
  4. Set a walk-away number before the meeting. The obsolete unit that callbacks monthly at a 1970s-era rate is not a relationship to protect; it is a liability to reprice or release. Some other shop can lose money on it.

Exam-and-lube renewals are simpler — your rate per visit rises with your burdened labor cost — but apply the same discipline: if visit times on an aging unit have crept from one hour to two, the visit price moves too.

Five Bookkeeping Mistakes That Quietly Erase Margin

  • Booking annual prepayments as revenue on receipt instead of deferred revenue, then pricing renewals off an inflated quarter.
  • Costing callbacks at the mechanic's wage instead of the burdened rate, underpricing every ticket and every renewal.
  • Expensing parts on purchase instead of on installation, so no contract's true cost is ever visible.
  • Running one P&L for the whole shop with no per-unit or per-contract view, so the worst unit hides inside the average.
  • Letting modernization dollars mingle with maintenance dollars, which corrupts both the project margin and the contract margin.

None of these requires new software to fix — just separate accounts, tagged tickets, and a quarterly per-unit review. The shops that do it stop dreading renewal season, because the numbers walk in ahead of them.

Keep Your Contract Margins as Auditable as Your Callback Logs

Your elevators run on documented maintenance intervals, licensed mechanics, and inspection records — your books deserve the same rigor. Per-unit job costing, burdened labor rates, inventory-tracked parts, and honest deferred revenue turn a stack of monthly checks into contracts you can actually defend at renewal time. As you tighten up job costing and renewal pricing, keeping every ticket, part, and prepayment in clean, version-controlled records makes the quarterly review fast instead of forensic. Beancount.io provides plain-text accounting that gives you complete transparency and control over your financial data — no black boxes, no vendor lock-in. Get started for free and see why developers and finance professionals are switching to plain-text accounting.

Share this article