---
title: "Power Saver"
description: "Power Saver is a Marketplace integration for Home Assistant. It has 50 installs sharing analytics, works locally and was last updated October 11, 2026."
canonical: "https://vulpo.app/integrations/marketplace/jyourstone-power-saver"
url: "https://vulpo.app/integrations/marketplace/jyourstone-power-saver.md"
last-updated: "2026-10-22"
version: "1.4"
---

# Power Saver

> Power Saver is a Marketplace integration for Home Assistant. It has 50 installs sharing analytics, works locally and was last updated October 11, 2026.

Power Saver is a custom integration that schedules appliances by Nord Pool electricity prices. It offers two strategies: Lowest Price turns on the cheapest hours within fixed periods, and Minimum Runtime keeps a device on for a minimum number of hours within a rolling window. A mode setting can switch the selection to the most expensive hours instead of the cheapest. Further options cover always-cheap and always-expensive price thresholds, a price similarity threshold, minimum consecutive hours, and an excluded time range. Each instance can turn chosen entities on or off, retrying commands that did not take effect, and an emergency mode keeps appliances running if price data is unavailable. It adds sensors for status and schedule, an emergency mode binary sensor, always on and always off switches, and actions to override scheduled hours or excluded times. It runs locally and is configured in the UI.

Automatic summary of the README and code of jyourstone/power\_saver. Something wrong, or are you the maintainer and want your own text here? [Get in touch](https://vulpo.app/contact)

[Open in My Home Assistant](https://my.home-assistant.io/redirect/hacs_repository/?owner=jyourstone&repository=power_saver&category=integration)

On Home Assistant 2026.11 or newer? [Open it in the Marketplace](https://my.home-assistant.io/redirect/marketplace_repository/?owner=jyourstone&repository=power_saver&category=integration)

## Supports

- **Works locally**: Talks to your devices on your own network. No vendor cloud in between.
- **From the Marketplace**: Installed through the Marketplace, formerly HACS.
- **Actively maintained**: Its author released or pushed a change in the last six months.

## Setting it up

Install it from the Marketplace and restart Home Assistant, then add it under Settings, Devices and services.

### Set up Power Saver

- **Nord Pool sensor**: The Nord Pool sensor to use for electricity prices.
- **Name**: A descriptive name for this instance (e.g., 'Water Heater').
- **Strategy**: Lowest Price: activate cheapest hours within fixed time periods. Minimum Runtime: ensure a minimum number of hours are active within a rolling window.

### Lowest Price Settings

- **Hours to activate per period**: Number of cheapest hours to activate within each period.
- **Period start time**: Start of the optimization period.
- **Period end time**: End of the optimization period. Supports cross-midnight periods (e.g., 22:00 to 06:00).
- **Minimum consecutive active hours (optional)**: Minimum consecutive hours per active block. Prevents short on/off cycling. Leave empty to disable.

### Minimum Runtime Settings

- **Minimum hours on**: Total hours the device must run within each rolling window. Runtime is spread across the cheapest available slots. For example, 4 hours to properly heat a water tank.
- **Rolling window**: Size of the rolling time window in hours. The device must run for at least the minimum hours within this window. For example, 28 hours means the device runs at least 4 hours (as per the example above) every 28 hours.
- **Minimum consecutive active hours (optional)**: Minimum consecutive hours per active block. Prevents short on/off cycling. Leave empty to allow individual 15-minute slots.

### Advanced Options

- **Mode**: Choose whether to activate the cheapest hours (default) or the most expensive hours. In 'Most expensive' mode the threshold roles described below are swapped.
- **Always-cheap price threshold (optional)**: Price below which the slot is always activated. In 'Most expensive' mode: never activate below this price. Leave empty to disable.
- **Always-expensive price threshold (optional)**: Price at or above which the slot is never activated. In 'Most expensive' mode: always activate above this price. Leave empty to disable.
- **Price similarity threshold (optional)**: Also activate slots within this percentage of the cheapest price. In 'Most expensive' mode: computed from the most expensive price downward. Leave empty to disable.
- **Exclude from (optional)**: Start of excluded time range. Slots during this period are never activated. Supports cross-midnight ranges (e.g., 22:00 to 06:00). Both fields must be set to enable. Leave empty to disable.
- **Exclude until (optional)**: End of excluded time range. Both fields must be set to enable. Leave empty to disable.
- **Controlled entities**: Entities to turn on/off when state changes. Leave empty to control via your own automations.

### After setup

- **Nord Pool sensor**: The Nord Pool sensor to use for electricity prices.
- **Strategy**: Lowest Price: activate cheapest hours within fixed time periods. Minimum Runtime: ensure a minimum number of hours are active within a rolling window.
- **Hours to activate per period**: Number of cheapest hours to activate within each period.
- **Period start time**: Start of the optimization period. When equal to period end, each period is 24 hours starting at this time (00:00 = calendar day).
- **Period end time**: End of the optimization period. Supports cross-midnight periods (e.g., 22:00 to 06:00).
- **Minimum consecutive active hours (optional)**: Minimum consecutive hours per active block. Prevents short on/off cycling. Leave empty to disable.
- **Minimum hours on**: Total hours the device must run within each rolling window. Runtime is spread across the cheapest available slots.
- **Rolling window**: Size of the rolling time window in hours. The device must run for at least the minimum hours within this window.
- **Minimum consecutive active hours (optional)**: Minimum consecutive hours per active block. Prevents short on/off cycling. Leave empty to allow individual 15-minute slots.
- **Mode**: Choose whether to activate the cheapest hours (default) or the most expensive hours. In 'Most expensive' mode the threshold roles described below are swapped.
- **Always-cheap price threshold (optional)**: Price below which the slot is always activated. In 'Most expensive' mode: never activate below this price. Leave empty to disable.
- **Always-expensive price threshold (optional)**: Price at or above which the slot is never activated. In 'Most expensive' mode: always activate above this price. Leave empty to disable.
- **Price similarity threshold (optional)**: Also activate slots within this percentage of the cheapest price. In 'Most expensive' mode: computed from the most expensive price downward. Leave empty to disable.
- **Exclude from (optional)**: Start of excluded time range. Slots during this period are never activated. Supports cross-midnight ranges (e.g., 22:00 to 06:00). Both fields must be set to enable. Leave empty to disable.
- **Exclude until (optional)**: End of excluded time range. Both fields must be set to enable. Leave empty to disable.
- **Controlled entities**: Entities to turn on/off when state changes. Leave empty to control via your own automations.

Texts from the code of [jyourstone/power\_saver](https://github.com/jyourstone/power_saver).

## Entities

- **Binary sensors**: Emergency Mode
- **Sensors**: Status, Schedule, Last Active, Active Hours in Period, Next Change, Next Active, Next Inactive
- **Switches**: Always on, Always off

## Actions

- **Set schedule hours**: Override the number of hours to activate per period (Lowest Price) or minimum hours on (Minimum Runtime). The schedule is recomputed immediately with the new value. The override persists across restarts until cleared.
  Fields: Device, Hours
- **Clear schedule hours override**: Remove a previously set hours override and revert to the value configured in the integration options. The schedule is recomputed immediately.
  Fields: Device
- **Set exclude times**: Override the excluded time range. Slots during this period are never activated. The schedule is recomputed immediately with the new range. The override persists across restarts until cleared.
  Fields: Device, Exclude from, Exclude until
- **Clear exclude times override**: Remove a previously set exclude times override and revert to the excluded time range configured in the integration options. The schedule is recomputed immediately.
  Fields: Device

## From the README

> A Home Assistant custom integration that schedules appliances during the cheapest (or most expensive) electricity hours using
>
> Nordpool prices to save money automatically.
>
> - Two scheduling strategies — Choose the one that fits your appliance
> - Lowest Price — Activate the cheapest hours within fixed time periods (e.g., cheapest 4 hours per day)
> - Minimum Runtime — Rolling window scheduling that ensures a minimum number of hours are active within a configurable window, at the cheapest available times (e.g., water heater must run 4 hours…
> - Cheapest or most expensive mode — Select cheapest hours (default) or invert to select the most expensive
> - Always-cheap threshold — Slots below a price threshold are always activated
> - Always-expensive threshold — Safety cutoff to never activate above a certain price
> - Price similarity threshold — Groups slots with nearly identical prices for more natural scheduling
> - Minimum consecutive hours — Prevents short on/off cycles by requiring a minimum run duration
> - Excluded hours — Block a time range from ever being activated (e.g., avoid grid fee peak hours)
> - Multiple instances — Add one per appliance (water heater, floor heating, pool pump, etc.)
> - Currency-aware — Price threshold fields follow your Nord Pool sensor's currency (SEK, NOK, DKK, EUR,...)
> - Always on / Always off — Force all controlled entities ON or OFF via switches, bypassing the schedule

From the README of [jyourstone/power\_saver](https://github.com/jyourstone/power_saver#readme), [MIT License](https://spdx.org/licenses/MIT.html). Shortened.

## At a glance

- Kind: Marketplace integration
- Category: [Helpers](https://vulpo.app/integrations/category/helpers.md), Store a value
- Number: 50 installs sharing analytics; 16 GitHub stars
- Connection: Works locally
- Upkeep: Updated in the last 6 months
- Needs: Needs the Marketplace (HACS on 2026.10 and older)
- Latest version: v3.2.6, last updated October 11, 2026
- Domain: `power_saver`
- Source: <https://github.com/jyourstone/power_saver>
- Issues: <https://github.com/jyourstone/power_saver/issues>
- Screenshot: https://vulpo.app/integrations-img/ff7eb377cb25f1de.webp (from jyourstone/power\_saver's README)

In Vulpo: Quick Toggle card, Chart card, Apple Watch, Control Center

Independent directory, made by the developer of Vulpo. Not affiliated with Home Assistant or the Open Home Foundation. [About these numbers](https://vulpo.app/integrations/about)

Last updated 2026-10-22. Source: https://vulpo.app/integrations/marketplace/jyourstone-power-saver

---

- HTML version of this page: https://vulpo.app/integrations/marketplace/jyourstone-power-saver
- Site index for agents: https://vulpo.app/llms.txt
- Everything in one document: https://vulpo.app/llms-full.txt
- All pages: https://vulpo.app/sitemap.xml
