Updated on October 29, 2026
WhatsApp and email marketing do not compete for the same job. Email is good for long content, frequent sends and a low cost per message; WhatsApp is good for immediate action, such as paying an invoice, confirming an appointment or answering a question, and it costs money per delivered message. The strategy that tends to work best uses both: email to inform, WhatsApp to get the customer to act at the right moment.
This article compares the channels on cost, consent, deliverability, format, frequency and metrics, and shows an example of a combined customer journey.
Side-by-side comparison
| Criterion | Email marketing | WhatsApp (official API) |
|---|---|---|
| Cost per send | Depends on your email platform’s plan | Meta’s rate per delivered message, by category and country |
| Consent | Required by privacy laws and mailbox provider rules | Required by privacy laws and WhatsApp policy |
| Delivery | Depends on domain authentication and reputation | Depends on opt-in, number quality and Meta’s limits |
| Format | Long, with HTML, images and many links | Short, with header media and a few buttons |
| Prior approval | No | Meta-approved template to start a conversation |
| Tolerated frequency | Higher; email is read in batches | Lower; every message triggers a phone notification |
| Conversation | Email replies, rarely used | Natural replies that open a 24-hour customer service window |
| Metrics | Delivery, clicks, unsubscribes; unreliable opens | Sent, delivered, read, failed; replies and button clicks |
Cost per send
On WhatsApp, the cost is transparent and high compared with email. Meta charges per delivered message, by category and recipient country. As an example, for recipients in Brazil since October 1, 2026, a marketing template costs BRL 0.3217 (Brazilian reais) and a utility template BRL 0.0350. A marketing campaign that reaches 10,000 people in Brazil costs BRL 3,217.00 in Meta fees alone.
With email, cost depends on the platform: some charge by the number of contacts in your list, others by send volume. To compare, divide your plan price by the number of emails you send per month. That is your cost per email.
The practical consequence: reserve WhatsApp for messages that justify the cost, such as recovering a sale, a payment notice or a launch with a short deadline. A weekly newsletter on WhatsApp rarely pays for itself. To estimate cost before sending, see how much a WhatsApp campaign costs.
Want to try it while you read? Create a Vectalk account and send your first message through the official API. Create free account →
Consent (opt-in)
Both channels require consent from your audience. In Brazil, the General Data Protection Law (LGPD, Law No. 13,709/2018) requires a legal basis to process personal data, and consent is the most common one in marketing; other countries have their own laws, such as GDPR in Europe. This article is not a substitute for legal advice; for Brazil, details are in LGPD and WhatsApp.
Beyond the law, each channel has its own rules:
- WhatsApp: the Business Messaging Policy requires that the person gave you their number and agreed to receive messages from your business, and that opt-out requests are honored, even when made outside WhatsApp.
- Email: Gmail’s guidelines for senders of more than 5,000 messages a day require marketing messages to support one-click unsubscribe and include a visible unsubscribe link in the body.
One point that changes operations: email opt-in does not automatically cover WhatsApp. Ask for consent per channel and record where it came from. The guide how to build a WhatsApp opt-in list shows how.
Deliverability
Email delivery depends on your domain proving it is really you and on a good reputation. Per Gmail’s bulk sender guidelines:
- set up SPF and DKIM for your domain;
- set up DMARC (the policy can start at
none); - support one-click unsubscribe in marketing messages;
- keep the spam rate reported in Postmaster Tools below 0.30%; Google recommends staying below 0.10%.
A minimal DMARC record to start monitoring:
_dmarc.yourcompany.com. TXT "v=DMARC1; p=none; rua=mailto:dmarc@yourcompany.com"
WhatsApp has no spam filter or promotions tab. The message lands on the phone as a notification. But there are other barriers:
- Account messaging limit: new business portfolios start at 250 unique recipients per 24 hours outside the customer service window, and the limit grows with verification, volume and quality.
- Per-user marketing limit: Meta may not deliver a marketing message to someone who already received many from several businesses (error
131049). See why your WhatsApp marketing message was not delivered. - Quality: blocks and reports pause templates and can restrict the account.
Format
Email can hold a full article, a 20-product catalog or a comparison table. WhatsApp needs a short message: one line of context, the offer or notice, and a button. Header media (image, video or document) helps, but the text has to fit on a phone screen. Structure tips are in how to write a WhatsApp marketing message.
Frequency
There is no official number of “acceptable” emails or messages per week. What exists are signals:
- on email, rising unsubscribes and spam complaints;
- on WhatsApp, rising blocks, a dropping read rate, more
131049errors and paused templates.
In practice, WhatsApp tolerates less frequency than email, because every message reaches the phone. A healthy journey leaves most touchpoints to email and saves WhatsApp for decisive moments. The topic is covered in WhatsApp sending frequency.
Metrics
- Delivery and bounces: reliable.
- Clicks: reliable, with UTM tags.
- Opens: unreliable. Opens are tracked with an invisible image, and some email clients load images automatically, counting opens that never happened, while others block images and hide real opens.
- Per-message status:
sent,delivered,readandfailedarrive by webhook, with an error code on failure. - Reads: the
readstatus means the message was displayed on the user’s device; treat it as a sign of attention, not of interest. - Replies and button clicks: arrive as messages on the webhook.
- Link clicks: use UTM tags on the URL button; see dynamic URL buttons with UTM.
Do not compare “email open rate” with “WhatsApp read rate” as if they were the same metric. Compare what matters: conversion per dollar spent on each channel.
Example: a combined journey
An online store that accepts bank slips and instant payments, for an unpaid order. (In Brazil, boleto is a bank payment slip and PIX is the central bank’s instant payment system.)
| Moment | Channel | Message | Why |
|---|---|---|---|
| Order placed | Full order summary, items, address, payment slip attached | Long content for reference | |
| Order placed | WhatsApp (utility) | “Your order #123 is registered. Pay by PIX:” + button | Immediate action on the phone |
| 24 h unpaid | Reminder with the slip and payment options | Low cost, reinforcement | |
| 48 h unpaid | WhatsApp (utility) | Due date reminder + payment button | Decisive moment |
| Payment confirmed | WhatsApp (utility) | Confirmation and delivery estimate | Expected notification |
| 7 days later | Product content, care tips, related products | Long content, no per-message cost | |
| Future offers | Email to everyone; WhatsApp (marketing) only for opted-in, engaged contacts | Weekly offer | Cost and quality control |
Payment recovery on WhatsApp is covered in recovering PIX, boleto and abandoned carts.
A simple routing rule for your system:
function pickChannel(event, contact) {
const urgent = ['payment_pending', 'due_today', 'appointment_tomorrow'].includes(event.type);
const whatsappOptIn = contact.optins.includes('whatsapp');
if (urgent && whatsappOptIn) return ['whatsapp', 'email'];
if (event.type === 'offer' && whatsappOptIn && contact.engaged30d) return ['whatsapp'];
return ['email'];
}
How to do this with Vectalk
Vectalk is a proxy for Meta’s official WhatsApp Cloud API: your system or automation tool sends templates through Vectalk, with the same payload as Meta, and receives statuses on your webhook. In the dashboard you create templates (with the Template Library), connect the number, configure webhooks and review logs. Billing is prepaid: each delivered message is deducted from your balance, and you do not add a card on Meta.
Vectalk does not send email and has no campaign tool or CRM in its dashboard. The journey lives in your own system, email platform or automation tool, which calls the Vectalk API when a step happens on WhatsApp. See the official WhatsApp API guide, the documentation, or create your account. For high-volume sends, the walkthrough is in WhatsApp bulk messaging with the official API.
Frequently asked questions
Does WhatsApp replace email marketing?
No. The channels do different jobs. Email is better for long content and frequent, low-cost sends; WhatsApp for short messages that call for immediate action.
Can I message my newsletter subscribers on WhatsApp?
Only if they also consented to receive WhatsApp messages. Email opt-in does not automatically extend to another channel.
Which has the better open rate?
They cannot be compared directly. Email opens are tracked by a pixel and are unreliable; a WhatsApp read means the message was displayed on the device, not that the person was interested. Compare conversion and revenue per dollar spent.
How much does a WhatsApp marketing message cost?
It depends on the recipient’s country. For recipients in Brazil, Meta charges BRL 0.3217 per delivered marketing message since October 1, 2026. Utility and authentication cost BRL 0.0350.
Do I need SPF, DKIM and DMARC for email marketing?
If you send more than 5,000 messages a day to Gmail accounts, yes: Google’s guidelines require all three, plus one-click unsubscribe on marketing messages.
Official sources checked on October 29, 2026: Google: email sender guidelines, WhatsApp Business Messaging Policy, Cloud API pricing, messaging limits, Law No. 13,709/2018 (LGPD), Vectalk documentation.
Put your business on the official WhatsApp
Create your account, connect your number to the official API (you can keep the app with coexistence) and start serving customers and sending messages.
