Lovable email

Email Verification Flow Broken in Lovable App

Your Lovable app's email verification flow is broken. Users sign up but can't verify their email because the verification link doesn't work, leads to an error page, has already expired, or the verification email never arrives.

Email verification is essential for preventing fake accounts and ensuring users own their email address. When it's broken, legitimate users are locked out of your app after signing up, creating a terrible first impression.

The issue might be specific to certain email providers, or it might affect all users. Some users receive the email but the link fails; others never receive the email at all.

Error Messages You Might See

Email link is invalid or has expired Error: Invalid token Auth callback error: invalid_grant Redirect URL mismatch
Email link is invalid or has expiredError: Invalid tokenAuth callback error: invalid_grantRedirect URL mismatch

Common Causes

  • Wrong redirect URL — The verification link points to localhost or the wrong domain
  • Supabase email template misconfigured — The confirmation URL template in Supabase uses wrong variables or format
  • Token expired — Email verification tokens expire before users click the link (default may be too short)
  • Email caught by spam filter — Verification emails are caught by spam filters, especially for corporate email addresses
  • Missing redirect handling — The app doesn't handle the redirect after Supabase verifies the email

How to Fix It

  1. Check Supabase email templates — Go to Supabase dashboard → Authentication → Email Templates and verify the confirmation URL uses {{ .ConfirmationURL }}
  2. Verify redirect URL configuration — In Supabase dashboard → Authentication → URL Configuration, make sure the Site URL and Redirect URLs include your production domain
  3. Extend token expiry — Increase the email OTP expiry in Supabase Auth settings if users complain about expired links
  4. Handle the auth callback — Ensure your app has a route that handles the auth callback and exchanges the token for a session
  5. Test the full flow — Sign up with a new email and follow the complete verification path to find exactly where it breaks

Real developers can help you.

Omar Faruk Omar Faruk As a Product Engineer at Klasio, I contributed to end-to-end product development, focusing on scalability, performance, and user experience. My work spanned building and refining core features, developing dynamic website templates, integrating secure and reliable payment gateways, and optimizing the overall system architecture. I played a key role in creating a scalable and maintainable platform to support educators and learners globally. I'm enthusiastic about embracing new challenges and making meaningful contributions. Yovel Cohen Yovel Cohen I got a lot of experience in building Long-horizon AI Agents in production, Backend apps that scale to millions of users and frontend knowledge as well. Bastien Labelle Bastien Labelle Full stack dev w/ 20+ years of experience Jared Hasson Jared Hasson Full time lead founding dev at a cyber security saas startup, with 10 yoe and a bachelor's in CS. Building & debugging software products is what I've spent my time on for forever Simon A. Simon A. I'm a backend developer building APIs, emulators, and interactive game systems. Professionally, I've developed Java/Spring reporting solutions, managed relational and NoSQL databases, and implemented CI/CD workflows. Victor Denisov Victor Denisov Developer Matt Butler Matt Butler Software Engineer @ AWS Krishna Sai Kuncha Krishna Sai Kuncha Experienced Professional Full stack Developer with 8+ years of experience across react, python, js, ts, golang and react-native. Developed inhouse websearch tooling for AI before websearch was solved : ) Luca Liberati Luca Liberati I work on monoliths and microservices, backends and frontends, manage K8s clusters and love to design apps architecture Tejas Chokhawala Tejas Chokhawala Full-stack engineer with 5 years experience building production web apps using React, Next.js and TypeScript. Focused on performance, clean architecture and shipping fast. Experienced with Supabase/Postgres backends, Stripe billing, and building AI-assisted developer tools.

You don't need to be technical. Just describe what's wrong and a verified developer will handle the rest.

Get Help

Frequently Asked Questions

How long should verification links be valid?

At least 24 hours. Many users don't check email immediately. Supabase default is 24 hours but you can extend it in Authentication → Settings.

Can I skip email verification?

Technically yes — you can disable it in Supabase Auth settings. But this allows fake accounts and makes it impossible to send password reset emails, so it's not recommended for production apps.

Related Lovable Issues

Can't fix it yourself?
Real developers can help.

You don't need to be technical. Just describe what's wrong and a verified developer will handle the rest.

Get Help