An attic exhaust fan moves hot, humid air out of the attic space and replaces it with outside air drawn through soffit vents. Excessive attic heat — common in Ontario summers — accelerates shingle degradation, raises cooling loads for the living space below, and creates condensation risks in winter when warm humid air from the living space meets cold roof decking. Installing an attic exhaust fan is an electrical project that requires an ESA permit in Ontario and involves working in a confined, hot space with live wiring.
How to Install an Attic Exhaust Fan
Before starting any attic exhaust fan installation, confirm that the attic has adequate intake ventilation. An exhaust fan that moves more air than the soffit vents can supply will create negative pressure, pulling conditioned air from the living space through ceiling penetrations — which defeats the purpose of the fan and increases cooling costs. The general guideline is a 1:1 ratio of exhaust capacity to intake capacity. Measure or calculate the existing soffit vent area before sizing the fan.
Types of Attic Exhaust Fans
Gable-mounted fans: Installed in the gable end of the attic (the triangular wall at each end of the roof). Gable fans draw air across the length of the attic, which works well in long attic spaces but may leave dead zones near the eaves.
Roof-mounted fans: Installed through the roof deck, typically near the ridge. Roof-mounted fans ventilate more evenly across the attic floor but require flashing and a weather-tight roof penetration. The installation is more complex and the penetration must be correctly flashed to prevent water entry.
Ridge vents with powered assist: Some ridge vent systems accept a powered exhaust module at the peak. These are low-profile and integrate with the roof line but have lower CFM ratings than dedicated exhaust fans.
Solar-powered fans: Operate without a wired electrical connection. Suitable where running a branch circuit to the attic is not practical. Output is limited by available sunlight and the fan does not operate at night or on overcast days.
ESA Permit and Code Requirements in Ontario
In Ontario, installing an attic exhaust fan that connects to the home’s electrical system requires an ESA permit. The Electrical Safety Authority (ESA) and the Ontario Electrical Safety Code (OESC) classify any new electrical device connected to branch circuit wiring as permitted electrical work. A solar-powered fan with no wired connection does not require an electrical permit, but the roof penetration may require a building permit depending on the municipality.
Key OESC requirements for attic fan wiring:
The fan must be connected to a properly rated branch circuit — a 15-amp circuit is sufficient for most residential attic fans, which draw 2–7 amps depending on size
The branch circuit wiring must use NMD-90 cable (the standard residential branch circuit cable) or an approved alternative rated for the installation environment
A disconnect means (a switch or the circuit breaker itself) must be within sight of the fan or the fan must have a built-in thermal cutoff — check the specific requirements for the fan being installed
Junction box connections must be accessible and protected — do not bury wire connectors in attic insulation without an accessible junction box
Installation Procedure: Gable-Mounted Fan
Choose the location: Centre the fan in the upper third of the gable end, above the attic floor insulation line. The fan should be positioned where it will not be blocked by roof framing or existing vents.
Cut the opening: Trace the fan housing template on the gable sheathing. Cut with a reciprocating saw or jigsaw. Existing gable louvers often have a removable centre panel sized for a powered fan insert — check the existing vent before cutting new sheathing.
Mount the fan housing: Secure the housing to the gable framing per the manufacturer’s instructions. Gable-mounted fans typically fasten directly to the gable studs or to a plywood backer installed in the opening.
Run the branch circuit wiring: Route NMD-90 cable from the panel (or an existing nearby circuit with available capacity) to the fan location. Secure cable to framing with staples every 1.5 m (5 ft) and within 300 mm (12 in) of each junction box. Keep cable away from hot surfaces near the roof ridge.
Connect the thermostat/humidistat: Most attic fans include an integral thermostat that activates the fan when attic temperature exceeds a set point (typically 38°C / 100°F). Some include a humidistat for winter humidity control. Wire the thermostat between the branch circuit and the fan motor per the wiring diagram.
Connect power: With the circuit breaker off, make the wire connections at the fan’s junction box. Confirm correct polarity (black to brass, white to silver, green/bare to ground) and secure with wire connectors.
Test the installation: Restore power and verify the fan operates. Set the thermostat above current attic temperature to confirm the fan runs, then reduce the setting to confirm it shuts off at the set point.
Installation Procedure: Roof-Mounted Fan
Roof-mounted fans require cutting through the roof deck and shingles, followed by flashing to prevent water entry. The fan housing is set into the opening, the flashing integrates with the surrounding shingles (upper shingles lap over the top of the flashing; lower shingles tuck under the bottom), and the housing is sealed with roofing sealant at all edges. This installation requires working on the roof surface — safety precautions (fall arrest, non-slip footwear, dry conditions) are mandatory. The electrical connection is the same as for gable-mounted fans: a branch circuit to the fan’s thermostat and motor, with all connections made in the accessible junction box at the fan housing.
Expert Tip from Our ESA-Licensed Electricians
The most common attic fan wiring issue we see on inspections is a fan that was connected by tapping into a lighting circuit in the living space below — the homeowner ran a cable up through a ceiling fixture box or a pot light housing into the attic. There are two problems with this: first, lighting circuits are not always rated for the continuous load that an attic fan represents; second, making connections inside a pot light housing or a ceiling box that was not designed as a junction point creates an inaccessible connection inside the ceiling — a code violation. The correct approach is to run a dedicated circuit from the panel to the attic fan, with all connections in accessible junction boxes. If the panel is full, an ESA-licensed electrician can add a sub-panel or a tandem breaker. The Ontario Electrical Safety Code (OESC) requires that all electrical connections remain accessible for inspection — no buried splices, no connections inside insulation bats. See our guide on wiring rules for enclosed spaces for related guidance on OESC accessibility requirements.
Need an attic exhaust fan installed with a proper ESA-permitted branch circuit? Our licensed electricians serve the GTA. Call us at 416-838-9006 or visit our contact page — we will get back to you the same day.
Used to monitor number of Google Analytics server requests
10 minutes
__utmb
Used to distinguish new sessions and visits. This cookie is set when the GA.js javascript library is loaded and there is no existing __utmb cookie. The cookie is updated every time data is sent to the Google Analytics server.
30 minutes after last activity
__utmc
Used only with old Urchin versions of Google Analytics and not with GA.js. Was used to distinguish between new sessions and visits at the end of a session.
End of session (browser)
__utmz
Contains information about the traffic source or campaign that directed user to the website. The cookie is set when the GA.js javascript is loaded and updated when data is sent to the Google Anaytics server
6 months after last activity
__utmv
Contains custom information set by the web developer via the _setCustomVar method in Google Analytics. This cookie is updated every time new data is sent to the Google Analytics server.
2 years after last activity
__utmx
Used to determine whether a user is included in an A / B or Multivariate test.
18 months
_ga
ID used to identify users
2 years
_gali
Used by Google Analytics to determine which links on a page are being clicked
30 seconds
_ga_
ID used to identify users
2 years
_gid
ID used to identify users for 24 hours after last activity
24 hours
_gat
Used to monitor number of Google Analytics server requests when using Google Tag Manager
1 minute
_gac_
Contains information related to marketing campaigns of the user. These are shared with Google AdWords / Google Ads when the Google Ads and Google Analytics accounts are linked together.
90 days
SourceBuster is used by WooCommerce for order attribution based on user source.
Name
Description
Duration
sbjs_session
The number of page views in this session and the current page path
30 minutes
sbjs_udata
Information about the visitor’s user agent, such as IP, the browser, and the device type
session
sbjs_first
Traffic origin information for the visitor’s first visit to your store (only applicable if the visitor returns before the session expires)
session
sbjs_current
Traffic origin information for the visitor’s current visit to your store
session
sbjs_first_add
Timestamp, referring URL, and entry page for your visitor’s first visit to your store (only applicable if the visitor returns before the session expires)
session
sbjs_current_add
Timestamp, referring URL, and entry page for your visitor’s current visit to your store
session
sbjs_migrations
Technical data to help with migrations between different versions of the tracking feature
session
Marketing cookies are used to follow visitors to websites. The intention is to show ads that are relevant and engaging to the individual user.
Google Maps is a web mapping service providing satellite imagery, real-time navigation, and location-based information.