# Window heat loss calculator

- Human page: https://happytails.ai/en/calculators/window-heat-loss-calculator/
- Markdown: https://happytails.ai/en/calculators/window-heat-loss-calculator.md
- Structured JSON: https://happytails.ai/agents/en/calculators/window-heat-loss-calculator/index.json
- Visibility: public

## Tool capabilities

| Property | Value |
| --- | --- |
| Tool ID | `window-heat-loss-calculator` |
| Category | calculators |
| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |
| Browser execution | Use the visible action or interactive controls. |
| Browser processing | Browser; see tool notes for network behavior. |
| HTTP API | Not callable through HTTP. |
| Browser-agent interface | run_current_tool |

### Implementation notes

Calculated on your device for up to 30 options. Enter whole-window U-values in W/(m² K), not centre-pane values or unconverted U.S. U-factors. First row is the comparison baseline.

### Inputs and settings

Text input: Window options.

Example or placeholder shown in the interface (not a validated fixture):

```text
Existing,10,2.5
Replacement,10,1
```

One option per line: name, area in the selected unit and whole-window U-value in W/(m² K). First row is the baseline. Up to 100,000 characters. Review the settings before running.

| Setting | Meaning | Control type | Default | Constraints |
| --- | --- | --- | --- | --- |
| `areaUnit` | Window area unit | select | "m²" | Allowed: m², ft² |
| `climateMode` | Heating exposure | select | "Temperatures and degree days" | Allowed: Temperatures and degree days, Temperatures and heating hours, Degree days only |
| `temperatureUnit` | Temperature unit | select | "°C" | Allowed: °C, °F |
| `inside` | Indoor temperature | number | 20 | step=any |
| `outside` | Outdoor temperature | number | 0 | step=any |
| `degreeDays` | Annual heating degree days (K days) | number | "" | min=0 max=20000 step=any |
| `heatingHours` | Annual hours at the entered temperature difference | number | 2000 | min=0 max=8784 step=any |
| `performance` | Heating efficiency fraction or seasonal COP | number | 1 | min=0 max=20 step=any |
| `tariff` | Fuel or electricity price per input kWh | number | "" | min=0 max=100000 step=any |

### Browser-agent workflow

1. Open the human page in a browser that supports WebMCP.
2. Discover the interface exposed by that page; use its actual schema.
3. Select files on the page first when the tool requires files.
4. Call `run_current_tool` with valid input and settings.
5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.

Calls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.

### Planning specification

Up to 30 uniquely named options and 100,000 characters. Area above 0 to 1 million m² in m² or ft²; whole-window U-value 0 to 20 W/(m² K). Indoor -50 to 100°C and outdoor -100 to 100°C, entered in °C or °F; indoor must be at least outdoor. Degree days 0 to 20,000 K days; annual heating hours 0 to 8,784; heating efficiency/COP above 0 to 20; energy price explicitly entered from 0 to 100,000 per input kWh. JSON report, results CSV and full option comparison CSV.

This describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.

### Complete machine-readable capability record

```json
{
  "id": "window-heat-loss-calculator",
  "category": "calculators",
  "built": true,
  "requirements": "Up to 30 uniquely named options and 100,000 characters. Area above 0 to 1 million m² in m² or ft²; whole-window U-value 0 to 20 W/(m² K). Indoor -50 to 100°C and outdoor -100 to 100°C, entered in °C or °F; indoor must be at least outdoor. Degree days 0 to 20,000 K days; annual heating hours 0 to 8,784; heating efficiency/COP above 0 to 20; energy price explicitly entered from 0 to 100,000 per input kWh. JSON report, results CSV and full option comparison CSV.",
  "implementation": {
    "fields": [
      {
        "key": "areaUnit",
        "label": "Window area unit",
        "value": "m²",
        "type": "select",
        "values": [
          "m²",
          "ft²"
        ]
      },
      {
        "key": "climateMode",
        "label": "Heating exposure",
        "value": "Temperatures and degree days",
        "type": "select",
        "values": [
          "Temperatures and degree days",
          "Temperatures and heating hours",
          "Degree days only"
        ]
      },
      {
        "key": "temperatureUnit",
        "label": "Temperature unit",
        "value": "°C",
        "type": "select",
        "values": [
          "°C",
          "°F"
        ],
        "showWhen": {
          "climateMode": [
            "Temperatures and degree days",
            "Temperatures and heating hours"
          ]
        }
      },
      {
        "key": "inside",
        "label": "Indoor temperature",
        "value": 20,
        "type": "number",
        "step": "any",
        "showWhen": {
          "climateMode": [
            "Temperatures and degree days",
            "Temperatures and heating hours"
          ]
        }
      },
      {
        "key": "outside",
        "label": "Outdoor temperature",
        "value": 0,
        "type": "number",
        "step": "any",
        "showWhen": {
          "climateMode": [
            "Temperatures and degree days",
            "Temperatures and heating hours"
          ]
        }
      },
      {
        "key": "degreeDays",
        "label": "Annual heating degree days (K days)",
        "value": "",
        "type": "number",
        "min": 0,
        "max": 20000,
        "step": "any",
        "help": "Enter a sourced annual value at a suitable balance temperature. Fahrenheit degree days must first be divided by 1.8.",
        "showWhen": {
          "climateMode": [
            "Temperatures and degree days",
            "Degree days only"
          ]
        }
      },
      {
        "key": "heatingHours",
        "label": "Annual hours at the entered temperature difference",
        "value": 2000,
        "type": "number",
        "min": 0,
        "max": 8784,
        "step": "any",
        "help": "The entered indoor/outdoor difference is assumed constant for every entered hour.",
        "showWhen": {
          "climateMode": [
            "Temperatures and heating hours"
          ]
        }
      },
      {
        "key": "performance",
        "label": "Heating efficiency fraction or seasonal COP",
        "value": 1,
        "type": "number",
        "min": 0,
        "max": 20,
        "step": "any",
        "help": "Enter 0.8 for 80% fuel efficiency or 3 for heat-pump COP 3, consistently with the energy price."
      },
      {
        "key": "tariff",
        "label": "Fuel or electricity price per input kWh",
        "value": "",
        "type": "number",
        "min": 0,
        "max": 100000,
        "step": "any",
        "help": "Required. Use one currency and enter 0 explicitly to exclude energy cost."
      }
    ],
    "registrationFamily": "home-energy-planning",
    "input": true,
    "live": false,
    "presentation": "metrics",
    "inputMaxLength": 100000,
    "inputErrorCode": "HOME_ENERGY_PLANNING_TOO_LONG",
    "note": "Calculated on your device for up to 30 options. Enter whole-window U-values in W/(m² K), not centre-pane values or unconverted U.S. U-factors. First row is the comparison baseline.",
    "inputKeywords": [
      {
        "id": "home-energy-planning/window-heat-loss-calculator/options.header",
        "kind": "header",
        "code": "HOME_ENERGY_PLANNING_WINDOW_HEADER",
        "fold": "lower",
        "values": {
          "option": [
            "option",
            "Option"
          ],
          "area": [
            "area",
            "Area"
          ],
          "uValue": [
            "uValue",
            "U value"
          ]
        },
        "describedBy": [
          "Name the columns Option, Area and U value, in that order, or omit the header.",
          "Window options"
        ]
      }
    ],
    "experience": {
      "automatic": false,
      "single": false,
      "inputMaxLength": 100000,
      "inputMode": "text",
      "label": "Window options",
      "placeholder": "Existing,10,2.5\nReplacement,10,1",
      "help": "One option per line: name, area in the selected unit and whole-window U-value in W/(m² K). First row is the baseline. Up to 100,000 characters. Review the settings before running.",
      "action": null
    },
    "mode": "explicit",
    "interactive": false
  },
  "execution": "Browser interface",
  "api": null,
  "browser_agent": {
    "supported": true,
    "name": "run_current_tool",
    "discovery": "WebMCP on the human page in a supporting browser",
    "verification": "See audit/API-AUDIT.md; availability is not verification"
  }
}
```

## Page guide

Compare alternative whole-window areas and U-values for steady heat loss, annual heating energy and cost, with every saving measured against the first option.

### How to use Window heat loss calculator

1. Enter one option per line: name, area and whole-window U-value in W/(m² K). Select the area unit.
2. Choose temperatures plus degree days, temperatures plus annual heating hours, or degree days only.
3. Enter the heating efficiency fraction or COP and your energy price per input kWh.
4. Review each option and signed savings from the first row, then export the JSON report and CSV comparison.

How can we improve this tool?

Report a problem or share an idea.

Please leave out private information. Your message and the tool name go to our team via PostHog.

## Useful next steps

- [Appliance electricity cost calculator](https://happytails.ai/en/calculators/appliance-electricity-cost-calculator/) ([Markdown](https://happytails.ai/en/calculators/appliance-electricity-cost-calculator.md))

- [Hot water energy calculator](https://happytails.ai/en/calculators/hot-water-energy-calculator/) ([Markdown](https://happytails.ai/en/calculators/hot-water-energy-calculator.md))

- [Insulation calculator](https://happytails.ai/en/calculators/insulation-calculator/) ([Markdown](https://happytails.ai/en/calculators/insulation-calculator.md))

## Use whole-window U-values

U-value measures heat flow per area and temperature difference. Use a whole-window figure including glass, frame and spacers, not centre-pane performance. U-values must be in W/(m² K); choosing ft² converts area only and does not convert U.S. Btu/(h ft² °F) U-factors.

### Snapshot and annual exposure

Indoor/outdoor temperatures give a steady-state outward heat-loss snapshot. Annual degree days in K days estimate heating energy independently of that snapshot. In heating-hours mode the entered temperature difference is held constant for every entered hour. Degree-days-only mode leaves snapshot watts undefined instead of inventing a temperature.

### Alternative options and signed savings

The first row is the baseline. Rows are alternatives, not elements to sum. Positive savings mean lower loss or cost; negative values mean higher loss or cost. Different areas trigger a warning. Solar gains, air leakage, thermal bridges, cooling and whole-building interactions are excluded; this is not a compliance or design certification.
