Shelly devices are the Swiss Army knife of smart home hardware. Tiny relays that hide behind your existing switches, energy monitors that track every watt, sensors that last years on a single battery. And they all work locally with Home Assistant, no cloud account needed. This guide covers the best Shelly devices, how to set them up, and automations that make your home actually smart.
Jump to a section
Walk into any Home Assistant forum and ask what hardware people recommend for light switches, energy monitoring, or behind-the-wall relays. Shelly comes up every single time. The reason is simple: these devices work locally out of the box, they are small enough to fit inside standard electrical boxes, and they cost a fraction of the competition.
Shelly is a Bulgarian company (formerly Allterco) that built its reputation on Wi-Fi relays and sensors. Unlike most smart home brands that force you through their cloud, Shelly devices expose a local API that Home Assistant talks to directly. Your commands stay on your network. No internet dependency, no latency, no privacy concerns.
Every Shelly device works over your local network. No cloud account required, no internet dependency. Commands execute in milliseconds.
Shelly relays are small enough to fit inside your existing wall switch boxes. Your switches keep working normally, and you add smart control on top.
Many Shelly devices include power metering. Track energy usage per device or whole-home with the Pro 3EM, feeding data straight into HA's energy dashboard.
A Shelly Plus 1 costs about $12. A smart plug with energy monitoring runs $16. You can outfit an entire home without breaking the bank.
Shelly has released several generations of devices. Knowing which line you are buying from helps you pick the right hardware and understand what to expect in Home Assistant.
| Product Line | Chip | Connectivity | Best For | HA Support |
|---|---|---|---|---|
| Gen1 (classic) | ESP8266 | Wi-Fi | Budget setups, Tasmota/ESPHome flashing | โ Full |
| Plus (Gen2) | ESP32 | Wi-Fi + Bluetooth | Most users, best value | โ Full |
| Pro (Gen2) | ESP32 | Wi-Fi + Bluetooth + Ethernet | DIN rail, energy monitoring, enterprise | โ Full |
| BLU (Bluetooth) | Various | Bluetooth Low Energy | Sensors, buttons, battery devices | โ Via BLU Gateway |
| Mini (Gen3) | ESP32-C3 | Wi-Fi + Bluetooth | Ultra-compact installs, tight spaces | โ Full |
Our recommendation: Buy Plus or Mini line devices. They use modern ESP32 chips, support Bluetooth (useful as BLU gateways), get the fastest firmware updates, and are the focus of Shelly's development going forward.
Shelly makes dozens of products. These are the ones the Home Assistant community actually buys and recommends.
~$12 | Wi-Fi + BT | 16A
The bread and butter of Shelly. One relay, fits behind any switch. Use it to make dumb light switches smart, control a water heater, or trigger a garage door. The device most people buy first.
~$20 | Wi-Fi + BT | 2x 10A + Power Metering
Two relays with energy monitoring in one device. Perfect for controlling two lights from one box, or driving a roller shutter/blind motor. The PM means it tracks power consumption for each channel.
~$10 | Wi-Fi + BT | 8A
Same concept as the Plus 1 but even smaller. Fits in the tightest European switch boxes. Lower amperage (8A) means it is best for lights, not high-draw appliances.
~$18 | Wi-Fi + BT
A proper dimmer module that fits behind your switch. Supports trailing edge dimming for LED bulbs. If you want to dim your existing ceiling lights without changing bulbs, this is the one.
~$80 | Wi-Fi + BT + Ethernet | 3-Phase
The gold standard for whole-home energy monitoring. Clamp-on CT sensors go around your mains cables, and it feeds 3-phase power data directly into HA's energy dashboard. Professional grade accuracy.
~$16 | Wi-Fi + BT | 12A + Power Metering
A compact smart plug with built-in energy monitoring. Perfect for tracking individual appliance consumption. Washing machine done? HA knows because the power dropped below 5W.
~$45 | Wi-Fi + BT + Ethernet | 2-Channel
Two channels of energy monitoring on a DIN rail mount. Great for monitoring solar production on one channel and grid consumption on the other. Or track two separate circuits.
~$25 | Wi-Fi + BT | Battery
Temperature and humidity sensor with an e-ink display. Battery lasts over a year. Reports to HA over Wi-Fi or BLE. Useful for climate automations, mold prevention, and greenhouse monitoring.
~$12 | Bluetooth LE | Battery
A tiny contact sensor that detects open/closed state. Uses Bluetooth, so you need a Shelly BLU Gateway or any Plus/Mini device acting as a BLE proxy. Battery lasts about 2 years.
~$18 | Bluetooth LE | Battery
Motion and light level sensor. Same Bluetooth approach as the Door/Window sensor. Triggers motion-based automations like hallway lights or security alerts.
~$18 | Wi-Fi + BT | 4 Inputs
Four digital inputs, no relay output. Connect any switch, button, or binary sensor to it. Perfect for turning a 4-gang switch panel into a scene controller, or monitoring garage doors, doorbells, and leak sensors.
~$30 | Wi-Fi + BT | Battery
A smoke detector that reports to Home Assistant. Get push notifications on your phone when smoke is detected, trigger all lights on, and unlock doors automatically. Battery powered with a 10-year lifespan.
Getting Shelly devices into Home Assistant takes about two minutes per device. Here is the process.
Power on your Shelly device. It creates its own Wi-Fi hotspot (like "ShellyPlus1-XXXX"). Connect to it, open 192.168.33.1 in your browser, and enter your home Wi-Fi credentials. Or use the Shelly app to do this step.
Home Assistant discovers Shelly devices automatically via mDNS. Go to Settings, then Devices & Services. You will see a notification saying a new Shelly device was found. Click Configure.
That is it. The device shows up with all its entities: switches, sensors, energy data, firmware info. No YAML, no MQTT broker, no complicated configuration. Just click and go.
For reliability, assign a static IP to each Shelly device in your router's DHCP settings. This prevents issues after router reboots or IP lease changes. You can also set a static IP in the Shelly device's web interface under Wi-Fi settings.
There are two main ways to connect Shelly devices to Home Assistant. Most people should use the native integration, but MQTT has its place.
RECOMMENDED FOR MOST USERS
FOR ADVANCED SETUPS
Bottom line: Use the native integration unless you specifically need MQTT for multi-system setups. You can always switch later. If you are already running Mosquitto for Zigbee2MQTT, adding Shelly via MQTT is a nice way to keep everything in one place.
Shelly's BLU line (Door/Window, Motion, Button, H&T) uses Bluetooth Low Energy instead of Wi-Fi. These sensors cannot talk to Home Assistant directly. They need a gateway device to bridge the Bluetooth signal to your Wi-Fi network.
The good news: any Shelly Plus or Mini device can act as a BLU gateway. If you already have a Plus 1 behind your hallway light switch, it doubles as a Bluetooth receiver for nearby BLU sensors. No extra hardware needed.
Enable "BLU Gateway" in the settings of any Plus/Mini device. Free if you already own Shelly relays. Range is about 10 meters through walls.
Shelly sells a dedicated BLU Gateway (~$20) that plugs into a USB charger. Better Bluetooth range and does not depend on your relay devices staying powered.
If you run ESPHome, you can use any ESP32 as a Bluetooth proxy. This picks up Shelly BLU sensors alongside other BLE devices like plant sensors and iBeacons.
Here are practical automations that Shelly users build first. Each one uses features that Shelly hardware does particularly well.
The Shelly Plug S tracks power consumption. When your washing machine draws less than 5W for 3 minutes, the cycle is done. Send a notification to your phone so clothes do not sit wet for hours.
automation:
- alias: "Washing machine done"
trigger:
- platform: numeric_state
entity_id: sensor.shelly_plug_s_washing_power
below: 5
for:
minutes: 3
condition:
- condition: state
entity_id: input_boolean.washing_running
state: "on"
action:
- service: notify.mobile_app
data:
title: "Laundry done!"
message: "The washing machine finished. Time to move it to the dryer."
- service: input_boolean.turn_off
target:
entity_id: input_boolean.washing_runningWith a Shelly Plus 1 behind your switch, the physical switch still works normally. But now you can also control it from HA, add a double-press action for scenes, or turn it off automatically at bedtime.
automation:
- alias: "Bedroom lights off at midnight"
trigger:
- platform: time
at: "00:00:00"
action:
- service: switch.turn_off
target:
entity_id: switch.shelly_plus1_bedroomUse the Shelly Pro 3EM to track daily energy usage. If you are heading toward an expensive day (maybe the heat pump is running hard), get an alert before the bill gets ugly.
automation:
- alias: "High energy usage warning"
trigger:
- platform: numeric_state
entity_id: sensor.shelly_3em_total_daily_energy
above: 25
action:
- service: notify.mobile_app
data:
title: "Energy alert"
message: >
Daily usage hit {{ states('sensor.shelly_3em_total_daily_energy') }} kWh.
Check if something is running that should not be.A Shelly H&T in the bathroom detects rising humidity when someone showers. A Shelly Plus 1 controlling the exhaust fan turns it on when humidity exceeds 65% and off when it drops below 55%.
automation:
- alias: "Bathroom fan on high humidity"
trigger:
- platform: numeric_state
entity_id: sensor.shelly_ht_bathroom_humidity
above: 65
action:
- service: switch.turn_on
target:
entity_id: switch.shelly_plus1_bathroom_fan
- alias: "Bathroom fan off low humidity"
trigger:
- platform: numeric_state
entity_id: sensor.shelly_ht_bathroom_humidity
below: 55
for:
minutes: 5
action:
- service: switch.turn_off
target:
entity_id: switch.shelly_plus1_bathroom_fanIf you have solar panels, the Shelly Pro EM or 3EM can track how much you are exporting to the grid. When excess solar is available, automatically turn on high-draw appliances like a water heater or pool pump via Shelly relays.
automation:
- alias: "Use excess solar for water heater"
trigger:
- platform: numeric_state
entity_id: sensor.shelly_3em_grid_power
below: -1500
for:
minutes: 5
action:
- service: switch.turn_on
target:
entity_id: switch.shelly_plus1_water_heater
- alias: "Stop water heater when solar drops"
trigger:
- platform: numeric_state
entity_id: sensor.shelly_3em_grid_power
above: -200
for:
minutes: 2
action:
- service: switch.turn_off
target:
entity_id: switch.shelly_plus1_water_heaterHow does Shelly stack up against other popular Home Assistant hardware? Here is an honest comparison.
| Feature | Shelly | Sonoff | Zigbee Devices |
|---|---|---|---|
| Protocol | Wi-Fi (local API) | Wi-Fi or Zigbee | Zigbee (mesh) |
| Local control out of box | โ Yes | Needs flash | โ Yes |
| Energy monitoring | โ Built in (many models) | Some models | Some plugs only |
| Needs extra hub | No | No (Wi-Fi) / Yes (Zigbee) | Yes (coordinator) |
| Wi-Fi congestion risk | Yes (20+ devices) | Yes (Wi-Fi models) | No (own mesh) |
| Price per relay | $10-20 | $5-15 | $8-20 |
When to pick Shelly: You want relays behind existing switches, energy monitoring matters, and you prefer Wi-Fi simplicity (no coordinator needed). When to pick Zigbee: You have 30+ devices and worry about Wi-Fi congestion, or you want battery-powered sensors everywhere. Many people mix both.
Give every Shelly device a static IP via your router's DHCP reservation. This prevents HA from losing track of devices after router reboots.
If you have a managed router, put all Shelly devices on a separate VLAN. Keeps your IoT traffic isolated from your personal devices and limits blast radius if a device gets compromised.
Shelly releases firmware updates regularly with bug fixes and new features. You can update directly from HA's device page, or enable OTA auto-updates in the Shelly web interface.
If you only use Shelly with Home Assistant, disable the Shelly Cloud connection in each device's settings. Reduces network traffic and eliminates another potential point of failure.
Set a descriptive name in each device's web interface before adding it to HA. This name carries over and saves you from renaming entities later. "Kitchen Ceiling" beats "shellyplus1-a8032a".
Set the switch input to "detached" mode so the physical switch sends events to HA instead of directly toggling the relay. This lets you use single press, double press, and long press for different actions.
Start small. Here is a realistic plan for your first weekend with Shelly and Home Assistant.
~$50 total
~$150 total
~$350 total
Already have some Shelly devices? Run our free scan to see how they connect to Home Assistant. Have a different setup? We will show you what works with what you already own.
Scan Your Devices FreeYes. Shelly devices connect over your local Wi-Fi network and Home Assistant discovers them automatically. All communication stays on your LAN. You never need to create a Shelly Cloud account or enable cloud features for Home Assistant integration.
For most people, the native Shelly integration is the better choice. It auto-discovers devices, supports all features out of the box, and requires zero configuration. MQTT gives you more control over topics and payloads, which matters if you run a complex multi-system setup. If you are just starting out, stick with the native integration.
The most popular picks are the Shelly Plus 1 (relay behind any switch), Shelly Plus 2PM (two relays with power monitoring), Shelly Plug S Gen3 (smart plug with energy tracking), Shelly Pro 3EM (whole-home energy monitor), and Shelly H&T Gen3 (temperature and humidity sensor). The Plus and Pro lines use ESP32 chips and get the best firmware support.
Older Gen1 devices use ESP8266 chips and flash easily with Tasmota or ESPHome. Newer Plus and Pro devices use ESP32 and can also be flashed, though the process varies. Most people stick with stock Shelly firmware because it already provides full local control and excellent HA integration without any flashing.
Most home routers handle 20 to 30 Wi-Fi devices without issues. If you plan to install more than that, consider a Wi-Fi system with multiple access points (like UniFi or TP-Link Omada). Some people also put IoT devices on a dedicated 2.4GHz SSID to keep them separate from phones and laptops.
Yes, but they need a gateway. Shelly BLU sensors use Bluetooth, which HA does not receive directly (unless your HA host has Bluetooth and the device is in range). The easiest solution is enabling the BLU Gateway feature on any Shelly Plus or Mini device you already have. That device forwards the Bluetooth data to HA over Wi-Fi.
Best plugs with energy monitoring for HA
Track whole-home and per-device power usage
Set up Mosquitto and connect all your devices
Practical automation ideas for every room
Flash Shelly or build your own ESP32 devices
Flash Shelly Gen1 devices with Tasmota firmware