- Python 76.5%
- JavaScript 20.4%
- Shell 3.1%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
|
||
| .claude | ||
| .devcontainer | ||
| .github | ||
| config | ||
| custom_components/tibber_prices | ||
| docs | ||
| examples/scripts | ||
| images | ||
| planning | ||
| schemas | ||
| scripts | ||
| tests | ||
| .editorconfig | ||
| .gitattributes | ||
| .gitignore | ||
| .markdownlint.json | ||
| .pre-commit-config.yaml | ||
| .prettierignore | ||
| .prettierrc.yaml | ||
| .python-version | ||
| AGENTS.md | ||
| cliff.toml | ||
| CODEOWNERS | ||
| CONTRIBUTING.md | ||
| hacs.json | ||
| LICENSE | ||
| mise.toml | ||
| pyproject.toml | ||
| README.md | ||
| renovate.json | ||
| requirements.txt | ||
Tibber Prices & Planning – Custom Integration for Home Assistant
⚠️ Not affiliated with Tibber This is an independent, community-maintained custom integration for Home Assistant. It is not an official Tibber product and is not affiliated with or endorsed by Tibber AS.
Plan your electricity use around Tibber's quarter-hourly prices. 100+ sensors with price levels and ratings, best and peak price periods, forecasts, trends and volatility, plus scheduling actions, ready-made blueprints and dashboard cards of its own – all from one integration.
📖 Documentation
📚 Complete Documentation — Installation, guides, examples, and full sensor reference:
- 👤 User Documentation — Setup, sensors, automations, dashboards
- 🔧 Developer Documentation — Architecture, contributing, development
Quick Links: Installation · Sensor Reference · Dashboard Cards · ApexCharts · Automations · FAQ · Changelog
✨ Why This Integration?
Most Tibber integrations give you a single price sensor. This one gives you a complete energy optimization toolkit:
🔮 Know What's Coming
- Quarter-hourly precision — 15-minute interval prices, not just hourly averages
- Price forecasts — See average prices for the next 1h, 2h, 3h, ... up to 12h ahead
- Trend analysis — Know if prices are rising, falling, or stable — and when the next trend change happens
- Price trajectory — Detect turning points before they happen (first-half vs second-half window comparison)
- Price outlook — Instantly see if the next hours will be cheaper or more expensive than now
⚡ Automate Smartly
- Best Price & Peak Price Periods — Intelligent binary sensors that detect the cheapest and most expensive periods of the day, with configurable flexibility, relaxation strategies, and gap tolerance (how it works)
- Period timing sensors — Duration, end time, remaining minutes, progress percentage, and countdown to next period — everything you need for advanced automations
- Runtime configuration — Adjust period detection parameters on the fly via switches and number entities, without restarting — perfect for automations that adapt to your schedule
- 5-level price classification — VERY_CHEAP, CHEAP, NORMAL, EXPENSIVE, VERY_EXPENSIVE from Tibber's API
- 3-level price ratings — LOW, NORMAL, HIGH based on 24h trailing average comparison
📊 Visualize Beautifully
- Dashboard cards of its own — Nothing to install, a visual editor, and you only pick your home: the Forecast Card shows the price now, the coming hours, the parts of the day and today and tomorrow like a weather forecast, with details on every tap; the Now Card puts the price now on today's scale as a tile, a gauge or a 12-hour clock; the Chart Card draws the price curve, read by sliding a cursor across it. They open each other in windows (see the cards)
- Dynamic icons & colors — Every sensor adapts its icon and color to the current price state — cheap prices glow green, expensive ones turn red (icon guide)
- Chart data export — Flexible data API with filtering, resolution control, and multiple output formats for any visualization card
- ApexCharts as an alternative — Already using ApexCharts everywhere? One action call generates complete charts in the same look as your others (see examples)
📈 Understand Your Market
- Volatility analysis — Know if today's prices are stable or wild (low/moderate/high/very_high)
- Daily & rolling statistics — Min, max, average, median for today, tomorrow, trailing 24h, and leading 24h
- Energy & tax breakdown — See spot price vs. tax components as sensor attributes
- Multi-currency support — EUR, NOK, SEK, DKK, USD, GBP with configurable base/subunit display (€ vs ct, kr vs øre)
- Time-travel views — Add a second device showing the same home as it was 7 days ago, or on the same date last year. Its clock runs at normal speed, so you can rehearse an automation against a day you already know the outcome of — including the moment tomorrow's prices originally appeared (guide)
🛡️ Built for Reliability
- Intelligent caching — Multi-layer caching minimizes API calls, survives HA restarts, auto-invalidates at midnight
- High-performance interval pool — O(1) timestamp lookups, gap detection, auto-fetching of missing data
- Quarter-hour precision updates — Sensors refresh at :00/:15/:30/:45 boundaries, independent of API polling
- Official API only — Uses Tibber's
priceInfoandpriceInfoRangeendpoints. All ratings and statistics are calculated locally.
🚀 Quick Start
Step 1: Install from the Marketplace (or HACS)
Home Assistant 2026.11 or newer (built-in Marketplace):
Older versions with HACS:
- Click "Download" to install
- With HACS, restart Home Assistant (details)
Step 2: Configure
- Enter your Tibber API token (get one here)
- Select your Tibber home
- Configure price thresholds (optional — sensible defaults are provided)
Or manually: Settings → Devices & Services → + Add Integration → search "Tibber Prices & Planning"
Step 3: Done!
- 100+ sensors are now available (key sensors enabled by default, advanced ones ready to enable)
- Explore entities in Settings → Devices & Services → Tibber Prices & Planning
- Start building automations, dashboards, and energy-saving workflows
🧩 Dashboard Cards
The integration brings its own cards. Add them from the card picker, pick your home, done.
Now Card — the price now and what to make of it: a best price period running, cheap until, the next best price. As a tile, a gauge or a clock of the coming twelve hours, with the trend in the corner. A tap opens the details, or the whole forecast card in a window.
Forecast Card — the coming hours and parts of the day like a weather forecast, in the price level's colors, with best and peak price periods underlined, and today and tomorrow on one scale. Tap any hour, part of the day or day for its details.
Chart Card — the price curve for the outlook, today, tomorrow or both days, in 15 or 60 minutes. Slide across it (or hold and drag on a phone) to read each price, its level and how far it lies from the average, in a line or a ring on top. Several styles to switch between, including the simple one of Tibber's app.
Cards inside cards — a now tile on your main dashboard opens the whole forecast with a tap and the price chart from a small icon; the editor shows each card held this way one level down, as Home Assistant's own stack cards do.
📖 Dashboard Cards → — every option, the tile feature, and how to read the cards
📊 What You Get
The integration provides 100+ entities across sensors, binary sensors, switches, and number entities. Here are the highlights — all key sensors are enabled by default:
Want this dashboard? The tibber_prices.get_dashboard_yaml action builds it for your home, ready to paste into one of your dashboards: Complete Dashboard as a Starting Point →
| Category | Highlights | Count |
|---|---|---|
| 💰 Prices | Current, next & previous interval price + rolling hour averages | 6+ |
| 📊 Statistics | Daily min/max/avg for today & tomorrow, 24h trailing & leading windows | 12+ |
| 🔮 Forecasts | Next 1h–12h average prices, price outlook & trajectory sensors | 20+ |
| 📈 Trends | Current trend direction, next trend change time & countdown | 3 |
| 📉 Volatility | Today, tomorrow, next 24h & combined volatility levels | 4 |
| 🏷️ Levels & Ratings | 5-level (API) and 3-level (computed) classification per interval, hour & day | 12+ |
| ⏰ Period Timing | Best/peak: end time, duration, remaining, progress, next start | 10+ |
| 🔌 Binary Sensors | Best price period, peak price period, tomorrow data available, API connection | 4+ |
| 🎛️ Runtime Config | Switches & numbers to adjust period detection live — no restart needed | 14 |
| 🔧 Diagnostics | Data lifecycle status, home metadata, grid info, subscription status | 15+ |
Every sensor includes rich attributes — timestamps, detailed descriptions, and context data. Enable Extended Descriptions in the integration options to get
long_descriptionandusage_tipson every entity.
📖 Complete Sensor Reference → — All entities with descriptions, attributes, and multi-language lookup
🤖 Automation Sneak Peek
See the full automation examples guide for more recipes.
Run appliances when electricity is cheapest:
automation:
- alias: "Start Dishwasher During Best Price Period"
trigger:
- platform: state
entity_id: binary_sensor.tibber_best_price_period
to: "on"
action:
- action: switch.turn_on
target:
entity_id: switch.dishwasher
Reduce heating when prices spike above average:
automation:
- alias: "Reduce Heating During High Prices"
trigger:
- platform: numeric_state
entity_id: sensor.tibber_current_interval_price_rating
above: 20 # More than 20% above 24h average
action:
- action: climate.set_temperature
target:
entity_id: climate.living_room
data:
temperature: 19
📖 More automations → — EV charging, heat pump control, price notifications, and more
📈 ApexCharts as an Alternative
The chart card covers the price curve with nothing to install. If you use ApexCharts a lot and want your price charts to look like the others on your dashboards, generate them with a single action call — dynamic Y-axis, color-coded price levels, and multiple chart modes included. get_dashboard_yaml builds the whole dashboard with them, too (chart_card: apexcharts).
📖 Chart examples & setup → | Actions reference →
❓ Help & Support
- 📖 FAQ — Common questions answered
- 🔧 Troubleshooting — Solving common issues
- 🐛 Report an Issue — Found a bug? Let us know
🤝 Contributing
Contributions are welcome! See the Contributing Guidelines and Developer Documentation to get started.
- Developer Setup — DevContainer-based development environment
- Architecture Guide — Understand the codebase
- Release Management — Release process and versioning
🤖 Development Note
This integration is developed with extensive AI assistance (GitHub Copilot, Claude, and other AI tools). While AI enables rapid development, it's possible that some edge cases haven't been discovered yet. If you encounter any issues, please open an issue — we'll fix them (with AI help, of course! 😊).
Quality is ensured through automated linting (Ruff), static type checking (Pyright), and real-world testing.
📄 License
This project is licensed under the MIT License — see the LICENSE file for details.