diff --git a/src/app/Jobs/Password/RetentionEmailJob.php b/src/app/Jobs/Password/RetentionEmailJob.php
--- a/src/app/Jobs/Password/RetentionEmailJob.php
+++ b/src/app/Jobs/Password/RetentionEmailJob.php
@@ -20,10 +20,10 @@
     public $deleteWhenMissingModels = true;
 
     /** @var int The number of times the job may be attempted. */
-    public $tries = 2;
+    public $tries = 3;
 
     /** @var int The number of seconds to wait before retrying the job. */
-    public $retryAfter = 10;
+    public $backoff = 30;
 
     /** @var string Password expiration date */
     protected $expiresOn;
diff --git a/src/app/Jobs/PasswordResetEmail.php b/src/app/Jobs/PasswordResetEmail.php
--- a/src/app/Jobs/PasswordResetEmail.php
+++ b/src/app/Jobs/PasswordResetEmail.php
@@ -18,14 +18,17 @@
     use SerializesModels;
 
     /** @var int The number of times the job may be attempted. */
-    public $tries = 2;
+    public $tries = 3;
 
-    /** @var \App\VerificationCode Verification code object */
-    protected $code;
+    /** @var int The number of seconds to wait before retrying the job. */
+    public $backoff = 10;
 
     /** @var bool Delete the job if its models no longer exist. */
     public $deleteWhenMissingModels = true;
 
+    /** @var \App\VerificationCode Verification code object */
+    protected $code;
+
     /**
      * Create a new job instance.
      *
@@ -39,17 +42,6 @@
     }
 
     /**
-     * Determine the time at which the job should timeout.
-     *
-     * @return \DateTime
-     */
-    public function retryUntil()
-    {
-        // FIXME: I think it does not make sense to continue trying after 1 hour
-        return now()->addHours(1);
-    }
-
-    /**
      * Execute the job.
      *
      * @return void
diff --git a/src/app/Jobs/PaymentEmail.php b/src/app/Jobs/PaymentEmail.php
--- a/src/app/Jobs/PaymentEmail.php
+++ b/src/app/Jobs/PaymentEmail.php
@@ -18,10 +18,10 @@
     use SerializesModels;
 
     /** @var int The number of times the job may be attempted. */
-    public $tries = 2;
+    public $tries = 3;
 
     /** @var int The number of seconds to wait before retrying the job. */
-    public $backoff = 10;
+    public $backoff = 30;
 
     /** @var bool Delete the job if the wallet no longer exist. */
     public $deleteWhenMissingModels = true;
diff --git a/src/app/Jobs/PaymentMandateDisabledEmail.php b/src/app/Jobs/PaymentMandateDisabledEmail.php
--- a/src/app/Jobs/PaymentMandateDisabledEmail.php
+++ b/src/app/Jobs/PaymentMandateDisabledEmail.php
@@ -19,10 +19,10 @@
     use SerializesModels;
 
     /** @var int The number of times the job may be attempted. */
-    public $tries = 2;
+    public $tries = 3;
 
     /** @var int The number of seconds to wait before retrying the job. */
-    public $backoff = 10;
+    public $backoff = 30;
 
     /** @var bool Delete the job if the wallet no longer exist. */
     public $deleteWhenMissingModels = true;
diff --git a/src/app/Jobs/SignupVerificationEmail.php b/src/app/Jobs/SignupVerificationEmail.php
--- a/src/app/Jobs/SignupVerificationEmail.php
+++ b/src/app/Jobs/SignupVerificationEmail.php
@@ -18,7 +18,10 @@
     use SerializesModels;
 
     /** @var int The number of times the job may be attempted. */
-    public $tries = 2;
+    public $tries = 3;
+
+    /** @var int The number of seconds to wait before retrying the job. */
+    public $backoff = 10;
 
     /** @var bool Delete the job if its models no longer exist. */
     public $deleteWhenMissingModels = true;
@@ -40,17 +43,6 @@
     }
 
     /**
-     * Determine the time at which the job should timeout.
-     *
-     * @return \DateTime
-     */
-    public function retryUntil()
-    {
-        // FIXME: I think it does not make sense to continue trying after 1 hour
-        return now()->addHours(1);
-    }
-
-    /**
      * Execute the job.
      *
      * @return void
diff --git a/src/app/Jobs/SignupVerificationSMS.php b/src/app/Jobs/SignupVerificationSMS.php
--- a/src/app/Jobs/SignupVerificationSMS.php
+++ b/src/app/Jobs/SignupVerificationSMS.php
@@ -17,7 +17,10 @@
     use SerializesModels;
 
     /** @var int The number of times the job may be attempted. */
-    public $tries = 2;
+    public $tries = 3;
+
+    /** @var int The number of seconds to wait before retrying the job. */
+    public $backoff = 10;
 
     /** @var bool Delete the job if its models no longer exist. */
     public $deleteWhenMissingModels = true;
@@ -39,17 +42,6 @@
     }
 
     /**
-     * Determine the time at which the job should timeout.
-     *
-     * @return \DateTime
-     */
-    public function retryUntil()
-    {
-        // FIXME: I think it does not make sense to continue trying after 1 hour
-        return now()->addHours(1);
-    }
-
-    /**
      * Execute the job.
      *
      * @return void
diff --git a/src/app/Jobs/TrialEndEmail.php b/src/app/Jobs/TrialEndEmail.php
--- a/src/app/Jobs/TrialEndEmail.php
+++ b/src/app/Jobs/TrialEndEmail.php
@@ -20,6 +20,9 @@
     /** @var int The number of times the job may be attempted. */
     public $tries = 3;
 
+    /** @var int The number of seconds to wait before retrying the job. */
+    public $backoff = 30;
+
     /** @var bool Delete the job if its models no longer exist. */
     public $deleteWhenMissingModels = true;
 
@@ -39,17 +42,6 @@
     }
 
     /**
-     * Determine the time at which the job should timeout.
-     *
-     * @return \DateTime
-     */
-    public function retryUntil()
-    {
-        // FIXME: I think it does not make sense to continue trying after 24 hours
-        return now()->addHours(24);
-    }
-
-    /**
      * Execute the job.
      *
      * @return void