Dedicated custom SMTP & deliverability for Clerk authentication in modern SaaS applications
By default, Clerk sends verification emails from its shared domain, causing spam folder placement. Connect SadaSend custom SMTP in 2 minutes to send branded OTP codes, password resets, and magic links from your own verified domain with Dual-DKIM and 6,000 free monthly emails.
Drop into your application in under 60 seconds
Native typed interfaces with zero unnecessary dependencies. Built for standard fetch and modern edge runtimes.
// app/api/webhooks/clerk/route.ts
// Listen to Clerk webhooks to trigger personalized React Email onboarding
import { Webhook } from 'svix';
import { headers } from 'next/headers';
import { SadaSend } from 'sadasend';
const sadasend = new SadaSend({ apiKey: process.env.SADASEND_API_KEY! });
export async function POST(req: Request) {
const headerPayload = await headers();
const svixId = headerPayload.get('svix-id');
const svixTimestamp = headerPayload.get('svix-timestamp');
const svixSignature = headerPayload.get('svix-signature');
const payload = await req.json();
const body = JSON.stringify(payload);
const wh = new Webhook(process.env.CLERK_WEBHOOK_SECRET!);
const evt = wh.verify(body, {
'svix-id': svixId!,
'svix-timestamp': svixTimestamp!,
'svix-signature': svixSignature!,
}) as { type: string; data: { email_addresses: Array<{ email_address: string }> } };
if (evt.type === 'user.created') {
const userEmail = evt.data.email_addresses[0]?.email_address;
if (userEmail) {
await sadasend.emails.send({
from: 'team@yourdomain.com',
to: userEmail,
subject: 'Welcome to the platform',
html: '<p>Your account is ready. Explore our developer docs to get started.</p>',
});
}
}
return new Response('OK', { status: 200 });
}Configure Clerk Dashboard -> Email -> Custom SMTP (Host: smtp.sadasend.com, Port: 587, STARTTLS). Then listen to Clerk webhooks for instant branded welcome flows.
Engineered for high deliverability and zero incident risk
Every layer from synchronous request validation to per-key rate limits is designed to keep critical transactional dispatches fast, reliable, and contained.
Direct Port 587 STARTTLS Relay
Connect Clerk directly via standard ESMTP Submission on Port 587 with opportunistic STARTTLS encryption, eliminating shared-pool IP degradation.
Dual-DKIM Cryptographic Signing
Dual-signs all verification messages with 2048-bit RSA and Ed25519 elliptic-curve keys, ensuring 100% SPF/DKIM alignment for Gmail and Outlook.
Sub-150ms Ingestion Path
High-throughput MX dispatch delivers 6-digit OTP codes and magic links in milliseconds so users never abandon signup waiting for verification.
In-Flight Pre-Send Bounce Defense
Verifies recipient syntax and domain MX records before queueing, stopping disposable burner addresses and typos before they consume database rows.
SadaSend vs Clerk Default / SendGrid
Why SaaS engineering teams connect SadaSend custom SMTP to Clerk instead of relying on default shared domains or legacy SendGrid.
| Feature & Capability | SadaSend | Clerk Default / SendGrid |
|---|---|---|
| Sending Domain Reputation | 100% Your Domain (Dual-DKIM) | Shared clerk.email pool |
| Custom SMTP Connection | Port 587 STARTTLS in 2 mins | Complex IP warming & tiers |
| In-Flight Pre-Send Bounce Shield | Yes (blocks dead mailboxes) | No (penalized on bounce) |
| Free Monthly Allowance | 6,000 / mo | Limited or paid add-on |
| Outbound Balance Protection | SpendGuard ($0 floor) | Uncapped overage exposure |
Verified as of November 2026. Competitor features and pricing are based on public documentation and may vary.
Start with 6,000 emails every month at zero cost
No artificial paywalls on security. Unlike providers that reserve recipient allowlists and approval workflows for enterprise tiers, every SadaSend account receives full safety controls from day one.
Everything you need to know about clerk custom smtp
Clear, transparent answers on deliverability, API authentication, and rate limits.
Related developer guides and architectural tutorials
Explore step-by-step production implementation blueprints, benchmarks, and protocols.
SMTP relay & framework integrations
Connect existing applications, WordPress, Supabase, Laravel, Django, and Nodemailer to SadaSend via standard SMTP relay with zero code changes.
REST API Reference & Endpoints
Complete REST API reference for sending emails, managing API keys, tracking delivery events, and configuring recipient allowlists with low latency.
Official Client SDKs (TypeScript & Python)
Official zero-dependency client SDKs for SadaSend. TypeScript and Python packages are live on npm and PyPI with typed results and auto-idempotency.
Clerk Custom SMTP Setup: The Complete Deliverability Guide
A production-ready walkthrough for configuring Clerk custom SMTP with SadaSend, achieving 100% SPF/DKIM alignment, and listening to Clerk webhooks with React Email.
Better-Auth Email Verification Setup: The Complete 2026 Guide
A production-ready walkthrough for wiring Better-Auth email verification, password resets, and magic links with SadaSend and React Email in Next.js 15 and Bun.
Supabase Custom SMTP Setup: Replace noreply@mail.app.supabase.io and Fix 429 Errors
Supabase's built-in mailer is hard-capped at 2 auth emails per hour. Learn how to configure custom SMTP, raise the rate limit in Auth settings, replace noreply@mail.app.supabase.io, and send reliably with 6,000 free monthly emails.