diff --git a/README.rst b/README.rst
index 0b41d13..daae157 100644
--- a/README.rst
+++ b/README.rst
@@ -396,3 +396,36 @@
 |                               | operations, verify do not have dead network          |
 |                               | agents/compute services)                             |
 +-------------------------------+------------------------------------------------------+
+
+Execute database maintenance tasks
+----------------------------------
+Cleanup stale records from heat database to make it smaller.
+This is helpful before any upgrade activity.
+It is safe to execute it generally without maintenance window same as online db_sync.
+
+Enable this pillar:
+
+.. code-block:: yaml
+
+   heat:
+     server:
+       db_purge:
+         enabled: True
+
+Execute state heat.db.db_cleanup to purge stale records:
+
+.. code-block:: bash
+
+   salt -C 'I@heat:server:role:primary' state.apply heat.db.db_cleanup -l debug
+
+It is possible to pass days parameter.
+If you skip setting it, all records would be archived/purged:
+
+.. code-block:: yaml
+
+   heat:
+     server:
+       db_purge:
+         enabled: True
+         days: 45
+
diff --git a/heat/db/db_cleanup.sls b/heat/db/db_cleanup.sls
new file mode 100644
index 0000000..f227de1
--- /dev/null
+++ b/heat/db/db_cleanup.sls
@@ -0,0 +1,27 @@
+{%- from "heat/map.jinja" import server with context %}
+
+{%- if server.get('db_purge', {}).get('enabled', False) %}
+
+{%- set cmd_args = [] %}
+{%- if server.db_purge.days is defined %}
+{%-   do cmd_args.append('-g') %}
+{%-   do cmd_args.append('days') %}
+{%- endif %}
+
+{%- if server.db_purge.project_id is defined %}
+{%-   do cmd_args.append('-p') %}
+{%-   do cmd_args.append(server.db_purge.project_id|string) %}
+{%- endif %}
+
+{%- if server.db_purge.days is defined %}
+{%-   do cmd_args.append(server.db_purge.days|string) %}
+{%- endif %}
+heat_db_clean:
+  cmd.run:
+  - name: "heat-manage purge_deleted {{ cmd_args|join(' ') }}"
+  - runas: 'heat'
+  {%- if grains.get('noservices') or server.get('role', 'primary') == 'secondary' %}
+  - onlyif: /bin/false
+  {%- endif %}
+
+{%- endif %}
