---
title: "Test sign-up and login emails in apps built with v0 · Proxy Mail QA"
description: "v0 apps usually sign people in with Supabase. Set the Site URL and redirects for Vercel, fix the email sender, and test every login email with a private inbox."
url: https://proxymail.qa/built-with/v0
---

1. [Home](https://proxymail.qa/)
2. [AI app builders](https://proxymail.qa/built-with)

# Testing sign-up and login emails in apps built with v0

v0 builds a Next.js app and deploys it to Vercel. Ask it for accounts and it usually connects Supabase for login, sometimes Clerk. Their emails only work for real users once a couple of settings match where your app actually runs.

Updated October 15, 2026

## Your login options in v0 apps

| Sign-in option                      | Emails your users get                      | Test with Proxy Mail QA    |
| ----------------------------------- | ------------------------------------------ | -------------------------- |
| Email and password, with Supabase   | Confirmation, password reset, email change | Yes                        |
| Magic links or codes, with Supabase | A link or code to sign in                  | Yes                        |
| Email and password, with Clerk      | A verification code, password reset codes  | Yes                        |
| Google, GitHub and other buttons    | None to sign in                            | No: use an account you own |

Not sure which your app uses? Ask v0: “Which authentication does this app use, and which emails does it send?” [Login methods explained](https://proxymail.qa/built-with/login-methods) covers what each option does.

## Test every login email in five minutes

1. **Deploy, then open your production address,** not the preview inside v0.
2. **Create an address** in Proxy Mail QA, with a generated persona if your form asks for a name.
3. **Sign up and use the link or code from the row.** A confirmation link gets **Open link** and **Copy link** buttons; codes get a **Copy** button.
4. **Then test the rest:** sign out, reset the password, sign in with the new one, and save it on the row.
5. **Repeat once on a preview deployment** if your team checks changes there before they go live.

## Supabase: three settings to check

**1\. Site URL and Redirect URLs.** In your Supabase project, open **Authentication → URL Configuration**. Set **Site URL** to your production domain, and add your custom domain and `https://*-your-team.vercel.app/**` (with your Vercel team’s name) under **Redirect URLs**, so preview deployments work too. Proxy Mail QA flags links that go to `localhost`, including hosted Supabase links that only redirect there after verifying. [Full guide](https://proxymail.qa/solve/localhost-links).

**2\. The redirect in the code.** Sign-up, magic links and password reset should ask Supabase to send people back to your site’s real address, from an environment variable or the current page’s address, never a hard-coded `localhost`.

**3\. The email sender.** Supabase’s built-in sender is for development: it sends only 2 emails an hour, and only to members of your Supabase project’s team, so mail to a test address never leaves Supabase. Set up **custom SMTP** with a provider such as Resend before you test with outside addresses or launch. [Other reasons email doesn’t arrive](https://proxymail.qa/troubleshooting).

## Clerk: development and production

Clerk starts your app on a development instance with its own users. Before launch you create a production instance and connect your domain with the DNS records Clerk lists, and accounts made in development don’t carry over. Sign up again on production with a fresh address, and check the verification code arrives and works.

## Copy-paste prompts for v0

Prompt

```text
List every email this app sends: sign-up confirmation, verification code, magic link, password reset, invite and email change. For each, tell me what triggers it, which URL its link points to, and how long its link or code stays valid. Flag anything that uses localhost.

```

Prompt

```text
Build every redirect in sign-up, magic link and password reset emails from an environment variable for the site's public URL, falling back to the current page's address. Never hard-code localhost.

```

Prompt

```text
Add a Forgot password flow: a page to request the email, and a page to choose a new password that then signs the user in. Show a clear message when the link has expired or was already used, with a button to send a new one.

```

## Try it on your next sign-up test

Free plan, no credit card. Create an address and watch the code or link arrive.

[Create a free account](https://app.proxymail.qa/?mode=signup&from=v0)

## Questions

### Why does my confirmation link go to localhost:3000?

Supabase builds the link from your Site URL, which starts as http://localhost:3000, unless your sign-up code asks for a redirect address that's on the Redirect URLs list. Set the Site URL to your production domain and add your other addresses under Redirect URLs.

### Sign-up works on my production domain but not on preview deployments. Why?

Each Vercel preview deployment gets its own address. Add a wildcard such as https://\*-your-team.vercel.app/\*\* to Supabase's Redirect URLs, so links sent from a preview come back to it.

### Can I test login in v0's preview?

Test it on your deployed app. The preview inside v0 runs on its own address, which usually isn't on Supabase's Redirect URLs list, so links in login emails fall back to the Site URL instead of returning to the preview.

## Related guides

- [LovableWhich Lovable Cloud logins send email, the Site URL and sender settings, and a check before you launch.](https://proxymail.qa/built-with/lovable)
- [ReplitReplit Auth, Clerk Auth or your own: which send email, and how to test each on the published app.](https://proxymail.qa/built-with/replit)
- [BoltTurn on email confirmation, fix the localhost Site URL and test every auth email before you publish.](https://proxymail.qa/built-with/bolt)
- [Base44Test the sign-up code, password reset and invites, and every user role, with a test account per role.](https://proxymail.qa/built-with/base44)
- [Claude CodeCheck the auth emails in apps you build with Anthropic’s coding agent, from localhost to staging.](https://proxymail.qa/built-with/claude-code)
- [OpenAI CodexRun the real email flow once before you merge a Codex change that touches sign-up or login.](https://proxymail.qa/built-with/codex)
- [CursorCheck the real sign-up, magic-link and reset emails after the agent changes your auth code.](https://proxymail.qa/built-with/cursor)
- [Google AntigravityKeep unverified Firebase users out, check authorized domains and the sender, and let the agent run the check.](https://proxymail.qa/built-with/antigravity)
- [QoderCheck the real sign-up, code and reset emails after the agent changes your auth code, or let it check them itself.](https://proxymail.qa/built-with/qoder)
- [Login methods explainedEmail, codes, magic links, Google and Apple buttons, phone and SSO: what each sends, what breaks and how to test it.](https://proxymail.qa/built-with/login-methods)

[See every email testing problem we solve](https://proxymail.qa/solve)

v0 and Vercel are trademarks of Vercel, Inc. Supabase is a trademark of Supabase, Inc. Clerk is a trademark of Clerk, Inc. Proxy Mail QA is independent and isn't affiliated with or endorsed by them.
