diff --git a/docs/developing-prometheus-rules-and-grafana-dashboards.md b/docs/developing-prometheus-rules-and-grafana-dashboards.md
index a0c1ff76f7b36f1eb59c638318a9865abe561550..dcd0ad72f4286c0a3512d1e4525a83f740662cc2 100644
--- a/docs/developing-prometheus-rules-and-grafana-dashboards.md
+++ b/docs/developing-prometheus-rules-and-grafana-dashboards.md
@@ -111,19 +111,24 @@ local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + {
 
 ### Pre-rendered rules
 
-We acknowledge, that users may need to transition existing rules, and therefore allow an option to add additional pre-rendered rules. This can be done simply by importing the existing rules in the [Prometheus rule format](https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/) using the jsonnet function `importstr`. In this example we are importing a [provided example rule](../examples/example.rules.yaml).
+We acknowledge, that users may need to transition existing rules, and therefore allow an option to add additional pre-rendered rules. Luckily the yaml and json formats are very close so the yaml rules just need to be converted to json without any manual interaction needed. Just a tool to convert yaml to json is needed:
+
+```
+go get -u -v github.com/brancz/gojsontoyaml
+```
+
+And convert the existing rule file:
+
+```
+cat existingrule.yaml | gojsontoyaml -yamltojson > existingrule.json
+```
+
+Then import it in jsonnet:
 
 [embedmd]:# (../examples/prometheus-additional-rendered-rule-example.jsonnet)
 ```jsonnet
 local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + {
-  _config+:: {
-    namespace: 'monitoring',
-    prometheus+:: {
-      renderedRules: {
-        'example.rules.yaml': (importstr 'example.rules.yaml'),
-      },
-    },
-  },
+  prometheusAlerts+:: (import 'existingrule.json'),
 };
 
 { ['00namespace-' + name]: kp.kubePrometheus[name] for name in std.objectFields(kp.kubePrometheus) } +
diff --git a/examples/existingrule.json b/examples/existingrule.json
new file mode 100644
index 0000000000000000000000000000000000000000..b29a5c454a17b4dbaac88de8404f6d6e51cda2f1
--- /dev/null
+++ b/examples/existingrule.json
@@ -0,0 +1 @@
+{"groups":[{"name":"example-group","rules":[{"alert":"DeadMansSwitch","annotations":{"description":"This is a DeadMansSwitch meant to ensure that the entire alerting pipeline is functional."},"expr":"vector(1)","labels":{"severity":"none"}}]}]}
\ No newline at end of file
diff --git a/examples/example.rules.yaml b/examples/existingrule.yaml
similarity index 100%
rename from examples/example.rules.yaml
rename to examples/existingrule.yaml
diff --git a/examples/prometheus-additional-rendered-rule-example.jsonnet b/examples/prometheus-additional-rendered-rule-example.jsonnet
index 4ee7317d8c312b3ce34b1a74c1f3239719933025..07ef0e50bbc10a66b15606fd58f754b889593c0c 100644
--- a/examples/prometheus-additional-rendered-rule-example.jsonnet
+++ b/examples/prometheus-additional-rendered-rule-example.jsonnet
@@ -1,12 +1,5 @@
 local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + {
-  _config+:: {
-    namespace: 'monitoring',
-    prometheus+:: {
-      renderedRules: {
-        'example.rules.yaml': (importstr 'example.rules.yaml'),
-      },
-    },
-  },
+  prometheusAlerts+:: (import 'existingrule.json'),
 };
 
 { ['00namespace-' + name]: kp.kubePrometheus[name] for name in std.objectFields(kp.kubePrometheus) } +