diff --git a/.coveragerc b/.coveragerc
index 26744ad6952373e31b48f04713d61814928be120..dfbbb232efca86e192b799b939b823c6e0991e55 100644
--- a/.coveragerc
+++ b/.coveragerc
@@ -547,6 +547,7 @@ omit =
     homeassistant/components/notify/rest.py
     homeassistant/components/notify/rocketchat.py
     homeassistant/components/notify/sendgrid.py
+    homeassistant/components/notify/simplepush.py
     homeassistant/components/notify/slack.py
     homeassistant/components/notify/smtp.py
     homeassistant/components/notify/stride.py
diff --git a/homeassistant/components/notify/simplepush.py b/homeassistant/components/notify/simplepush.py
new file mode 100644
index 0000000000000000000000000000000000000000..9d5c58fc5b1c5bde1f3e2a6e98783ac626185136
--- /dev/null
+++ b/homeassistant/components/notify/simplepush.py
@@ -0,0 +1,59 @@
+"""
+Simplepush notification service.
+
+For more details about this platform, please refer to the documentation at
+https://home-assistant.io/components/notify.simplepush/
+"""
+import logging
+
+import voluptuous as vol
+
+import homeassistant.helpers.config_validation as cv
+from homeassistant.components.notify import (
+    ATTR_TITLE, ATTR_TITLE_DEFAULT, PLATFORM_SCHEMA, BaseNotificationService)
+from homeassistant.const import CONF_PASSWORD
+
+REQUIREMENTS = ['simplepush==1.1.4']
+
+_LOGGER = logging.getLogger(__name__)
+
+ATTR_ENCRYPTED = 'encrypted'
+
+CONF_DEVICE_KEY = 'device_key'
+CONF_EVENT = 'event'
+CONF_SALT = 'salt'
+
+PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
+    vol.Required(CONF_DEVICE_KEY): cv.string,
+    vol.Optional(CONF_EVENT): cv.string,
+    vol.Inclusive(CONF_PASSWORD, ATTR_ENCRYPTED): cv.string,
+    vol.Inclusive(CONF_SALT, ATTR_ENCRYPTED): cv.string,
+})
+
+
+def get_service(hass, config, discovery_info=None):
+    """Get the Simplepush notification service."""
+    return SimplePushNotificationService(config)
+
+
+class SimplePushNotificationService(BaseNotificationService):
+    """Implementation of the notification service for Simplepush."""
+
+    def __init__(self, config):
+        """Initialize the Simplepush notification service."""
+        self._device_key = config.get(CONF_DEVICE_KEY)
+        self._event = config.get(CONF_EVENT)
+        self._password = config.get(CONF_PASSWORD)
+        self._salt = config.get(CONF_SALT)
+
+    def send_message(self, message='', **kwargs):
+        """Send a message to a Simplepush user."""
+        from simplepush import send, send_encrypted
+
+        title = kwargs.get(ATTR_TITLE, ATTR_TITLE_DEFAULT)
+
+        if self._password:
+            send_encrypted(self._device_key, self._password, self._salt, title,
+                           message, event=self._event)
+        else:
+            send(self._device_key, title, message, event=self._event)
diff --git a/requirements_all.txt b/requirements_all.txt
index 6354e9c49c72b5ba3ee24d3351b87593e3a645a7..a901c9cb153a2db72802392fd6f0017877fa1977 100644
--- a/requirements_all.txt
+++ b/requirements_all.txt
@@ -1204,6 +1204,9 @@ sharp_aquos_rc==0.3.2
 # homeassistant.components.sensor.shodan
 shodan==1.7.7
 
+# homeassistant.components.notify.simplepush
+simplepush==1.1.4
+
 # homeassistant.components.alarm_control_panel.simplisafe
 simplisafe-python==1.0.5