Cloudflare’s email products are easy to mash together in a cost conversation. Email Routing (inbound) and Email Sending (outbound) do not share a meter.
Outbound: Paid + included + overage
Public sending requires the Workers Paid plan. The Email pricing page lists 3,000 included emails per account per month, then $0.35 per 1,000 (Cloudflare Email Service pricing). The $5/month Paid floor lives on Workers pricing, not the Email page — it still shows up on the invoice if you were on Free.
The Cloudflare Email Cost Calculator assumes you already pay Paid (Worker persona). Uncheck the toggle if Email Sending is the upgrade reason: 10,000 emails becomes $5 + $2.45 = $7.45 in the dated card.
Verified destinations
Sends to verified destination addresses are free and do not count toward the 3,000. Use the advanced toggle when that is the only traffic (transactional mail to your own inbox, staging, etc.).
What counts
Hard bounces count. API/suppression rejects do not. That matches Cloudflare’s published rules; if they change, the as-of date on the tool is your cue to override overage.
Inbound is a different sentence
Routing can be unlimited mail. The Worker that parses the message is still Workers usage. This cluster does not estimate CPU — link out to Workers docs if that is the real cost center.
Indie comparison: Cloudflare Email vs Resend for a Worker app. Full table: Email Cost Calculator.