diff --git a/homeassistant/components/homekit/type_media_players.py b/homeassistant/components/homekit/type_media_players.py
index e07e9cb47494b7275a7940c08f04e1c09f3e3889..ec15438352ca1815fc007bec92a6004f0a199e87 100644
--- a/homeassistant/components/homekit/type_media_players.py
+++ b/homeassistant/components/homekit/type_media_players.py
@@ -33,6 +33,7 @@ from homeassistant.const import (
     STATE_OFF,
     STATE_PAUSED,
     STATE_PLAYING,
+    STATE_STANDBY,
     STATE_UNKNOWN,
 )
 
@@ -190,7 +191,12 @@ class MediaPlayer(HomeAccessory):
         current_state = new_state.state
 
         if self.chars[FEATURE_ON_OFF]:
-            hk_state = current_state not in (STATE_OFF, STATE_UNKNOWN, "None")
+            hk_state = current_state not in (
+                STATE_OFF,
+                STATE_UNKNOWN,
+                STATE_STANDBY,
+                "None",
+            )
             if not self._flag[FEATURE_ON_OFF]:
                 _LOGGER.debug(
                     '%s: Set current state for "on_off" to %s', self.entity_id, hk_state
diff --git a/tests/components/homekit/test_type_media_players.py b/tests/components/homekit/test_type_media_players.py
index 366617ee988d8c540b7d99e3a386b6cc756f975d..1fcc3dde40fb9a04e1e4600028fdfb2a9ce5cf79 100644
--- a/tests/components/homekit/test_type_media_players.py
+++ b/tests/components/homekit/test_type_media_players.py
@@ -30,6 +30,7 @@ from homeassistant.const import (
     STATE_ON,
     STATE_PAUSED,
     STATE_PLAYING,
+    STATE_STANDBY,
 )
 from homeassistant.core import CoreState
 from homeassistant.helpers import entity_registry
@@ -75,6 +76,14 @@ async def test_media_player_set_state(hass, hk_driver, events):
     await hass.async_block_till_done()
     assert acc.chars[FEATURE_ON_OFF].value is False
 
+    hass.states.async_set(entity_id, STATE_ON)
+    await hass.async_block_till_done()
+    assert acc.chars[FEATURE_ON_OFF].value is True
+
+    hass.states.async_set(entity_id, STATE_STANDBY)
+    await hass.async_block_till_done()
+    assert acc.chars[FEATURE_ON_OFF].value is False
+
     hass.states.async_set(entity_id, STATE_PLAYING)
     await hass.async_block_till_done()
     assert acc.chars[FEATURE_PLAY_PAUSE].value is True