Behind the screen

Email and notifications

Apps need to reach people outside the app: a password reset, an order confirmation, a login code, a delivery update. Each channel has its own plumbing. Email travels between mail servers, push notifications go through Apple's and Google's push services, and SMS and WhatsApp messages pass through mobile operators and Meta.

Most products use a specialist service for each channel rather than running their own servers, because the hard part is getting delivered: inboxes filter spam, phones limit what apps may send, and India requires registration for business SMS. This page covers those services, the DNS records that keep email out of spam, and what each kind of message costs.

15 terms · 2 comparisons · prices checked September 2026

15 terms, click any to open

Email

SMTP

Protocol
The standard protocol mail servers use to pass email to each other, and a common way for apps to hand their emails to a sending service.

SMTP (Simple Mail Transfer Protocol) dates from 1982 and still carries email between servers today. A sending server looks up the recipient domain's MX records in DNS, connects to that mail server on port 25 and hands over the message. Apps and mail programs submit mail to their own provider on port 587 (upgraded to encryption with STARTTLS) or 465 (encrypted from the start), logging in with a username and password.

Every sending service (Resend, SendGrid, Amazon SES, Postmark) offers an SMTP relay, so frameworks, WordPress plugins and older software can send without custom code, and each also offers an HTTP API, which is usually quicker to call and returns clearer errors. Many clouds block outgoing port 25 to fight spam, one more reason apps send through a relay. SMTP only sends mail; reading a mailbox uses IMAP or POP3.

Also called: Simple Mail Transfer Protocol, SMTP relay, port 587, mail server

Open SMTP as a page

Transactional email

Concept
Automatic emails sent to one person because of something they did, such as signing up, resetting a password, paying or asking for a login link.

Transactional email is triggered by an event in the app and expected by the person receiving it, so people look out for it. Marketing or bulk email goes to many people at once and needs consent and an unsubscribe link. Keeping the two apart, on separate streams, IP addresses or subdomains, stops a badly received campaign from dragging password resets into spam.

Apps build these emails from templates (React Email, MJML or the provider's own editor) and send them through an API such as Resend, Postmark, Amazon SES or SendGrid, often from a background job so a slow send never holds up the page. Good habits: a real reply-to address, a plain-text version alongside the HTML, and short-lived links for resets and logins.

Also called: app email, system email, triggered email, notification email

Open Transactional email as a page

Resend

ServiceFree tier
A developer-focused email API for sending app emails, known for quick setup and for React Email, which builds emails from React components.

Resend comes from the team behind React Email, an open-source library for writing emails as React components that render to HTML most email programs display correctly. Sending is a single API call or SMTP, with SDKs for Node.js, Python, PHP, Ruby, Go, Rust, Java and more, and guides for Next.js and serverless platforms.

You verify a domain by adding the DNS records it shows (SPF and DKIM, plus DMARC if you choose), then send from any address on that domain. Webhooks report deliveries, bounces, complaints and opens; Broadcasts cover newsletters on separate plans billed by contacts; and inbound email can be received and passed to your app. Each To, CC or BCC recipient counts as a separate email.

Pros

  • Quick to set up, with clear docs and SDKs for most languages
  • React Email makes templates easy to build and preview
  • Free plan covers small apps and side projects
  • Webhooks and logs make each email easy to trace

Cons

  • Free plan stops at 100 emails a day
  • Younger than SendGrid or SES, with a shorter track record
  • Costs more per email than SES at high volume

Pick it when

  • JavaScript or TypeScript apps, especially on Next.js
  • You want password resets and receipts working in an afternoon
  • Your team likes writing email templates as React components

Skip it when

  • You send millions of emails a month and cost per email matters most

What it costs · Free tier

Free for 3,000 emails a month (at most 100 a day). Pro is $20 a month for 50,000 emails, then $0.90 per 1,000; Scale starts at $90 a month. Marketing email is billed by contacts.

Resend pricing (opens in a new tab)Approximate, checked September 2026.

Also called: Resend API, React Email

Open Resend as a pageOfficial site (opens in a new tab)

SendGrid

ServicePaid
A long-established email platform, owned by Twilio, that sends both app emails and marketing campaigns at large scale.

SendGrid started in 2009 and Twilio has owned it since 2019. It offers an Email API and SMTP relay for app email, dynamic templates, event webhooks, Inbound Parse (which turns received email into webhook calls), suppression management and deliverability tools, plus a separate Marketing Campaigns product with contact lists, a visual editor, sign-up forms and automations.

Its size is both the appeal and the catch. It handles very large volumes and integrates with most platforms, but new accounts go through checks meant to keep spammers out, and on shared IP addresses your delivery depends partly on how other senders behave unless you pay for a dedicated IP. The permanent free plan ended in 2025 and was replaced by a 60-day trial.

Pros

  • Handles very large volumes, for app and marketing email alike
  • Mature tooling: templates, Inbound Parse, webhooks and suppressions
  • Integrations with most CRMs, shop platforms and frameworks

Cons

  • No permanent free plan, only a 60-day trial
  • More setup and a busier dashboard than newer services
  • On shared IP addresses, delivery depends partly on other senders

Pick it when

  • One account must cover app email and marketing campaigns
  • Large or growing volume that needs dedicated IPs and subuser accounts

Skip it when

  • A small app that only sends password resets and receipts

What it costs · Paid

A 60-day free trial allows 100 emails a day. Essentials starts at $19.95 a month and Pro, which includes a dedicated IP, at $89.95; prices rise with volume. Marketing Campaigns is billed separately.

SendGrid pricing (opens in a new tab)Approximate, checked September 2026.

Also called: Twilio SendGrid, SendGrid Email API, SendGrid Marketing Campaigns

Open SendGrid as a pageOfficial site (opens in a new tab)

Amazon SES

ServicePay as you go
Amazon's email sending service, built for large volumes at a low price per email, with fewer ready-made tools than dedicated email providers.

SES (Simple Email Service) is part of AWS. You verify a domain, send through its API or SMTP interface, and receive feedback through other AWS services: bounces, complaints and deliveries arrive as events through SNS or EventBridge. SES keeps a suppression list of addresses that bounced or complained, and offers templates, dedicated IPs, a deliverability dashboard (Virtual Deliverability Manager) and inbound email through Mail Manager.

New accounts start in a sandbox that can only send to verified addresses, up to 200 emails a day, until AWS approves a request for production access, which asks how you collect addresses and handle bounces. Since July 2026 new accounts begin on a bundled Essentials plan; the older pay-per-use à la carte pricing is still available and is cheaper for plain sending.

Pros

  • Very low cost per email at any volume
  • Scales to huge volumes on AWS infrastructure
  • Fits neatly into apps already running on AWS

Cons

  • Sandbox approval before you can email real users
  • Alerts and analytics need wiring through other AWS services
  • The AWS console and permissions (IAM) take time to learn

Pick it when

  • High-volume sending where cost per email matters
  • Your backend already runs on AWS

Skip it when

  • A small team that wants templates, logs and support ready to use

What it costs · Pay as you go

About $0.10 per 1,000 emails on à la carte pricing, or $0.16 on the Essentials plan new accounts start on, plus $0.12 per GB of attachments. No SES free tier for new customers; new AWS accounts get credits.

Amazon SES pricing (opens in a new tab)Approximate, checked September 2026.

Also called: SES, AWS SES, Simple Email Service

Open Amazon SES as a pageOfficial site (opens in a new tab)

Postmark

ServiceFree tier
An email service focused on fast, reliable delivery of app emails such as password resets and receipts, with bulk mail kept on a separate stream.

Postmark splits transactional and broadcast (bulk) email into separate message streams, and broadcasts go out from separate IP addresses, so a newsletter never slows down or taints a login code. It offers an API and SMTP, templates with shared layouts, 45 days of full message history by default, detailed bounce data, inbound email turned into JSON and sent to a webhook, and public delivery-time statistics.

It is known for strict rules: it does not accept purchased lists or cold outreach, and a new account can only email addresses on its own domain until Postmark approves it. ActiveCampaign has owned it since 2022. Plans are priced by monthly volume rather than by contacts, with no daily sending limit.

Pros

  • Strong focus on getting app emails delivered quickly
  • Transactional and bulk email kept on separate streams
  • Clear logs and 45 days of message history by default
  • Helpful docs, templates and inbound email handling

Cons

  • Costs more per email than SES or Resend at higher volumes
  • The free plan's 100 emails a month only suit testing
  • Strict content rules rule out cold email and bought lists

Pick it when

  • Login codes, password resets and receipts must arrive within seconds
  • You want transactional and marketing email clearly separated

Skip it when

  • Very high volume, where price per email decides
  • Cold outreach or bought lists, which it does not allow

What it costs · Free tier

Free Developer plan with 100 emails a month for testing. Basic starts at $15 a month for 10,000 emails (extra $1.80 per 1,000); Pro starts at $16.50 and Platform at $18.

Postmark pricing (opens in a new tab)Approximate, checked September 2026.

Also called: Postmark App, postmarkapp

Open Postmark as a pageOfficial site (opens in a new tab)

Email trust

SPF, DKIM and DMARC

Protocol
Three DNS records that prove an email really comes from your domain, which the big inbox providers now require before they will deliver mail reliably.

SPF (Sender Policy Framework) is a TXT record listing the servers allowed to send mail for a domain. DKIM (DomainKeys Identified Mail) adds a cryptographic signature to each message, checked against a public key published in DNS, so tampering shows. DMARC ties both to the visible From address and tells receivers what to do when checks fail (p=none to monitor, quarantine or reject) and where to send reports.

Since February 2024, Gmail and Yahoo have required SPF or DKIM from every sender, and all three, plus one-click unsubscribe on marketing mail, from anyone sending more than 5,000 messages a day to their users; Microsoft set similar rules for Outlook.com in 2025. Email services show the exact records to add when you verify a domain. Once DMARC is enforced, BIMI can show a brand logo beside messages in some inboxes.

Also called: SPF, DKIM, DMARC, email authentication, BIMI

Open SPF, DKIM and DMARC as a page

Email deliverability

Concept
How reliably your emails land in the inbox rather than in spam or nowhere at all, which depends on your domain's reputation as much as on the message.

Inbox providers such as Gmail and Outlook score every message using the sending domain's and IP address's history, authentication (SPF, DKIM, DMARC), how recipients react (opens, replies, spam reports) and the content itself. A high bounce rate from old or mistyped addresses, or spam complaints above about 0.3% (the limit Gmail publishes), quickly pushes mail into spam.

Habits that help: send only to people who asked for it, confirm sign-ups, remove bounced addresses automatically, keep marketing on a separate subdomain or stream from password resets, warm up a new domain or dedicated IP by raising volume gradually, and put a working unsubscribe link in anything promotional. Google Postmaster Tools shows how Gmail sees your domain.

Also called: inbox placement, sender reputation, spam folder, bounce rate, IP warm-up

Open Email deliverability as a page

Push

Push notifications

Concept
Short alerts an app or website can show on a phone or computer even when it is not open, such as a new message, a delivery update or a reminder.

The app asks the user for permission, and the operating system gives it a device token, an address for that app on that device. The app sends the token to your server. To notify the user, the server sends a message with the token to the platform's push service (APNs for Apple devices, FCM for Android, the browser's push service on the web), which delivers it and wakes the app if needed.

Permission is the gate: iOS has always asked, Android asks from version 13, and people who get too many alerts switch them off or uninstall. Messages can be visible notifications or silent data messages that update the app in the background, and delivery is not guaranteed. Services such as OneSignal and Expo's push service wrap the platforms behind one API.

Also called: push, mobile notifications, device token, notification permission

Open Push notifications as a page

Firebase Cloud Messaging (FCM)

ServiceFree
Google's free service for sending push notifications and data messages from a server to Android, iOS and web apps.

An app registers with FCM through the Firebase SDK and receives a registration token. Your server sends messages to the FCM HTTP v1 API, authenticated with a short-lived OAuth token from a service account, addressed to one token, a topic that devices subscribe to, or a condition across topics. On Android, FCM delivers through Google Play services; on iOS it forwards to APNs using an APNs key you upload; on the web it uses the browser's web push.

Messages come in two kinds: notification messages, which the system shows automatically when the app is in the background, and data messages, which your own code handles. Payloads are limited to 4 KB. The legacy API, which used a fixed server key, was switched off in 2024, so older tutorials need updating. Battery savers on some Android phones can delay delivery to apps that are not in use.

Pros

  • Free, with no charge per message
  • One API for Android, iOS and web
  • Topics and conditions make sending to groups simple

Cons

  • Delivery timing is not guaranteed, especially with aggressive battery savers
  • iOS still needs an Apple developer account and an APNs key
  • Ties your push setup to a Google project

Pick it when

  • Almost any Android app that needs notifications
  • One backend that notifies Android, iOS and web users

Skip it when

  • An iOS-only app that can talk to APNs directly

What it costs · Free

Free, with no charge per message. Other Firebase or Google Cloud services used alongside it are billed separately.

Firebase Cloud Messaging (FCM) pricing (opens in a new tab)Approximate, checked September 2026.

Also called: FCM, Firebase Messaging, GCM, Google Cloud Messaging

Open Firebase Cloud Messaging (FCM) as a pageOfficial site (opens in a new tab)

APNs

ServiceFree
Apple's service that delivers push notifications to iPhones, iPads, Macs and Apple Watches; every notification to an Apple device passes through it.

Your server opens an HTTP/2 connection to APNs and sends a JSON payload (up to 4 KB) addressed to a device token. It authenticates with a signed token (a JWT) made from a .p8 key in your Apple Developer account, which works for all your apps, or with older per-app certificates that must be renewed every year. There are separate sandbox and production environments, and a token from a development build only works with the sandbox.

APNs also carries silent background updates, incoming call alerts and Live Activity updates. Apple limits how often background pushes wake an app, to protect battery life, and users control alerts for each app in Settings. Services such as FCM and OneSignal still hand iOS notifications to APNs behind the scenes.

What it costs · Free

Free to send. Push credentials need an Apple Developer Program membership, which costs 99 USD a year.

APNs pricing (opens in a new tab)Approximate, checked September 2026.

Also called: Apple Push Notification service, Apple push notifications, .p8 key, push certificate

Open APNs as a pageOfficial site (opens in a new tab)

Web push

APIFree
The browser standard that lets a website send notifications to visitors who opted in, even after they have closed the tab.

A site registers a service worker and calls the Push API, and the browser asks the visitor for permission. The browser returns a subscription (a push service URL plus encryption keys) that the site stores on its server. To notify, the server sends an encrypted message to that URL, signed with the site's VAPID key pair; the browser maker's push service delivers it, and the service worker shows the notification.

It works in Chrome, Edge, Firefox and Safari. On iPhone and iPad (iOS 16.4 and later) it only works for sites the user has added to the Home Screen as a web app. Browsers expect the permission request to follow a click rather than appear on page load, and libraries such as web-push for Node.js handle the encryption and signing.

What it costs · Free

Free. Browser push services deliver messages at no charge; you only pay for the server that sends them.

Approximate, checked September 2026.

Also called: Push API, Web Push Protocol, VAPID, browser notifications

Open Web push as a pageOfficial site (opens in a new tab)

SMS and chat

SMS gateways

ServicePay as you go
A service that lets your server send text messages to phone numbers through the mobile networks, used for login codes, alerts and delivery updates.

Your server calls the gateway's API with a phone number and a message; the gateway routes it to the mobile operators and reports delivery back through a webhook or a status API. Messages are charged per segment: 160 plain characters, or 70 when the text uses emoji or Indian scripts. Twilio, Vonage, Plivo and Infobip work worldwide; MSG91, Gupshup and similar providers focus on India, often with ready-made OTP widgets.

India adds DLT (distributed ledger technology) registration under TRAI rules. A business registers as a principal entity on an operator's DLT portal (Jio, Airtel, Vi or BSNL), then registers its sender IDs (six-character headers) and every message template, with placeholders for the parts that change. Messages that do not match an approved template are blocked, links must be whitelisted, and since 2025 headers carry a suffix such as -S or -T that shows the message type.

The first portal charges a registration fee of about ₹5,000 plus GST. International routes skip DLT but deliver from random numbers. Prices vary widely: Twilio lists about $0.083 a message to India, while Indian providers charge a fraction of a rupee. Some apps send login codes over WhatsApp first and fall back to SMS.

Pros

  • Reaches any mobile phone, with no app or data connection needed
  • Familiar to users for login codes and alerts
  • Simple API with delivery reports

Cons

  • Every message costs money, unlike push or email
  • India requires DLT registration of the business, headers and templates
  • SMS codes can be stolen through SIM swaps or phishing
  • Delivery speed varies by operator and route

Pick it when

  • Login codes and alerts for people who may not have your app
  • Critical messages that must reach basic phones

Skip it when

  • Marketing blasts, where cost and spam rules add up
  • The user already has your app and a push notification would do

What it costs · Pay as you go

In India, providers such as MSG91 charge about ₹0.16 to ₹0.25 per SMS plus GST, falling with volume; Twilio lists about $0.083 per SMS to India. DLT registration is a separate fee.

SMS gateways pricing (opens in a new tab)Approximate, checked September 2026.

Also called: SMS API, bulk SMS, A2P SMS, DLT, Twilio, MSG91

Open SMS gateways as a page

WhatsApp Business Platform

ServicePay as you go
Meta's platform for businesses to send and receive WhatsApp messages from their own systems, such as order updates, login codes and support chats.

A business verifies itself with Meta, registers a phone number and uses the Cloud API, which Meta hosts, either directly or through a Business Solution Provider (BSP) such as Twilio, Gupshup, Interakt or MSG91 that adds a dashboard and its own fees. Messages to people who have not written in recently must use templates approved in advance, in three categories: marketing, utility (order and account updates) and authentication (login codes).

When a user messages the business, a 24-hour customer service window opens, and free-form replies are allowed inside it. Since July 2025, Meta has charged per delivered template message, with the rate set by category and by the recipient's country. From 1 October 2026, service replies are charged too, after 1,000 free a month per business number, and utility templates sent inside the window are no longer free.

People must opt in before a business messages them. New numbers start with a daily limit on how many people they can contact first, which rises while the number's quality rating stays good; blocks and reports lower that rating.

Pros

  • Two-way chat with buttons, images, documents and quick replies
  • Utility and login messages cost less than SMS in India
  • A verified business name and profile help people trust the sender
  • Delivery and read receipts show whether a message landed

Cons

  • Templates need Meta's approval before use
  • Marketing messages cost about ₹0.86 each in India
  • Only reaches people who use WhatsApp and have opted in
  • Meta can change prices each quarter

Pick it when

  • Order, delivery and appointment updates for customers in India
  • Login codes, with SMS as a fallback
  • Customer support that should feel like a normal chat

Skip it when

  • You want to message people who have not opted in
  • Bulk promotions on a tight budget

What it costs · Pay as you go

Charged per delivered template by category and country. India: about ₹0.86 per marketing message and ₹0.115 per utility or authentication message; from October 2026 service replies cost ₹0.115 after 1,000 free a month.

WhatsApp Business Platform pricing (opens in a new tab)Approximate, checked September 2026.

Also called: WhatsApp Business API, WhatsApp Cloud API, WABA, message templates, BSP

Open WhatsApp Business Platform as a pageOfficial site (opens in a new tab)

Telegram bots and Discord webhooks

ServiceFree
Free ways to post automatic messages into a Telegram chat or a Discord channel, handy for order alerts, sign-up pings and error reports sent to a team.

A Telegram bot is created by messaging @BotFather, which returns a token; your server then calls the Bot API over HTTPS (sendMessage with a chat id) to post into a private chat, group or channel. Bots can only message people who have started a chat with them first, and Telegram asks bots to stay under about 30 messages a second overall and 20 a minute in any one group.

A Discord webhook is a secret URL created in a channel's settings; posting JSON to it (text, embeds, a name and an avatar) drops a message into that channel with no bot account needed. Slack's incoming webhooks work the same way. They suit internal alerts rather than customers: anyone holding the URL or token can post, so keep it in environment variables, and expect rate limits during bursts.

What it costs · Free

Free. Telegram's Bot API and Discord webhooks cost nothing, within their rate limits.

Approximate, checked September 2026.

Also called: Telegram Bot API, Discord webhooks, Slack incoming webhooks, BotFather

Open Telegram bots and Discord webhooks as a pageOfficial site (opens in a new tab)

Side by side

Differences

How the options in this area compare on the questions that usually decide the choice.

Resend vs SendGrid vs Amazon SES vs Postmark

Open as a page: Resend vs SendGrid vs Amazon SES vs Postmark

Four common ways to send email from an app. All offer an API and SMTP and help you set up SPF and DKIM; they differ in price, tooling and how much work they leave to you.

CompareResendSendGridAmazon SESPostmark
What it isDeveloper-first email APILarge email platform owned by TwilioAWS's low-cost sending serviceEmail service focused on app mail
Best forJavaScript apps and small teamsApp mail plus marketing at scaleHigh volume, especially on AWSLogin codes, resets and receipts
Free allowance3,000 emails a month (100 a day)60-day trial, 100 emails a dayNone of its own; AWS credits for new accounts100 emails a month for testing
Entry paid plan$20 a month for 50,000 emailsEssentials from $19.95 a monthAbout $0.10 per 1,000 emails (à la carte)From $15 a month for 10,000 emails
Setup effortLow: DNS records and an API keyModerate, with account checksHigher: sandbox, IAM and event wiringLow, after account approval
ToolingLogs, webhooks, React EmailTemplates, Inbound Parse, marketing toolsBasic console; extras through AWSTemplates, 45-day history, inbound
Marketing emailBroadcasts, billed by contactsMarketing Campaigns, billed separatelyPossible, with no campaign toolsBroadcast streams in the same account
Watch out for100-a-day cap on the free planNo permanent free planSandbox until AWS approves youHigher price per extra email

How to choose

  • Pick Resend for a JavaScript or TypeScript app that needs email working quickly, with a free plan that covers small projects.
  • Pick Postmark when password resets and receipts must arrive fast and be easy to trace.
  • Pick Amazon SES for large volumes, especially on AWS, and accept more setup work.
  • Pick SendGrid when one account must cover both app email and marketing campaigns at scale.

Push vs email vs SMS vs WhatsApp

Open as a page: Push vs email vs SMS vs WhatsApp

The four main ways an app reaches people. They differ in cost, reach and how quickly people notice, so most products mix them by message type.

ComparePushEmailSMSWhatsApp
ReachesPeople with your app or site who allowed itAnyone with an email addressAny mobile numberWhatsApp users who opted in
Cost per messageFreeFractions of a centAbout ₹0.16 to ₹0.25 in IndiaAbout ₹0.115 to ₹0.86 in India
PermissionA system prompt the user acceptsConsent for marketing, not for receiptsConsent for promotions; DLT in IndiaOpt-in, plus approved templates
SpeedSeconds, when the device is onlineSeconds to minutesSeconds, varying by operatorSeconds, when the phone is online
Rich contentTitle, text, image and buttonsFull HTML and attachmentsPlain text onlyImages, documents, buttons and replies
Best forLive updates and remindersReceipts, resets and long contentLogin codes and critical alertsOrder updates and support chats
Watch out forPeople switch it off if overusedSpam filters and DNS recordsCost, DLT rules and SIM-swap riskTemplate approval and changing prices

How to choose

  • Use push for timely updates to people who have the app, since it costs nothing per message.
  • Use email for receipts, password resets and anything long or worth keeping.
  • Use SMS for login codes and critical alerts that must reach any phone, and budget for every message.
  • Use WhatsApp for order updates and support chats in markets such as India, where it is widely used.

Crafted in the dark. Shipped to the world.

Tell us what you are building. You get a private project space with a proposal and a line-by-line quote within a day.