diff --git a/frontend/test/metabase/scenarios/admin/datamodel/table.cy.spec.js b/frontend/test/metabase/scenarios/admin/datamodel/table.cy.spec.js
index 5db92ea133d36923b67dc35e9f90a6a555f75c27..01f121ee335451de21e72d658ec05a4f8f260a62 100644
--- a/frontend/test/metabase/scenarios/admin/datamodel/table.cy.spec.js
+++ b/frontend/test/metabase/scenarios/admin/datamodel/table.cy.spec.js
@@ -187,7 +187,10 @@ describe("scenarios > admin > datamodel > table", () => {
     });
 
     it("should allow bulk hiding tables", () => {
+      cy.route("GET", `**/api/table/*/query_metadata*`).as("tableMetadata");
       cy.visit(ORDERS_URL);
+      cy.wait(["@tableMetadata", "@tableMetadata", "@tableMetadata"]); // wait for these api calls to finish to avoid them overwriting later PUT calls
+
       cy.contains("4 Queryable Tables");
       cy.get(".AdminList-section .Icon-eye_crossed_out").click();
       cy.contains("4 Hidden Tables");