diff --git a/homeassistant/components/ecobee/binary_sensor.py b/homeassistant/components/ecobee/binary_sensor.py
index 97ba94aaa70..3367f33a66f 100644
--- a/homeassistant/components/ecobee/binary_sensor.py
+++ b/homeassistant/components/ecobee/binary_sensor.py
@@ -50,7 +50,8 @@ class EcobeeBinarySensor(BinarySensorDevice):
             if sensor["name"] == self.sensor_name:
                 if "code" in sensor:
                     return f"{sensor['code']}-{self.device_class}"
-                return f"{sensor['id']}-{self.device_class}"
+                thermostat = self.data.ecobee.get_thermostat(self.index)
+                return f"{thermostat['identifier']}-{sensor['id']}-{self.device_class}"
 
     @property
     def device_info(self):
diff --git a/homeassistant/components/ecobee/sensor.py b/homeassistant/components/ecobee/sensor.py
index 27a8ae3ef07..1c47bc9b26d 100644
--- a/homeassistant/components/ecobee/sensor.py
+++ b/homeassistant/components/ecobee/sensor.py
@@ -61,7 +61,8 @@ class EcobeeSensor(Entity):
             if sensor["name"] == self.sensor_name:
                 if "code" in sensor:
                     return f"{sensor['code']}-{self.device_class}"
-                return f"{sensor['id']}-{self.device_class}"
+                thermostat = self.data.ecobee.get_thermostat(self.index)
+                return f"{thermostat['identifier']}-{sensor['id']}-{self.device_class}"
 
     @property
     def device_info(self):