when Mailgun is the right move.
Mailgun is a strong fit for teams that want mailgun teams separating transactional templates and suppressions from lifecycle email operations. The migration risk is rarely the CSV — it is the automation graph: triggers, delays, branches, template references, and consent state. mailexodus puts a portable schema in the middle so those objects are inspected before they become Mailgun objects.
// inboundwhat Mailgun receives.
- +subscribers
- +lists
- +custom fields
- +suppressions
- +templates
- ?destination mappings still need final operator review
- xtags
- xsegments
- xcampaigns
- xautomations
Partial automated adapter
Mailing lists map to lists. Members map to subscribers. Member vars map to custom attributes. Suppressions map to suppression records. Templates map to transactional templates
Mailgun does not provide marketing campaign or automation export coverage Dry-run the report first, then approve writes when the counts and destination gaps look right.
plan the move to Mailgun.
- Authenticate your sending domain in Mailgun (SPF, DKIM, DMARC) and plan a warmup window — sender reputation is earned here, it does not transfer.
- Bring consent and suppression state across first, so unsubscribes and bounces are honored from the first send in Mailgun.
- QA migrated templates and segments inside Mailgun, and send seed tests before any live campaign.
- Keep your current platform active until in-flight automations finish and Mailgun is warmed and trusted.
start with the route playbook.
The agent prompt returns a route report with source exports, destination imports, skipped objects, and manual-review tasks. When it looks right, wire credentials and approve writes from a controlled machine.
destination coverage
npx mailexodus@latest info mailgun
agent playbook
Ask mailexodus for a migration_playbook with to=mailgun
Use mailexodus skill: your source → Mailgun playbook