diff --git a/src/generators/server-side-rendering/visitors/Text.ts b/src/generators/server-side-rendering/visitors/Text.ts
index c35bd9ced9..dd59a384cb 100644
--- a/src/generators/server-side-rendering/visitors/Text.ts
+++ b/src/generators/server-side-rendering/visitors/Text.ts
@@ -7,5 +7,5 @@ export default function visitText(
block: Block,
node: Node
) {
- generator.append(node.data.replace(/\${/g, '\\${'));
+ generator.append(node.data.replace(/(\${|`|\\)/g, '\\$1'));
}
diff --git a/test/runtime/samples/escape-template-literals/_config.js b/test/runtime/samples/escape-template-literals/_config.js
new file mode 100644
index 0000000000..df22784ba7
--- /dev/null
+++ b/test/runtime/samples/escape-template-literals/_config.js
@@ -0,0 +1,3 @@
+export default {
+ html: '`${foo}\\n`
'
+};
diff --git a/test/runtime/samples/escape-template-literals/main.html b/test/runtime/samples/escape-template-literals/main.html
new file mode 100644
index 0000000000..4705d114d2
--- /dev/null
+++ b/test/runtime/samples/escape-template-literals/main.html
@@ -0,0 +1 @@
+`${foo}\n`