FAT-110 · Lesson 7 of 12 · 20 min

Building and fire codes in Canada

Captain Helen Strand of the Saskatoon Fire Department's fire prevention branch visits Bramwell's office once a year to talk to the technicians about what her inspectors are finding. This year, Sasha is in the room. Helen starts with a question: when Gerry tests a system at Riverlight Tower, which document says how often he has to test each smoke detector? Someone says the fire code. Someone else says CAN/ULC-S536. Helen says both are right, and explains why. This lesson explains how fire alarm requirements are set in Canada: who writes the model codes, how a province turns them into law, how the building code and the fire code divide the work, which ULC standards they call up, and who enforces them.

Who makes the rules

In Canada, building regulation is a provincial and territorial responsibility. To avoid thirteen different sets of rules, the provinces and territories work together with the federal government on a set of National Model Codes: the National Building Code, the National Fire Code, the National Plumbing Code and the National Energy Code for Buildings. They are developed by committees of volunteers from industry, government and the public under the Canadian Board for Harmonized Construction Codes, and published by the National Research Council. A model code has no force on its own; it becomes law when a province or territory adopts it, usually with some amendments.

Saskatchewan adopts the National Building Code and the National Fire Code with few changes. The 2020 editions came into force across the province on January 1, 2024, through The Building Code Regulations and The Fire Safety Regulations. The 2025 editions of the national codes were published in late 2025; Saskatchewan, like other provinces, will decide when to adopt them, and until it does, the 2020 editions remain the law. Some provinces, including Ontario, Quebec, British Columbia and Alberta, publish their own codes based on the national ones, with more changes. A technician who works across provinces has to know which code applies where.

A chain of boxes from top to bottom: National Model Codes published by NRC; provincial adoption by regulation, with Saskatchewan adopting NBC 2020 and NFC 2020 on January 1, 2024; the National Building Code, for new construction, calling up CAN/ULC-S524 for installation and CAN/ULC-S537 for verification; the National Fire Code, for existing buildings, calling up CAN/ULC-S536 for inspection and testing; and the Canadian Electrical Code for wiring. Side boxes show the authorities: building officials, the fire department, and the electrical inspection authority.
How Canadian fire alarm requirements are set and enforced.

The building code and the fire code

The two codes divide the work by time. The National Building Code applies when a building is built, added to, altered or changes use. It decides whether a fire alarm system is required, what kind, where detectors and appliances go and how the system is installed and verified. The National Fire Code applies to buildings in use. It requires owners to keep fire protection systems in working order, to inspect and test them, to keep records, to have a fire safety plan, and to take specific steps when a system is out of service. A system installed in 1995 is still judged against the building code of 1995 for how it was built, but against today's fire code for how it is maintained.

The building code is organised into three divisions. Division A sets out compliance, the code's objectives and its functional statements; Division B contains the acceptable solutions, the detailed requirements most people mean when they say 'the code'; Division C covers administration. Within Division B, Part 3 covers large buildings and buildings with assembly, care or high-hazard uses, and Part 9 covers houses and small buildings. Fire alarm requirements for Part 3 buildings are mainly in Subsection 3.2.4, Fire Alarm and Detection Systems, with extra rules for high buildings in Subsection 3.2.6. Part 9 has its own simpler requirements, including smoke alarms in dwelling units.

When a fire alarm is required

Article 3.2.4.1 of the building code lists when a Part 3 building needs a fire alarm system. The list is based on height, the number of people and the use. Examples include buildings more than three storeys high, counting storeys below the first storey; buildings with an occupant load over 300; buildings with more than 150 people above or below the first storey; schools, colleges and child care facilities with more than 40 occupants; licensed beverage establishments and restaurants with more than 150; industrial occupancies above set occupant loads, with much lower thresholds for high-hazard uses; residential buildings with sleeping accommodation for more than 10 people; and care, treatment and detention occupancies. There are exceptions, such as small apartment buildings where every unit has its own exit to the outside. Other articles then decide whether automatic detection is needed, where smoke alarms go, which spaces need heat or smoke detectors, and whether the system is single-stage or two-stage.

Buildings are classified into major occupancy groups, and the group drives many requirements. Group A is assembly, divided into divisions such as A-2 for schools and restaurants; Group B is care, treatment and detention; Group C is residential; Group D is business and personal services, which includes offices; Group E is mercantile; and Group F is industrial, split by hazard. A building with more than one use has more than one major occupancy, and the requirements for each apply to its part of the building. The script below is a teaching aid that classifies a few buildings and screens them against simplified thresholds; a real decision always comes from the adopted code itself, with all its articles and exceptions.

# Teaching aid: rough occupancy classification and fire alarm screening (simplified, not the full code)
groups = {"assembly": "A", "school": "A-2", "restaurant": "A-2", "hospital": "B-2", "apartment": "C",
          "hotel": "C", "office": "D", "store": "E", "warehouse": "F-2"}
def needs_alarm(use, storeys, load, above_below_first, sleeping):
    reasons = []
    if storeys > 3: reasons.append("more than 3 storeys")
    if load > 300: reasons.append("occupant load over 300")
    if above_below_first > 150: reasons.append("over 150 above or below the first storey")
    if use == "school" and load > 40: reasons.append("school with more than 40 occupants")
    if use == "restaurant" and load > 150: reasons.append("licensed restaurant over 150")
    if use in ("apartment", "hotel") and sleeping > 10: reasons.append("sleeping accommodation for more than 10")
    if use == "hospital": reasons.append("care or treatment occupancy")
    if use == "warehouse" and above_below_first > 75: reasons.append("industrial over 75 above or below the first storey")
    return reasons
buildings = [("Willowbank School", "school", 2, 420, 180, 0), ("Tamarind House", "office", 6, 650, 540, 0),
             ("Riverlight Tower", "apartment", 18, 380, 360, 360), ("Corner bakery", "store", 1, 30, 0, 0)]
for name, use, st, load, ab, sl in buildings:
    r = needs_alarm(use, st, load, ab, sl)
    print(f"{name:18s} group {groups[use]:4s} -> " + ("alarm required: " + "; ".join(r) if r else "no trigger in this screen"))
Output
Willowbank School  group A-2  -> alarm required: occupant load over 300; over 150 above or below the first storey; school with more than 40 occupants
Tamarind House     group D    -> alarm required: more than 3 storeys; occupant load over 300; over 150 above or below the first storey
Riverlight Tower   group C    -> alarm required: more than 3 storeys; occupant load over 300; over 150 above or below the first storey; sleeping accommodation for more than 10
Corner bakery      group E    -> no trigger in this screen

The ULC standards

The codes don't describe how to install or test a fire alarm system in detail; they call up standards that do. Standards referenced by the codes become part of the requirement, in the edition the code names. The most important for a technician are these. CAN/ULC-S524, the Standard for Installation of Fire Alarm Systems, covers how devices, appliances, wiring and control units are installed; a 2024 edition was published in December 2024. CAN/ULC-S537, the Standard for Verification of Fire Alarm Systems, sets the procedure for checking a new or altered system before it is put into service. CAN/ULC-S536, the Standard for Inspection and Testing of Fire Alarm Systems, sets what is inspected and tested in existing systems and how often, and also has a 2024 edition. CAN/ULC-S561 covers monitoring and signal receiving centres. Product standards such as CAN/ULC-S527 for control units and CAN/ULC-S529 for smoke detectors are what manufacturers test their products to, so that they can be listed.

The edition matters. The 2020 building code names particular editions of these standards, and those are the editions that apply in a province that has adopted it, even if newer editions have been published since. A newer edition can be used if the authority accepts it as an alternative, and owners and designers sometimes choose it for its improvements. On a project, the specification usually states which editions apply, and the technician works to that.

The main documents behind a Canadian fire alarm system.
DocumentWhat it doesApplies to
National Building Code (as adopted)When an alarm is required, what kind, where devices goNew buildings, additions, alterations, change of use
National Fire Code (as adopted)Owners' duties: maintain, inspect, test, plan for impairmentsExisting buildings in use
CAN/ULC-S524How systems are installedNew installations and alterations
CAN/ULC-S537How a new or altered system is verifiedBefore a system is put into service
CAN/ULC-S536What is inspected and tested, and how oftenExisting systems
Canadian Electrical Code, Section 32Wiring of fire alarm systemsAll fire alarm wiring

Inspection and testing under the fire code

The fire code puts the duty on the owner: the owner must make sure the fire alarm system is inspected, tested and maintained according to CAN/ULC-S536, and must keep the records for the time the code sets. In practice the owner hires a company like Bramwell to do the annual inspection and test, and building staff do the simpler checks between visits, such as daily and monthly checks of the panel's indicators. S536 lists which tests happen yearly, such as testing every detector and manual station, measuring battery condition and confirming each device reports correctly, and which checks happen more often. Helen's answer to her own question is therefore that the fire code requires the testing, and S536 says how and how often.

When a system is out of service, whether for repair, alteration or an impairment caused by damage, the fire code requires the owner to notify the fire department and take measures to protect occupants, such as a fire watch, which Lesson 11 describes. The fire safety plan, which the fire code requires in many buildings, must describe how this is done.

The electrical code

Fire alarm wiring is electrical work, and the Canadian Electrical Code, adopted in Saskatchewan as in other provinces, has a section devoted to it: Section 32, Fire Alarm Systems, Smoke Alarms, Carbon Monoxide Alarms, and Fire Pumps. It sets requirements such as the type of cable, how circuits are protected and separated from other wiring, and how the panel's power supply is connected. Electrical permits and inspections are handled by the provincial electrical inspection authority, and wiring work must be done by or under a licensed electrical contractor according to provincial rules.

Who enforces the rules

Several authorities have a say. Municipal building officials review plans for new buildings and alterations, issue building permits and inspect construction against the building code; in Saskatoon, that is the city's building standards branch. The fire department enforces the fire code in existing buildings: its inspectors check that systems are maintained and records kept, investigate after fires and false alarms, and may order corrections. The electrical inspection authority enforces the electrical code. Insurers and building owners may add their own requirements, such as using CFAA-registered technicians, on top of the code minimum.

When a design doesn't follow the acceptable solutions in Division B, the code allows an alternative solution, as long as it achieves at least the level of performance required by the acceptable solution in the areas defined by the objectives and functional statements it addresses. The designer prepares the analysis; the authority decides whether to accept it. Technicians see the results in sequences of operation and device layouts that don't look like the textbook, and should ask about them rather than 'correct' them.

Worked problem

Which document applies?

Sasha is asked three questions on a quiz at the CFAA study group: (1) How far apart can smoke detectors be on a flat ceiling in a new office? (2) How often must the smoke detectors at Riverlight Tower be tested? (3) Who decides whether Willowbank School needs a fire alarm at all? Which document answers each?

Show solution
  1. (1) Spacing on installation is set by CAN/ULC-S524, in the edition referenced by the adopted building code.
  2. (2) The testing frequency for an existing system is set by CAN/ULC-S536, required by the adopted fire code.
  3. (3) Whether a fire alarm system is required is set by the building code, Article 3.2.4.1 and related articles, for the school's occupancy, occupant load and height.

Answer: Each question has a different source document, and each document applies in the edition the provincial regulation names.

Common mistakes

  • MistakeQuoting the latest edition of a standard as if it were automatically the law.

    InsteadThe edition named in the adopted code applies unless the authority accepts another.

  • MistakeApplying today's building code to how an old system was installed.

    InsteadInstallation is judged against the code at the time; maintenance is judged against today's fire code.

  • MistakeThinking the fire code tells you how to test each device.

    InsteadThe fire code requires testing; CAN/ULC-S536 says how and how often.

  • Mistake'Correcting' an unusual design on site.

    InsteadIt may be an accepted alternative solution; ask the designer first.

  • MistakeIgnoring the electrical code because fire alarm wiring is low voltage.

    InsteadSection 32 of the electrical code applies to fire alarm wiring.

Summary and key terms

  • The National Model Codes are published by the NRC and become law when provinces and territories adopt them.
  • Saskatchewan adopted the 2020 NBC and NFC on January 1, 2024; the 2025 national codes were published in late 2025.
  • The building code governs new construction and alterations; the fire code governs buildings in use.
  • Article 3.2.4.1 sets when a fire alarm system is required, based on height, occupant load and use.
  • CAN/ULC-S524 covers installation, S537 verification, S536 inspection and testing, and S561 monitoring.
  • Section 32 of the electrical code governs fire alarm wiring.
  • Building officials, the fire department and the electrical authority enforce the rules; alternative solutions need the authority's acceptance.
National Model Codes
Codes developed nationally and adopted by provinces and territories, such as the NBC and NFC.
Acceptable solution
A Division B requirement deemed to meet the code’s objectives.
Alternative solution
A design that differs from the acceptable solutions but achieves at least the same performance.
Major occupancy
The principal use of a building or part of one, such as Group C residential.
CAN/ULC-S524
The Canadian standard for installing fire alarm systems.
CAN/ULC-S536
The Canadian standard for inspecting and testing fire alarm systems.
CAN/ULC-S537
The Canadian standard for verifying new and altered fire alarm systems.

Practice problems

Work each problem on paper first, then reveal the answer to check.

  1. Which code requires an owner to keep a fire alarm system maintained?

    Show answer

    The fire code, as adopted by the province.

  2. A new office building is being designed. Which standard governs how its devices are installed?

    Show answer

    CAN/ULC-S524, in the edition the adopted building code names.

  3. When did the 2020 NBC and NFC come into force in Saskatchewan?

    Show answer

    January 1, 2024.

  4. Name the three divisions of the National Building Code.

    Show answer

    Division A (compliance, objectives, functional statements), Division B (acceptable solutions) and Division C (administration).

Lesson quiz · 5 questions

Score 60% or more to complete this lesson.

Take the quiz