diff --git a/app/controllers/rooms_controller.rb b/app/controllers/rooms_controller.rb
index 41b4144df35ef85156cedf580707c4f9defa59a4..8c27ea17a36df94f248a7247721ce983b66ba528 100644
--- a/app/controllers/rooms_controller.rb
+++ b/app/controllers/rooms_controller.rb
@@ -137,7 +137,10 @@ class RoomsController < ApplicationController
     begin
       # Don't delete the users home room.
       raise I18n.t("room.delete.home_room") if @room == @room.owner.main_room
-      @room.destroy
+
+      # Destroy all recordings then permanently delete the room
+      delete_all_recordings(@room.bbb_id)
+      @room.destroy(true)
     rescue => e
       flash[:alert] = I18n.t("room.delete.fail", error: e)
     else
diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb
index 70db2471b10287540bf5df38c49f477d917235de..ac60331754471488a42d655c2f83e62690528db4 100644
--- a/app/controllers/users_controller.rb
+++ b/app/controllers/users_controller.rb
@@ -155,6 +155,8 @@ class UsersController < ApplicationController
         # Permanently delete the rooms under the user if they have not been reassigned
         if perm_delete
           @user.rooms.include_deleted.each do |room|
+            # Destroy all recordings then permanently delete the room
+            delete_all_recordings(room.bbb_id)
             room.destroy(true)
           end
         end
diff --git a/spec/controllers/users_controller_spec.rb b/spec/controllers/users_controller_spec.rb
index 59cfe95cec391a12d411e7ac8a5f1f602cbaa73e..9b37d5a9a29b0764d242460da25fbd00afa896dd 100644
--- a/spec/controllers/users_controller_spec.rb
+++ b/spec/controllers/users_controller_spec.rb
@@ -550,6 +550,7 @@ describe UsersController, type: :controller do
     it "allows admins to permanently delete users" do
       allow(Rails.configuration).to receive(:loadbalanced_configuration).and_return(true)
       allow_any_instance_of(User).to receive(:greenlight_account?).and_return(true)
+      allow_any_instance_of(BbbServer).to receive(:delete_all_recordings).and_return("")
       allow_any_instance_of(ApplicationController).to receive(:set_user_domain).and_return("provider1")
       controller.instance_variable_set(:@user_domain, "provider1")
 
@@ -568,6 +569,7 @@ describe UsersController, type: :controller do
     it "permanently deletes the users rooms if the user is permanently deleted" do
       allow(Rails.configuration).to receive(:loadbalanced_configuration).and_return(true)
       allow_any_instance_of(User).to receive(:greenlight_account?).and_return(true)
+      allow_any_instance_of(BbbServer).to receive(:delete_all_recordings).and_return("")
       allow_any_instance_of(ApplicationController).to receive(:set_user_domain).and_return("provider1")
       controller.instance_variable_set(:@user_domain, "provider1")