Skip to main content
If users report that they haven’t received their email OTP code, or that it took longer than expected, this guide covers the common causes and solutions.

Why emails might be delayed

Email delivery times can vary based on several factors:
  • Recipient mail server processing - Some email providers queue incoming messages and process them in batches, which can add delays of a few seconds to several minutes.
  • Spam filtering - Aggressive spam filters may hold emails for additional scanning before delivering them to the inbox.
  • Network congestion - High email traffic periods can slow down delivery across the email infrastructure.
  • Greylisting - Some mail servers temporarily reject emails from new senders, requiring a retry that adds a delay.
In most cases, OTP emails arrive within 30 seconds, but delays of 1-2 minutes are not uncommon depending on the recipient’s email provider.

Why emails might not be delivered

Suppression lists

Email providers maintain suppression lists that prevent delivery to certain addresses. An email address can end up on a suppression list if:
  • Previous hard bounces - The address previously returned a permanent delivery failure (e.g., mailbox doesn’t exist).
  • Spam complaints - The recipient marked a previous email as spam.
  • Unsubscribe requests - The address was previously unsubscribed from communications.
If a user’s email is on a suppression list, OTP emails will silently fail to deliver. The user should try a different email address or contact support to investigate removal from the suppression list.

Invalid email addresses

Emails won’t be delivered if:
  • The email address contains typos
  • The mailbox no longer exists
  • The domain is invalid or has misconfigured DNS records

Recipient inbox issues

  • Full mailbox - The recipient’s inbox has reached its storage limit.
  • Blocked sender - The recipient has blocked the sending domain or address.
  • Spam folder - The email was delivered but filtered into spam or junk folders.
Users should check their spam/junk folders and ensure their mailbox isn’t full.

How we optimize for deliverability

We use multiple email providers with dynamic failover if one provider has degraded service. You can us public validation services like ZeroBounce and NeverBounce to validate the general deliverability of an email address.

What users can do

If a user hasn’t received their OTP email:
  1. Wait 1-2 minutes - Delivery delays are normal.
  2. Check spam/junk folders - The email may have been filtered.
  3. Verify the email address - Ensure there are no typos.
  4. Request a new code - Use the resend option to trigger a new OTP email.
  5. Contact us - If the issue persists, the address may be on a suppression list, contact us in Slack and we can advise you.

What developers can do

  • Implement retry logic - Allow users to easily request a new code.
  • Set appropriate expectations - Inform users that emails may take up to 2 minutes to arrive.
  • Provide alternative authentication methods - Consider offering SMS or passkey authentication as alternatives.