diff --git a/app/templates/corpora/analyse_corpus.html.j2 b/app/templates/corpora/analyse_corpus.html.j2
index 74731d23666ea43da74428f469b265ad526a15c2..615082690c7b0d95d59686e06a0ff0beecd79898 100644
--- a/app/templates/corpora/analyse_corpus.html.j2
+++ b/app/templates/corpora/analyse_corpus.html.j2
@@ -103,11 +103,23 @@
   </div>
 </div>
 
-<div class="col s12 m9">
+<div class="col s12 m9 hide" id="getting-query-results">
   <div class="card">
     <div class="card-content">
-      <span class="card-title">Query Results</span>
+      <span class="card-title">Fetching your results!</span>
       <div>
+        <div class="progress">
+          <div class="indeterminate"></div>
+        </div>
+      </div>
+    </div>
+  </div>
+</div>
+
+<div class="col s12 m9 hide" id="recieved-query-results">
+  <div class="card">
+    <div class="card-content">
+      <span class="card-title">Query Results</span>
         <table>
           <thead>
             <tr>
@@ -119,7 +131,6 @@
           </thead>
           <tbody id="query-results"></tbody>
         </table>
-      </div>
     </div>
   </div>
 </div>
@@ -193,6 +204,8 @@
   var queryFormSubmitElement = document.getElementById("query-form-submit");
   var queryResultsElement = document.getElementById("query-results");
   var contextResultsElement = document.getElementById("recieved-data");
+  var queryLoadingElement = document.getElementById("getting-query-results");
+  var queryResultsTableElement = document.getElementById("recieved-query-results");
   queryFormSubmitElement.addEventListener("click", function(event) {
     event.preventDefault();
     let formData = new FormData(queryFormElement);
@@ -200,12 +213,17 @@
                      "hits_per_page": formData.get("hits_per_page"),
                      "query": formData.get("query")};
     socket.emit("corpus_analysis", queryData);
+    queryLoadingElement.classList.remove("hide");
+    queryResultsTableElement.classList.add("hide");
     M.toast({html: "Query has been sent!"});
   });
 
   socket.on("corpus_analysis", function(message) {
+    queryLoadingElement.classList.add("hide");
+    queryResultsTableElement.classList.remove("hide");
     console.log(message);
     if (message === null) {
+      queryResultsTableElement.classList.add("hide");
       M.toast({html: "No results for this query!", displayLength: 10000, classes: "red"});
     } else {
     var matchElement;