← All notes
·2 min read·
  • resend
  • smtp
  • email
  • dns
  • domain
  • web-development
  • side-project

Send App Emails from Your Own Domain with Resend

Learn why transactional emails need a dedicated service and how to set up Resend with domain verification and an API key step by step.

Watch on Instagram
Send App Emails from Your Own Domain with Resend

You built a web app. It sends password reset emails, maybe notifications too. But where exactly do those emails come from? If your answer is "my personal domain via Google SMTP" or "I haven't thought about it," this article is for you.

The Problem: Sending App Emails from a Personal Domain

When the Borcumu Bilmiyorum project launched, all app emails — password resets, notifications — went out from the same domain used for everyday business correspondence. At low user counts this goes unnoticed, but as the user base grows, automated messages start getting flagged as spam. The damage does not stop at app emails; your regular business emails sent from that domain can end up in spam folders too, making normal client communication harder.

The solution is to move app email delivery to a separate, purpose-built infrastructure.

Why Resend?

Among transactional email services — Amazon SES, Postmark, and others — Resend stands out for its pricing and developer experience. Routing app mail through Google Workspace SMTP is an option, but it still costs a subscription fee. Paying the same amount for a service designed specifically for this purpose gives you better deliverability and access to sending analytics (opens, clicks, spam reports).

Step-by-Step Setup

1. Add Your Domain

After signing up for Resend, go to the Domains section in the left menu and click Add Domain. Enter your application's domain name. Resend will provide the DNS records needed to verify ownership.

2. DNS Verification

If you use Cloudflare, Resend offers automatic configuration. For other DNS providers, add the records manually — it only takes a few minutes. DNS propagation can take around 20 minutes. Once all records are verified, the domain status changes to Verified.

3. Create an API Key

With the domain verified, go to API Keys and click Create API Key. Give it a name (your project name works well). Set the permission to Sending Access and the domain scope to All Domains. Copy the generated key immediately and store it securely — it will not be shown again.

4. Connect Your Application

Add the API key to your application's environment variables and configure your mail-sending code using the Resend SDK or SMTP settings. From this point on, your app's emails will be sent from your own domain through a dedicated, professional infrastructure.

Testing the Setup

Once everything is configured, trigger a password reset from your application. Check your inbox and confirm the sender address is now your app's own domain. In the Resend dashboard you can also track each send, its delivery status, and any errors.

Why Set This Up Early?

At low user counts, email delivery problems stay hidden. As your user base grows, password reset requests and spam reports accumulate quickly, and fixing a damaged domain reputation is far harder than building the right infrastructure from the start.

Setting up a proper email delivery service is one of the foundational steps for a growing application. Doing it early means a more reliable experience for your users and a protected domain reputation for you.