How to quote fire and security work with the margin visible before you send
A seven step method for pricing quotes from current costs, labour units and a reviewed clause library.
Alom, Founder, Calon AI SolutionsPublished 5 October 20264 min read
On this page
Most fire and security quotes are not priced badly. They are priced from information that was right once. The supplier cost is from an old sheet, the labour is a guess from a similar job, and the compliance wording is copied from whichever quote was open.
This guide sets out a method you can run in a spreadsheet tomorrow. It works for fire alarm, emergency lighting, intruder, CCTV and access control work.
Step 1: Keep one parts list, with a price date on every line #
Every part you quote should live in one list with four fields at minimum: part code, description, current cost, and the date that cost was confirmed.
Set a limit for how old a price can be before it must be checked. Sixty days is a reasonable starting point for most equipment. Shorten it for anything with volatile pricing, such as cable.
When a supplier sends a new price list, load it into this list. Do not leave it in an inbox.
Step 2: Set markup rules by category, not by feel #
Write down your markup for each category of item. For example:
| Category | Example markup |
|---|---|
| Detection devices and sounders | 35% |
| Control panels | 25% |
| Cable and containment | 40% |
| Fixings and consumables | 50% |
These numbers are examples only. Set your own from your target margin and your market. What matters is that the rule is written down and applied the same way by everyone who quotes.
Step 3: Price labour in units, not in days #
Break labour into units you can count: time to install one device, one metre of cable, one panel, commissioning per zone. Then apply site factors as multipliers, for example:
- Working at height above a set level
- Occupied building with restricted access times
- Out of hours working
- Listed building or difficult cable routes
A labour unit list takes a day to build from your past jobs. After that, two estimators pricing the same survey should land within a few percent of each other.
Step 4: Confirm the system category before you price anything #
For fire alarm work, the BS 5839-1 system category (for example L1 to L5, M, P1 or P2) drives the design and the price. It should come from the customer's fire risk assessment or specification.
If the category is not clear, ask the customer in writing before you quote. A quote built on a guessed category is the most expensive mistake in this guide, because it usually surfaces at installation.
Step 5: Use a clause library, not an old quote #
Keep your compliance wording in one place, one clause per topic: system category, standards referenced, exclusions, design responsibility, commissioning, handover documents, service terms.
Review the library whenever a standard changes. BS 5839-1:2025 replaced the 2017 edition on 30 April 2025, and the renumbering of clauses means certificates and quote wording that reference old clause numbers need updating even where the requirement did not change.
When you build a quote, pull clauses from the library. Never copy them from a previous quote.
Step 6: Check margin before the quote leaves #
Before sending, look at the margin on the whole quote and on materials and labour separately. Set a threshold, for example 30% gross margin, below which a second person must approve the quote.
This is a one-minute check. It catches the quote where someone discounted labour to win the job without telling anyone.
Step 7: Compare the quote with the job after it is done #
When a job closes, compare quoted labour hours and materials with what was actually used. You do not need to do this for every job. Pick five a month.
Over a few months, you will see which labour units are wrong, which site factors you under-price, and which estimator is consistently optimistic. Feed that back into steps 2 and 3.
Checklist #
- One parts list with a cost date on every line
- A maximum price age, with old prices flagged
- Written markup rules by category
- Labour units and site factors
- System category confirmed in writing before pricing
- One reviewed clause library
- Margin threshold with second approval below it
- Five closed jobs reviewed each month
How Vero does this #
Vero loads supplier price lists in whatever format they arrive, matches them to your parts list, and dates every price. Your markup rules and labour units are applied automatically, compliance wording comes from your approved clause library, and margin is shown on every line before the quote is sent.
Related guides
- Scheduling fire alarm servicing under BS 5839-1:2025: windows, skills and two-engineer jobsHow to track the five to seven month service window per system, match engineers to work, and book two-engineer jobs without double booking.5 min read
- Engineer payroll from verified data: timesheets, mileage and overtimeHow to replace end-of-week timesheets with verified time and mileage, lawfully and without losing your engineers' trust.4 min read
See a quote built in Vero
We will price one of your recent surveys in a live walkthrough.