NCC 2022 Thermal Comfort: What the Standard Actually Requires
NCC 2022 Vol 1 J1P1 applies to Class 3, 5, 6, 7, 8 and 9 buildings and common areas of Class 2 buildings. It requires you to demonstrate that occupants are thermally comfortable, not just that an HVAC system exists and is running.

The Metric: Predicted Mean Vote
Thermal comfort is measured using Predicted Mean Vote, a standardised scale from ANSI/ASHRAE Standard 55 built on Fanger's heat balance model. Zero is neutral, -3 is cold, +3 is hot. Compliance requires staying between -1 and +1.
The equation is:
PMV = [0.303 · e^(−0.036M) + 0.028] · L
Where L is the net thermal load on the body, driven by six inputs: metabolic rate, external work (almost always zero), clothing insulation, air temperature, mean radiant temperature, air speed, and humidity.
Each input matters. Metabolic rate and clothing insulation are fixed by assumption (1.2 met, 0.5 to 1.0 clo for a typical office) and act as a uniform baseline offset. Air temperature is what the HVAC controls. Mean radiant temperature is the area-weighted average of surrounding surface temperatures and is the one most likely to ruin your compliance run.
A west-facing curtain wall on a 38°C afternoon pushes mean radiant temperature well above air temperature at the perimeter, and the thermostat cannot see it. Air speed is underused: higher velocity at the occupant level reduces PMV through convective cooling, and ASHRAE 55 allows it to offset elevated operative temperatures up to around 0.8 m/s before draught complaints take over. Humidity nudges PMV positive at high levels but is rarely the primary failure mode unless the building is naturally ventilated.
The Compliance Thresholds and What They Actually Mean
PMV of -1 to +1 must be achieved across 95% of occupied floor area for 98% of annual hours of operation, where hours of operation are periods when occupancy exceeds 20% of peak. That last part is a reasonable concession. The rest is not trivial.
The 98% threshold allows roughly 44 hours of non-compliance per year for a standard office (approximately 2,600 occupied hours annually). Those hours will cluster at summer peak, so you are designing for the worst case, not the average. The 95% spatial threshold is not 5% per floor or per zone. It is 5% of total occupied floor area across the whole building. One badly oriented facade can exhaust that tolerance on its own.
The direct consequence is that envelope performance has to precede mechanical strategy. Mean radiant temperature failures cannot be corrected by lowering air temperature: operative temperature (approximately the mean of air temperature and mean radiant temperature) only responds at half the rate. If mean radiant temperature at a west facade is 38°C and air temperature is 22°C, operative temperature is still around 30°C. No setpoint fixes that. External shading, higher-performance glazing, and perimeter air distribution are compliance decisions, not aesthetic ones.
A Simple Office Example
Sydney, Class 5, open plan. 7am to 7pm weekdays, 1.2 met, 0.6 clo summer, HVAC at 22°C, 50% relative humidity, 0.15 m/s air speed. PMV sits around 0 to +0.3 at the core. Fine.
West-facing glazing on a peak afternoon drives mean radiant temperature to 40°C or above at the perimeter, pushing PMV to +1.5 to +2.0 within two to three metres of the facade. If that zone is 8% of the floor plate, you are already over the spatial tolerance and the simulation fails. The fix (shading, better glazing, zoned perimeter supply) costs money nobody budgeted because the compliance pathway looked simple on paper.
The Setpoint Problem
HVAC systems control to air temperature. That is what the building management system logs, what the commissioning report certifies, and what the facilities manager points to when someone complains. But PMV responds to operative temperature, not air temperature alone, and in any building with significant glazing or poorly insulated roof construction, those two diverge considerably.
Setpoint control captures one of six PMV inputs. It cannot sense radiant temperature, clothing, or air speed distribution. The gap between modelled PMV and experienced PMV is real, and it surfaces consistently in post-occupancy surveys as thermal dissatisfaction in buildings that passed every simulation. Setpoint compliance is necessary but not sufficient. Buildings that want to achieve the intent of J1P1 need to address the radiant environment through envelope and air distribution design before adjusting the thermostat.
Occupant Schedules and the Ramp Problem
Thermal models assume the HVAC is at setpoint when occupancy begins. Buildings do not work that way. Early arrivals, flexible hours, and the general human indifference to occupancy assumptions mean some portion of the floor is occupied during ramp-up, when air temperature and mean radiant temperature are still moving toward setpoint rather than holding it.
The risk runs in both directions. A cold morning warm-up in a high-mass building leaves mean radiant temperature depressed and PMV below -1 for early occupants. A summer cool-down after a long weekend does the opposite. Both scenarios push PMV outside the compliance band during hours the simulation may well count as occupied. A model that assumes a clean step-change to fully conditioned conditions at 8am is doing you a favour the building will not return. Model pre-conditioning realistically, populate early occupancy into the schedule, and check PMV at the edges of the occupied window. Those hours accumulate faster than the 44-hour annual tolerance suggests.
How Onerous Is This?
Honestly, fairly onerous. Full thermal simulation using software such as EnergyPlus or IES-VE, with properly modelled occupancy, internal gains, HVAC controls, and hourly weather data, is not optional. The result is sensitive to modelling assumptions, a poorly oriented building can fail regardless of mechanical quality, and a passing simulation still does not guarantee a comfortable building in operation. The standard is reasonable in intent. It is just not easy in practice, and it does not pretend to be.
Last updated
Was this helpful?

