diff --git a/db/migrate/20230702151753_add_index_user_on_unconfirmed_email.rb b/db/migrate/20230702151753_add_index_user_on_unconfirmed_email.rb
new file mode 100644
index 00000000000..a935463eaa1
--- /dev/null
+++ b/db/migrate/20230702151753_add_index_user_on_unconfirmed_email.rb
@@ -0,0 +1,9 @@
+# frozen_string_literal: true
+
+class AddIndexUserOnUnconfirmedEmail < ActiveRecord::Migration[6.1]
+  disable_ddl_transaction!
+
+  def change
+    add_index :users, :unconfirmed_email, where: 'unconfirmed_email IS NOT NULL', algorithm: :concurrently
+  end
+end