Skip to main content
AutoSend x Supabase
Supabase uses email for authentication flows like sign-up confirmations, password resets, and magic links. By default, Supabase uses its built-in email provider, but it has rate limit. For production apps, you can configure it to use AutoSend SMTP for better deliverability.

Prerequisites

Configuration

1

Open Supabase Auth Settings

  1. Go to your Supabase dashboard
  2. Select your project
  3. Navigate to Authentication
  4. Under Notifications, you will see Email Section.
  5. Go to SMTP Settings tab.
Supabase Step 1
2

Enable Custom SMTP

Toggle Enable Custom SMTP to enable the SMTP configuration form.
Supabase Step 2
3

Enter SMTP Credentials

Fill in the following settings:
FieldValue
Sender email[email protected] (must match your verified domain)
Sender nameYour app name (e.g., “MyApp”)
Hostsmtp.autosend.com
Port number587
Usernameautosend
PasswordAutoSend API key secret
Supabase Step 3
4

Save Settings

Click Save to apply your SMTP configuration.
5

Test the Configuration

Send a test email to verify your configuration:
  1. Go to AuthenticationUsers
  2. Click Invite user
  3. Enter a test email address
  4. Click Invite
Check the recipient’s inbox to confirm the email was delivered through AutoSend.

Email Templates

Supabase allows you to customize the email templates used for authentication. You can modify these in AuthenticationEmail Templates. Available templates:
  • Confirm signup - Sent when a user signs up
  • Invite user - Sent when inviting a user to your project
  • Magic link - Sent for passwordless login
  • Change email address - Sent when a user requests an email change
  • Reset password - Sent for password recovery
Supabase email templates use Go templating syntax. Variables like {{ .ConfirmationURL }} are replaced with actual values when the email is sent.

Example Custom Template

Here’s an example of a customized signup confirmation template:
<h2>Welcome to MyApp!</h2>

<p>Thanks for signing up. Please confirm your email address by clicking the button below:</p>

<a
	href="{{ .ConfirmationURL }}"
	style="display: inline-block; padding: 12px 24px; background-color: #4F39F6; color: white; text-decoration: none; border-radius: 6px;">
	Confirm Email
</a>

<p>If you didn't create an account, you can safely ignore this email.</p>

<p>Thanks,<br />The MyApp Team</p>

Rate Limits

Supabase applies rate limits to authentication emails to prevent abuse. These limits are:
  • 30 emails per hour per user
  • 4 emails per hour for the same action (e.g., password reset)
AutoSend’s rate limits are separate and typically higher. Check your plan limits for details.

Troubleshooting

  • Verify your SMTP credentials are correct - Check that your sender email domain is verified in AutoSend - Ensure the sender email matches a verified domain - Check Supabase logs for SMTP connection errors
  • Ensure your domain has proper DNS records (SPF, DKIM, DMARC) - Use a professional sender name, not “noreply” - Avoid spam trigger words in your email templates - Check your domain reputation in AutoSend
  • Supabase may have firewall restrictions on certain IP ranges - Try using port 465 instead of 587 - Contact Supabase support if the issue persists
  • Double-check your API key is correct - Ensure you’re using the same key for both username and password - Verify your API key is active in the AutoSend dashboard

Alternative: Supabase Edge Functions

For more advanced use cases, you can use Supabase Edge Functions with the AutoSend API instead of SMTP. This gives you access to features like:
  • Email templates with dynamic variables
  • Detailed delivery tracking
  • Webhook notifications

Edge Functions Integration

Learn how to send emails from Supabase Edge Functions using the AutoSend API