> For the complete documentation index, see [llms.txt](https://docs.buildings.ability.abb/collection/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.buildings.ability.abb/collection/platform/platform-core/baseline-and-factors/heating-and-cooling-days.md).

# Heating and Cooling Days

Heating Degree Days (HDD) and Cooling Degree Days (CDD) describe how much the outside temperature differs from a configured base temperature. They help relate weather conditions to heating and cooling demand.

Configure default base temperatures at tenant level, then enable Heating Days, Cooling Days, or both individually for each asset. The service creates hourly degree-day attributes that can be used throughout the platform, including in calculations, dashboards, analytics, reports, rules, and rule chains.

## Prerequisites

To calculate Heating and Cooling Degree Days, the asset must belong to a site. The site must have a configured location. The service uses this location to retrieve weather data and calculate the degree-day values. Heating and Cooling Days can be applied to any asset type.

## How Degree Days Are Calculated

The service calculates a temperature difference for each interval and writes the corresponding contribution to the heap. With an hourly interval, the written value is one twenty-fourth of the daily degree-day contribution because Degree Days are a daily unit, not Degree Hours.

The formulas are:

$$
HDD\_{hour} = \max(T\_{base,HDD} - T\_{outside}, 0) \times \frac{1}{24}
$$

$$
CDD\_{hour} = \max(T\_{outside} - T\_{base,CDD}, 0) \times \frac{1}{24}
$$

`HDD_hour` and `CDD_hour` are the values written for one hourly interval. No value is added when the relevant temperature difference is zero or below. To display the actual Degree Days, aggregate the hourly attribute with **Sum** over a day. The same approach can be used over longer periods, such as a month or a year.

## Guides

* [Open Heating and Cooling Days](/collection/platform/platform-core/baseline-and-factors/heating-and-cooling-days/open-heating-and-cooling-days.md)
* [Configure Tenant Defaults](/collection/platform/platform-core/baseline-and-factors/heating-and-cooling-days/configure-tenant-defaults.md)
* [Configure Heating and Cooling Days for an Asset](/collection/platform/platform-core/baseline-and-factors/heating-and-cooling-days/configure-heating-and-cooling-days-for-an-asset.md)

## Use Degree-Day Attributes

Degree-Day attributes behave like other asset attributes. You can use them in calculations, dashboards, analytics, reports, rules, and rule chains. For example, compare energy consumption with Heating Degree Days to analyze heating-related demand, or use Cooling Degree Days as an input for a calculation.

To determine the Cooling Degree Days for a whole day, select the *Cooling degree days* attribute in [Asset Data](/collection/mandatory-base/assets/asset-data.md#display-aggregated-data), set the aggregation interval to **Day**, and use the **Sum** aggregation. For a whole year, set the time period to the required year and keep **Sum** as the aggregation. The same method applies to Heating Degree Days. For general guidance on aggregation methods, see [Aggregations in BuildingPro Suites](/collection/academy/aggregations-in-eliona.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.buildings.ability.abb/collection/platform/platform-core/baseline-and-factors/heating-and-cooling-days.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
