Specialty contractors keep 7.7 cents of every dollar, and lighting is the biggest line on the bid.
Specialty trade net margin runs at 7.7% while lighting is the largest revenue line on an electrical job, so a small counting error eats a large share of the profit. LumenTakeoff refuses to export a takeoff that does not reconcile, and holds existing-to-remain out of the bid number.
The figure
The typical specialty contractor keeps 7.7 cents of every dollar. Lighting fixtures, lamps and controls are the top revenue category for electrical contractors, about a quarter of it.

CFMA's 2025 Construction Financial Benchmarker is built from the financials of 1,558 companies. It puts net income before taxes at 6.7 percent across all contractors and 7.7 percent for specialty trades, with best-in-class firms at 12 percent. Electrical Contractor magazine's 2024 Profile puts lighting fixtures, lamps, ballasts and controls at the top of electrical contractors' revenue, about 25 percent of it, with roughly nine in ten firms doing lighting work.
Put those two together. The largest line on the bid is being priced at a margin of 7.7 cents on the dollar.
So a few percent off on the fixture count is not a rounding error. I count these by hand, and a single fixture type can run to a few hundred instances across nine or ten lighting sheets. Miss eight of them, or carry a dozen existing-to-remain fixtures into the new-work number, and the error is a meaningful share of what the job was supposed to earn. It does not surface on bid day. It surfaces at buyout, when the supplier quote lands against a count nobody can defend.
A total hides it, too. Eight missed on one sheet and eight double counted on another produce a perfect total and two wrong numbers.
What LumenTakeoff does about it
LumenTakeoff counts deterministically on supported vector sheets. The same set produces the same count every time, because the engine reads the geometry the engineer placed rather than interpreting a picture of it. Scanned or raster pages are reported as unsupported, never guessed at, so an unreadable sheet is a visible gap instead of a quiet shortfall inside a total.
Scope is kept separate from the count. Families are separated into new work, existing to remain, relocated, demolition and unresolved, and the in bid scope figure is the new-work quantity with the rest held out rather than folded in. Stroke colour and lineweight are treated as review signals and never as the contractual scope decision: black does not universally mean new, dashed does not universally mean existing, and grey or non-black is never counted as new work. Where the drawing does not settle it, the family is flagged rather than assumed.
Lock in runs a reconciliation check before anything is written. If the numbers do not reconcile, the export is refused. A tool that hands over a clean workbook containing a wrong number has done the worst possible thing to a 7.7 percent margin. The workbook that does come out carries Coverage, Quantities, Findings and Evidence sheets, plus proof images with every counted instance ringed on its sheet.
Compare per fixture type, never totals. Opposite errors cancel in a total, and the margin does not.
Demo phase, tested against real electrical plan sets. The machine counts. You decide.
The machine counts. You decide.
Bring a plan set
See what LumenTakeoff finds.
Run a real lighting takeoff and review the result against the way your team works today.
- Supported vector plan sets
- Lighting fixture families and counts
- Evidence you can check against the drawing
Built for electrical estimators. Your address is used to reply about LumenTakeoff and nothing else.