diff --git a/brian_polling_manager/cli.py b/brian_polling_manager/cli.py
index f09828671d643231e864b861ad176c5c6616764c..48f4e82485d89aad665d9c1c92f7138883893827 100644
--- a/brian_polling_manager/cli.py
+++ b/brian_polling_manager/cli.py
@@ -29,6 +29,7 @@ from typing import Union
 
 import click
 import jsonschema
+from statsd import StatsClient
 
 from brian_polling_manager import inventory, interfaces, environment
 
@@ -60,7 +61,12 @@ _DEFAULT_CONFIG = {
         }
     },
     'statedir': '/tmp/',
-    'logging': environment.DEFAULT_LOGGING_FILENAME
+    'logging': environment.DEFAULT_LOGGING_FILENAME,
+    'statsd': {
+        'hostname': 'localhost',
+        'port': 8125,
+        'prefix': 'brian_polling'
+    }
 }
 
 CONFIG_SCHEMA = {
@@ -102,6 +108,16 @@ CONFIG_SCHEMA = {
             },
             'required': ['api-base', 'token', 'interface-check'],
             'additionalProperties': False
+        },
+        'statsd': {
+            'type': 'object',
+            'properties': {
+                'hostname': {'type': 'string'},
+                'port': {'type': 'integer'},
+                'prefix': {'type': 'string'}
+            },
+            'required': ['hostname', 'port', 'prefix'],
+            'additionalProperties': False
         }
     },
     'type': 'object',
@@ -113,7 +129,8 @@ CONFIG_SCHEMA = {
         },
         'sensu': {'$ref': '#/definitions/sensu'},
         'statedir': {'type': 'string'},
-        'logging': {'type': 'string'}
+        'logging': {'type': 'string'},
+        'statsd': {'$ref': '#/definitions/statsd'}
     },
     'required': ['inventory', 'sensu', 'statedir'],
     'additionalProperties': False
@@ -237,7 +254,16 @@ def main(config, force):
         state.last = last
         state.interfaces = inventory.load_interfaces(config['inventory'])
 
-    interfaces.refresh(config['sensu'], state)
+    statsd_config = config.get('statsd', None)
+    if statsd_config:
+        statsd = StatsClient(
+            host=statsd_config['hostname'],
+            port=statsd_config['port'],
+            prefix=statsd_config['prefix'])
+    else:
+        statsd = None
+
+    interfaces.refresh(config['sensu'], state, statsd=statsd)
 
 
 if __name__ == '__main__':
diff --git a/brian_polling_manager/interfaces.py b/brian_polling_manager/interfaces.py
index cde5cef82dfc2ce39ae3a150661f9dfbf806a861..de6322f3fa23ea84d3046448bd5ca364685755cc 100644
--- a/brian_polling_manager/interfaces.py
+++ b/brian_polling_manager/interfaces.py
@@ -68,22 +68,35 @@ def _checks_match(a, b) -> bool:
     return True
 
 
-def refresh(sensu_params, state):
+def refresh(sensu_params, state, statsd=None):
 
     ifc_checks = load_ifc_checks(sensu_params)
 
+    created = 0
+    updated = 0
+    interfaces = 0
     for interface in state.interfaces:
 
+        interfaces += 1
+
         expected_check = _make_check(
             sensu_params['interface-check'], interface)
 
         expected_name = _check_name(interface)
         if expected_name not in ifc_checks:
+            created += 1
             sensu.create_check(sensu_params, expected_check)
         elif not _checks_match(ifc_checks[expected_name], expected_check):
+            updated += 1
             sensu.update_check(sensu_params, expected_check)
 
     wanted_checks = {_check_name(ifc) for ifc in state.interfaces}
     extra_checks = set(ifc_checks.keys()) - wanted_checks
     for name in extra_checks:
         sensu.delete_check(sensu_params, name)
+
+    if statsd:
+        statsd.guage('checks', len(ifc_checks))
+        statsd.guage('interfaces', interfaces)
+        statsd.guage('created', created)
+        statsd.guage('updated', updated)
diff --git a/requirements.txt b/requirements.txt
index ce85dbcd29a516b2fdd1b9899761f12b7345e3dc..14c092051717d2a1d81ef626c0e33e155083fb67 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,6 +1,7 @@
 click
 jsonschema
 requests
+statsd
 
 pytest
 responses
diff --git a/setup.py b/setup.py
index 05a2c7fe59e4194b93bc0674a74e406ac20c57db..cf6c751e088fecda7fd1a4f1df24acc0c80a578a 100644
--- a/setup.py
+++ b/setup.py
@@ -11,7 +11,8 @@ setup(
     install_requires=[
         'click',
         'requests',
-        'jsonschema'
+        'jsonschema',
+        'statsd'
     ],
     entry_points={
         'console_scripts': [