afterbuild/ops
ERR-175/stack trace
ERR-175
Lovable email not sending — fix Supabase Auth emails and SMTP

Lovable email not sending — fix Supabase Auth emails and SMTP

Last updated 17 April 2026 · 7 min read · By Hyder Shah
Direct answer

Lovable uses Supabase Auth for user management. Supabase’s built-in email has a 3 emails/hourlimit on the free tier — enough for testing, not production. Transactional emails (password reset, magic links, email confirmation) must be routed through a real SMTP provider (Resend, SendGrid, Postmark) for production apps.

Quick fix for Lovable email not sending — fix

Start here

Fix 1 — Set up a custom SMTP provider

In Supabase Dashboard → Authentication → SMTP Settings: enable Custom SMTP. Use Resend (free tier: 3,000 emails/month): sign up at resend.com, add your domain, get SMTP credentials. Set: Host = smtp.resend.com, Port = 465, Username = resend, Password = your_api_key.

Deeper fixes when the quick fix fails

  1. 02

    Fix 2 — Authenticate your email domain

    Your SMTP provider requires you to add DNS records to prove you own the domain. In Resend → Domains: add your domain and copy the DNS records (TXT for SPF, CNAME for DKIM). Add these at your registrar. Without domain authentication, emails land in spam even with custom SMTP.

  2. 03

    Fix 3 — Configure email templates

    In Supabase Dashboard → Authentication → Email Templates: update the From Address to use your authenticated domain (e.g., noreply@yourdomain.com). Update the template body to include your app name and brand. The confirmation URL must use your production domain, not Supabase’s default URL.

  3. 04

    Fix 4 — Test the full email flow

    Sign up with a real email address (use a service like Mailinator for testing). Check: (1) confirmation email arrives, (2) link works and confirms the account, (3) password reset email arrives within 60 seconds, (4) emails land in inbox not spam. If any fail, check Supabase Auth logs for error details.

Verify deliverability

Send a test email to a Gmail address and a Microsoft/Outlook address. Open the message and inspect headers — you should see SPF: pass and DKIM: pass. If either says fail or neutral, your DNS records haven’t propagated or are typed incorrectly. Tools like mail-tester.com give a deliverability score out of 10.

Why AI-built apps hit Lovable email not sending — fix

Supabase Auth emails use Supabase’s shared email infrastructure by default. For production: rate limits kick in, emails land in spam (no custom domain authentication), and you can’t customise the from address.

The shared infrastructure is rate-limited to 3 emails per hour, sends from noreply@mail.app.supabase.io, and doesn’t have SPF/DKIM on your domain — all three of which cause Gmail and Outlook to spam-foldering your messages.

My users say they never get the password reset email.
Lovable Discord

Diagnose Lovable email not sending — fix by failure mode

Match your symptom to the fix before touching Supabase.

SymptomCauseFix
No emails arrive at all after N requestsSupabase default SMTP rate-limit (3/hour)Fix 1
Emails arrive but land in spam / PromotionsNo SPF/DKIM on your sending domainFix 2
Email arrives but link goes to localhost or preview URLSite URL / redirect URL wrong in Supabase AuthFix 3

Related errors we fix

Still stuck with Lovable email not sending — fix?

Emergency triage · $299 · 48h turnaround
We restore service and write the root-cause report.

If your users aren’t receiving email and you can’t figure out which layer is broken, we fix the full chain:

  • Users say they never get confirmation / password reset email
  • Emails arrive but land in spam
  • You're hitting Supabase's 3/hour rate limit
  • You want your emails branded from your own domain
start the triage →

Lovable email not sending — fix questions

Why is the Supabase default email not enough for production?+
Three reasons: (1) rate limit of 3 emails/hour on the free tier, (2) sends from mail.app.supabase.io with no custom branding, (3) no SPF/DKIM on your sending domain, so Gmail and Outlook mark the messages as spam. For any real app you must use a custom SMTP provider.
What's the best SMTP provider for a Lovable app?+
Resend is the easiest to set up and has a generous free tier (3,000 emails/month, 100/day). Postmark has the best deliverability for transactional email (around 99%). SendGrid is the most popular but has more complex setup. For most Lovable apps, start with Resend.
How do I know if SPF and DKIM are configured correctly?+
Send a test email to mail-tester.com — it returns a deliverability score out of 10 and highlights any authentication problems. Alternatively, send to your own Gmail and check 'Show original' on the message — look for 'SPF: pass' and 'DKIM: pass' lines at the top.
My password reset email links to localhost. How do I fix it?+
In Supabase Dashboard → Authentication → URL Configuration: set the Site URL to your production domain (https://yourdomain.com, not http://localhost:3000). Add your production domain to the list of Redirect URLs. The email template's confirmation URL uses these settings.
How many emails can I send for free on Resend/SendGrid/Postmark?+
Resend: 3,000/month free (100/day). SendGrid: 100/day free forever. Postmark: 100/month free (no daily cap). For most rescue projects with fewer than 500 users, Resend's free tier is sufficient indefinitely.
Can someone set this up for me?+
Yes — our $299 Emergency Triage covers SMTP provider setup, DNS configuration (SPF/DKIM), Supabase Auth wiring, and deliverability testing for one domain. 48-hour turnaround with a verified test email showing 10/10 on mail-tester.com.
Next step

Ship the fix. Keep the fix.

Emergency Triage restores service in 48 hours. Break the Fix Loop rebuilds CI so this error cannot ship again.

About the author

Hyder Shah leads Afterbuild Labs, shipping production rescues for apps built in Lovable, Bolt.new, Cursor, Replit, v0, and Base44. our rescue methodology.

Lovable email not sending — fix experts

If this problem keeps coming back, you probably need ongoing expertise in the underlying stack.

Sources