diff --git a/ansible/roles/common/tasks/config.yml b/ansible/roles/common/tasks/config.yml
index 27a98576c4..d3d0c3a713 100644
--- a/ansible/roles/common/tasks/config.yml
+++ b/ansible/roles/common/tasks/config.yml
@@ -48,6 +48,16 @@
     - { name: "swift-proxy-server", src: "swift", enabled: "{{ enable_swift }}" }
     - { name: "swift-rsyncd", src: "swift", enabled: "{{ enable_swift }}" }
 
+- name: Heka custom config file exists
+  stat: "path={{ node_custom_config }}/heka/heka-custom.toml"
+  register: heka_custom_stat_result
+
+- name: Copying over heka custom config file
+  template:
+    src: "{{ node_custom_config }}/heka/heka-custom.toml"
+    dest: "{{ node_config_directory }}/heka/heka-custom.toml"
+  when: heka_custom_stat_result.stat.exists == true
+
 - name: Copying over cron logrotate config files
   template:
     src: "cron-logrotate-{{ item }}.conf.j2"
diff --git a/ansible/roles/common/templates/heka.json.j2 b/ansible/roles/common/templates/heka.json.j2
index 5b2de756a4..11a73c55e5 100644
--- a/ansible/roles/common/templates/heka.json.j2
+++ b/ansible/roles/common/templates/heka.json.j2
@@ -15,6 +15,13 @@
             "owner": "heka",
             "perm": "0600"
         },
+        {
+            "source": "{{ container_config_directory }}/heka-custom.toml",
+            "dest": "/etc/heka/heka-custom.toml",
+            "owner": "heka",
+            "perm": "0600",
+            "optional": true
+        },
         {
             "source": "{{ container_config_directory }}/heka-haproxy.toml",
             "dest": "/etc/heka/heka-haproxy.toml",