Compare
vs EmailFlare

Flowmails vs EmailFlare

Open-source Cloudflare Workers email routing — forwards mail to a webhook. This page is a side-by-side on the parts that matter when you're considering a switch — data residency, pricing, and the parts of each stack that show up in a real migration.

At a glance

Three sentence compare.

Pricing shape

EmailFlare itself is free / open source — you only pay Cloudflare's free tier (Workers + Email Routing). Flowmails' Base plan is also $0 forever with the same Cloudflare free tier underneath; Pro adds the dashboard, AI, and route tables for $9.9 / month.

Setup shape

EmailFlare is a single Worker you deploy to your Cloudflare account and point at a webhook URL. Flowmails provisions the Worker, D1, and R2, then ships a dashboard + REST surface on top — no webhook URL to wire, just the dashboard.

Best fit

EmailFlare: developers who only need to forward inbound mail to a single endpoint and want to write the rest in their own Worker. Flowmails: teams that need an inbox, an API, webhooks, and a UI without writing all the storage code themselves.

Feature matrix

EmailFlare vs Flowmails, line by line.

FeatureEmailFlareFlowmails
Data residencyEmailFlare: no storage, forwards to your endpointYour D1 in your Cloudflare account
Inbound routingYes (catch-all + per-address)Yes (route tables, literal matchers)
Inbox storageNo (your code receives the raw MIME)Yes — D1 rows per message
REST API to read / sendNoYes
Outbound send via Email ServicesNoYes
Dashboard UINoYes
WebhooksInbound: yes (raw MIME POST)Inbound + outbound: structured JSON events
Per-email pricingNo (Cloudflare free tier only)No (Cloudflare free tier on Base)

Integration parity

SDK and runtime compatibility.

EmailFlare exposes the inbound email as a POST to your webhook URL with the raw MIME body. Flowmails exposes the same Cloudflare primitives plus a typed REST API (`GET /api/email/list`, `POST /api/email/send`) — your Worker talks REST instead of parsing raw RFC 822.

Migrating

How to switch from EmailFlare to Flowmails.

    01

    Inventory what your webhook handler does today

    EmailFlare's webhook hands your Worker the raw MIME body. If your handler currently parses RFC 822, stores parsed fields in your own database, and exposes a small API on top, Flowmails replaces all three layers with a managed one — your worker code collapses to a few REST calls.

    02

    Provision Flowmails on the same zone

    Connect your Cloudflare account to Flowmails and pick the same zone EmailFlare was deployed on. Flowmails takes over the catch-all rule that EmailFlare wrote; your old Worker can stay deployed (unused) until you've smoke-tested Flowmails.

    03

    Swap your worker code for Flowmails REST calls

    Replace the raw-MIME parsing in your Worker with `fm.messages.list()` / `fm.messages.get()` and `fm.send()` from the Flowmails SDK. The Cloudflare primitives (Email Routing, Email Services, D1, R2) are the same ones EmailFlare used — Flowmails just adds the application layer on top.

Other comparisons

All Flowmails vs pages