diff --git a/site/src/components/PreloadingIndicator.svelte b/site/src/components/PreloadingIndicator.svelte
new file mode 100644
index 0000000000..22980e2a6b
--- /dev/null
+++ b/site/src/components/PreloadingIndicator.svelte
@@ -0,0 +1,64 @@
+
+
+
+
+{#if p > 0}
+
+{/if}
+
+{#if p >= 0.4}
+
+{/if}
\ No newline at end of file
diff --git a/site/src/routes/_layout.svelte b/site/src/routes/_layout.svelte
index a72065a7c2..5482ea4d46 100644
--- a/site/src/routes/_layout.svelte
+++ b/site/src/routes/_layout.svelte
@@ -1,11 +1,16 @@
+{#if $preloading}
+
+{/if}
+
{#if $page.path !== '/repl/embed'}