Compare
AgentiSend vs Mailgun
Yes, for transactional email an agent sends through an API. A Free plan that does not expire: 1,000 emails a month, 100 a day, 3 domains, no card. Then plans from $9 a month (Starter, 30,000 emails). No plan daily cap; delivery paced per inbox provider. Or 20% off paid yearly. It is not a replacement for a product that is ahead on the rows marked in the other column.
Pick Mailgun when you need to keep data in the EU, want inbound routes on the free plan, or want a dedicated IP included at 100,000 emails; pick AgentiSend when an agent holds the key and you want a per-key budget and a kill switch. The figures below are from Mailgun pages fetched on 28 September 2026 and from this product's pricing table and published API.
Moving across? How a migration from Mailgun actually goes.
| What matters | AgentiSend | Mailgun |
|---|---|---|
| Trying it before paying | A Free plan that does not expire: 1,000 emails a month, 100 a day, 3 domains, no card. Then plans from $9 a month (Starter, 30,000 emails). No plan daily cap; delivery paced per inbox provider. Or 20% off paid yearly. | Free is 100 emails a day, 1 custom domain, 1 day of log retention, 1 inbound route and 2 API keys. |
| Price at 10,000 and 100,000 | $22 a month on Pro, which is $0.22 per 1,000. Sending pauses at the inclusion unless an owner turns overage on, up to a ceiling they set. | Basic starts at $15 a month for 10,000 emails and keeps 1 day of logs. Foundation is $35 for 50,000 after a month at $0. Scale is $90 for 100,000, with 30 days of logs. |
| A spending limit per key | Every key is created with a send budget. The send path refuses with agent_budget_exceeded when it is spent, and a key cannot raise its own. The plan inclusion is a second ceiling (plan_limit_reached). | A per-key send budget is not on the pricing page. Free and Basic list 2 API keys. |
| A retry never sends twice | Idempotency-Key is accepted on every endpoint that changes something and remembered for 7 days. | An idempotency key is not documented on the pricing page or the webhook-signing page. |
| What a refusal tells you | Every refused request carries code, message, fix (the call that repairs it), docs_url and retryable. | A fix field naming the next call is not on the pricing page or the webhook-signing page. |
| How long the log keeps a message | 7 days on Free, 30 on Starter, 90 on Pro, 180 on Scale. It is part of the plan and there is no add-on to buy. | Log retention is 1 day on Free and Basic, 5 days on Foundation, and 30 days on Scale. Scale lists message retention up to 7 days. |
| Signed webhooks | Signed HTTP webhooks. POST /webhooks/{id}/replay re-sends a range you name, and a delivery that ran out of retries is listed as dead_lettered. | Event webhooks carry a token, a timestamp and an HMAC-SHA256 signature over the timestamp concatenated with the token, checked with the webhook signing key. |
| Receiving mail | No inbox object and no inbound mail yet; AgentiSend receives only bounces and complaint reports for mail it sent. | Free includes 1 inbound route and Basic includes 5. Foundation and Scale list full inbound routing. |
| Where the data sits | Not offered. Customer data is processed in the United States. | The pricing page says you can send through the US or the EU from a single account, and that data can remain in the region you choose. |
| A dedicated address | Dedicated IP on request. Once one is assigned, the published ramp is 20% of volume to day 7, 40% to day 14, 60% to day 21, 80% to day 28, then all of it, on GET /dedicated-ips/ramp. | One dedicated IP is included at 100,000 emails and on Scale. Additional IPs are $59 a month. |
Sources
- Trying it before paying. Ours: the published API, /pricing and /security. Theirs: https://www.mailgun.com/pricing/ (captured 2026-09-28).
- Price at 10,000 and 100,000. Ours: the published API, /pricing and /security. Theirs: https://www.mailgun.com/pricing/ (captured 2026-09-28).
- A spending limit per key. Ours: the published API, /pricing and /security. Theirs: https://www.mailgun.com/pricing/ (captured 2026-09-28).
- A retry never sends twice. Ours: the published API, /pricing and /security. Theirs: https://documentation.mailgun.com/docs/mailgun/user-manual/webhooks/securing-webhooks (captured 2026-09-28).
- What a refusal tells you. Ours: the published API, /pricing and /security. Theirs: https://documentation.mailgun.com/docs/mailgun/user-manual/webhooks/securing-webhooks (captured 2026-09-28).
- How long the log keeps a message. Ours: the published API, /pricing and /security. Theirs: https://www.mailgun.com/pricing/ (captured 2026-09-28).
- Signed webhooks. Ours: the published API, /pricing and /security. Theirs: https://documentation.mailgun.com/docs/mailgun/user-manual/webhooks/securing-webhooks (captured 2026-09-28).
- Receiving mail. Ours: the published API, /pricing and /security. Theirs: https://www.mailgun.com/pricing/ (captured 2026-09-28).
- Where the data sits. Ours: the published API, /pricing and /security. Theirs: https://www.mailgun.com/pricing/ (captured 2026-09-28).
- A dedicated address. Ours: the published API, /pricing and /security. Theirs: https://www.mailgun.com/pricing/ (captured 2026-09-28).