diff --git a/docs/docs/custom-html.md b/docs/docs/custom-html.md
index bbe52ea0f2ef1..d60e47b751bd8 100644
--- a/docs/docs/custom-html.md
+++ b/docs/docs/custom-html.md
@@ -3,7 +3,7 @@ title: Customizing html.js
---
Gatsby uses a React component to server render the `
` and other parts of
-the HTML outside of the core Gatsby application.
+the HTML outside of the core Gatsby application. Gatsby also sets a default value for the `` tag there.
Most sites should use the default `html.js` shipped with Gatsby. But if you need
to customize your site's html.js, copy the default one into your source
@@ -22,14 +22,14 @@ If you need to insert custom html into the `` or `` of each page o
Note: the various props that are rendered into pages _are_ required e.g.
`headComponents`, `preBodyComponents`, `body`, and `postBodyComponents`.
-### Inserting html into the
+### Inserting html into the ``
Anything you render in the `html.js` component will _not_ be made "live" in
the client like other components. If you want to dynamically update your
`` we recommend using
[React Helmet](/packages/gatsby-plugin-react-helmet/)
-### Inserting html into the
+### Inserting html into the ``
If you want to insert custom html into the footer, html.js is the preferred way of doing this. If you're writing a plugin, consider using the `setPostBodyComponents` prop in the [Gatsby SSR API](/docs/ssr-apis/).
diff --git a/packages/gatsby/cache-dir/__tests__/__snapshots__/static-entry.js.snap b/packages/gatsby/cache-dir/__tests__/__snapshots__/static-entry.js.snap
index 87cd69032ec2b..603e8dfc70d86 100644
--- a/packages/gatsby/cache-dir/__tests__/__snapshots__/static-entry.js.snap
+++ b/packages/gatsby/cache-dir/__tests__/__snapshots__/static-entry.js.snap
@@ -1,13 +1,13 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
-exports[`develop-static-entry onPreRenderHTML can be used to replace headComponents 1`] = `"
"`;
+exports[`develop-static-entry onPreRenderHTML can be used to replace headComponents 1`] = `"This app works best with JavaScript enabled.
"`;
-exports[`develop-static-entry onPreRenderHTML can be used to replace postBodyComponents 1`] = `"
div3
div2
div1
"`;
+exports[`develop-static-entry onPreRenderHTML can be used to replace postBodyComponents 1`] = `"This app works best with JavaScript enabled.
div3
div2
div1
"`;
-exports[`develop-static-entry onPreRenderHTML can be used to replace preBodyComponents 1`] = `"div3
div2
div1
"`;
+exports[`develop-static-entry onPreRenderHTML can be used to replace preBodyComponents 1`] = `"div3
div2
div1
This app works best with JavaScript enabled.
"`;
-exports[`static-entry onPreRenderHTML can be used to replace headComponents 1`] = `" "`;
+exports[`static-entry onPreRenderHTML can be used to replace headComponents 1`] = `"This app works best with JavaScript enabled. "`;
-exports[`static-entry onPreRenderHTML can be used to replace postBodyComponents 1`] = `"div3
div2
div1
"`;
+exports[`static-entry onPreRenderHTML can be used to replace postBodyComponents 1`] = `"This app works best with JavaScript enabled. div3
div2
div1
"`;
-exports[`static-entry onPreRenderHTML can be used to replace preBodyComponents 1`] = `"div3
div2
div1
"`;
+exports[`static-entry onPreRenderHTML can be used to replace preBodyComponents 1`] = `"div3
div2
div1
This app works best with JavaScript enabled. "`;
diff --git a/packages/gatsby/cache-dir/default-html.js b/packages/gatsby/cache-dir/default-html.js
index fdbc4bea58c70..aa60055128505 100644
--- a/packages/gatsby/cache-dir/default-html.js
+++ b/packages/gatsby/cache-dir/default-html.js
@@ -16,6 +16,9 @@ export default class HTML extends React.Component {
{this.props.preBodyComponents}
+
+ This app works best with JavaScript enabled.
+