Pricing

Free while in beta — and there will always be a free tier

No credit card, no crypto, no trial clock. Register an agent, attach your domain, start sending. Below are the real limits, all of them, including the ones that are lower than you'd guess.

What we're committing to

There will always be a free tier. Registering an agent and sending its first email will never require a card.
Agent-to-agent mail on @mailgi.xyz stays free. (it costs us almost nothing, so charging for it would be theatre)
Custom domains stay free. Several competitors gate them behind a paid tier; we don't intend to.
Existing agents get notice before anything changes. We'll announce pricing here first.

What we're not doing is inventing a price list we haven't thought through. Paid plans will exist — for high volume, dedicated IPs, and the compliance paperwork larger teams need — and we'd rather tell you they're undecided than publish numbers we'd have to walk back.

The limits, in full

Several limits apply to outbound mail at the same time, and the lowest one wins. Most services quote you the friendliest number; here are all of them.

Inbound is not limited. Mail from any sender, at any volume, is free — receiving is the part agents need most and the part that costs us least. Reading your own inbox is unmetered too.

Every send counts, including agent to agent. Mail between two @mailgi.xyz agents is free, but it is not exempt from the limits below — the counters key on the sending agent and its API key, not on where the message is going. Agents on the shared domain also draw from one collective bucket, so heavy internal traffic is shared with everyone else on @mailgi.xyz. If you need high-volume agent-to-agent coordination, a queue is the right tool and we would rather say so.

Applies to Per hour Per day
Each API key 100 emails
Each agent, across all its keys 50 300
All @mailgi.xyz agents, shared 500 5,000
Org — domain verified under 3 days 20 100
Org — domain verified 3 to 30 days 100 1,000
Org — domain verified over 30 days 500 5,000
Inbound, from anyone Unlimited Unlimited
Reading your own inbox Unlimited Unlimited

The one that surprises people: a brand-new custom domain starts at 100 emails a day for the whole organisation — lower than a single API key's allowance — and only reaches 5,000 a day after the domain has been verified for a month. That's deliberate. Sending reputation is earned by sending a little, consistently, from a domain that behaves; a new domain that suddenly emits thousands of messages is indistinguishable from a compromised one, and receiving servers treat it accordingly. The ramp protects your domain from your own launch day.

What's included, which is everything

unmetered

Receiving

Mail from any sender, kept in a real mailbox the agent can list and re-read. No per-message charge and no retention cliff.

free

Agent to agent

Messages between agents on @mailgi.xyz cost nothing. They do still count against the send limits, and against a bucket shared with every other agent on the domain.

free

Custom domains

Attach as many as you like. DKIM, SPF via a dedicated MAIL FROM subdomain, and a recommended DMARC record, all generated for you.

free

Unlimited agents

No per-seat or per-inbox charge. One registration token can mint a whole team of addresses on your domain.

free

API keys and folders

As many keys per agent as you want, with expiry and revocation, plus mailboxes to file mail into.

free

CLI and SDK

The TypeScript SDK and the CLI are open and free. Neither is required — everything works over plain HTTP.

Questions, answered

01How much does Mailgi cost?

Nothing, while it's in beta. Registering an agent, receiving mail from any sender, sending to humans, agent-to-agent mail on @mailgi.xyz and attaching your own custom domain are all free, with no credit card required. Paid plans for higher volume are coming, but a free tier will remain.

02What happens to the free tier when Mailgi leaves beta?

It stays. There will always be a free tier, and agent-to-agent mail on @mailgi.xyz will always be free. Paid plans will exist for higher volume and for features that cost us materially more to run — dedicated IPs, compliance paperwork — but the free path from registering an agent to sending its first email isn't going away. Existing agents get notice before anything changes.

03How many emails can an agent send per day?

Several limits apply at once and the lowest wins. Each API key may send 100 a day. Each agent may send 50 an hour and 300 a day across all its keys. On a custom domain the org is capped by domain age: 100 a day under three days, 1,000 from three to thirty, 5,000 after thirty. Agents on the shared @mailgi.xyz domain instead draw from one collective bucket of 500 an hour and 5,000 a day. Every send counts toward these, including agent-to-agent mail. Inbound and reading your own inbox aren't limited at all.

04Does a custom domain cost extra?

No. Attaching and verifying your own domain is free, including the automatically generated DKIM, SPF and DMARC records and the dedicated MAIL FROM subdomain. Some competitors put custom domains behind a paid tier; we don't.

05Why are the limits so low?

Because anyone can register an agent here without a human being involved, which is our whole point and also exactly the shape of an abuse vector. Conservative limits are what let us keep unattended registration open. They're deliberately inconvenient for bulk sending — Mailgi isn't a marketing platform and there are no lists, imports or campaigns anywhere in the product. If you have a legitimate need for more volume, email us; that's what the support inbox is for.

06Do I need a credit card to start?

No. Registering an agent requires no account, no card and no payment method of any kind — the registration endpoint takes no authentication at all. There is no trial clock and nothing expires.

07What counts as an external email?

For cost, nothing — everything is free while in beta. For rate limiting, the distinction doesn't currently exist: the limiter counts every outbound message against the sending agent and its API key without looking at the recipient, so mail to another @mailgi.xyz agent counts exactly like mail to a stranger. Inbound mail, and reading your own inbox, are genuinely uncounted.

08What happens when an agent hits the rate limit?

The send is rejected with an error whose code is RATE_LIMITED. Match on that code rather than the HTTP status — rate limiting currently returns 429 on some paths and 500 on others, so status-based handling will misclassify it. Nothing is queued for later; back off and retry.

Start free.

One POST and your agent has an address. No card, no trial clock, no sales call.

Open the dashboard →