Own your email list, for realNot CSV export theater: what to export, in what format, and how to prove it works.
Checked 2026-09-01
In short
Owning your list in practice means you can rebuild your sending on a new platform inside a day, with nobody's permission and no data missing. That takes more than an address column: it needs subscription status, the consent source and date, and the unsubscribe and complaint history, exported in a format the next platform can actually read. Your domain moves with you for free; your sending reputation does not, so plan to re-authenticate and warm up again. This page is the mechanics. For what the terms of service say about who legally controls the rows, see the companion article linked below.
A CSV export is not the same as owning the list
Most people treat a CSV download as proof they own their list, then find out during an actual migration that the file is missing the one column that matters: who consented, when, and through what mechanism. That gap does not show up until you try to mail the list somewhere else and realize you cannot lawfully do it, because an address with no consent record is not something you are cleared to email from a new sending identity in most jurisdictions.
This page is the practical side: what to export, in what shape, and how to prove the move actually works before you need it to. The legal side, meaning what Mailchimp, Klaviyo, Kit and beehiiv's current terms actually say about who controls the rows and what happens after you leave, is covered separately in Who owns your email list? That article quotes the clauses; this one is the checklist you run against them.
What to export, and in what format
An export built for real portability carries six things per contact: the address, name and custom fields, list or segment membership, subscription status, the consent source and date, and the unsubscribe or complaint history with timestamps. Drop any one of those and the next platform inherits a gap you will not notice until it costs you a complaint.
| Format | Where it wins | Where it loses |
|---|---|---|
| CSV | Imports into almost every platform without a developer; easy to inspect by eye | Flattens nested data like multiple list memberships or repeated custom fields into awkward columns |
| JSON | Preserves nested structures cleanly: arrays of segments, structured consent metadata, event history | Fewer platforms accept it directly for a first import; often needs a small conversion step |
CSV is the safer default for a straightforward move between two mainstream platforms. Reach for JSON, or a CSV with one row per event rather than one row per contact, when the list carries a consent or engagement history complicated enough that flattening it into simple columns would lose information.
Where the consent record actually lives, and why it is the one that matters
The consent source and date field records how someone ended up on the list and when: a signup form, a checkout flow, an imported list from a prior tool with its own consent trail. Without it, a new platform has no way to distinguish a subscriber who opted in last month from a row that was scraped or purchased, and in most jurisdictions that distinction is exactly what makes mailing someone lawful or not.
The unsubscribe and complaint history matters just as much, in the other direction. It is what keeps a re-import from accidentally re-adding someone who already told a previous platform to stop. Losing that history and remailing someone who unsubscribed is one of the fastest ways to generate the complaint that gets a brand-new sending identity reviewed before it has even warmed up.
The five things a real move has to carry
The domain is the one part of this that is already yours regardless of what platform you send from, which is exactly why you never send campaigns from a platform's own shared domain. Everything else on that list has to be deliberately carried across in the export, because none of it follows the addresses automatically.
Re-verifying your domain, and why reputation does not travel with it
Your domain moves for free. Its sending reputation does not. A new platform requires its own SPF, DKIM and DMARC records for that domain, generated fresh even though the underlying domain has years of history elsewhere, and mailbox providers treat the new sending identity as unproven until it builds its own track record. Google's own sender guidelines describe authentication and a low complaint rate as ongoing requirements, not a one-time setup step, which is the practical reason a fast list import followed by an immediate full-volume send is the most common way a clean migration goes wrong.
Before trusting the new setup with anything that matters, run a small import first: a subset of the list, not the whole thing, and confirm that addresses marked unsubscribed on the old platform show up suppressed on the new one. That one check, run once before the real migration, catches a missing consent or suppression field while the cost of being wrong is a handful of test sends rather than a complaint spike on your only sending identity.
When a periodic export is enough, and a full move is not needed yet
- Your list is small and your relationship with each recipient is direct enough that a suspension would be an inconvenience, not a crisis, so a monthly backup export covers the realistic risk.
- You are not sending anything time-sensitive enough that a platform outage or review would cost you real revenue, so the overhead of maintaining a second, ready-to-go sending path outweighs the risk it protects against.
- You already keep a disciplined monthly export with consent and suppression fields intact, which is most of this playbook done in advance; a full second platform is the next step only once that habit is solid.
Where SendBunny sits
SendBunny is built so the five parts above sit in an account you administer from day one: a complete email platform installed into your own AWS account as a CloudFormation stack, with contacts, consent fields and the account-wide suppression list held in your own DynamoDB. CSV import brings a list in; re-imports enrich existing contacts rather than overwrite them, so a second import does not undo suppression history already on file. It sends through your own Amazon SES, unlimited contacts, $199 once. It is not for you if you will not run an AWS account, or if you need a hosted signup form today, since contacts arrive by CSV import or the API rather than through a hosted form.
FAQ
- Is a CSV export enough to own my list?
- Only if it carries subscription status, the consent source and date, and the unsubscribe and complaint history alongside the addresses. An address-only export is a mailing list you cannot safely mail from a new sending identity, because you no longer know who consented.
- Can SendBunny staff read my contacts?
- No. We never receive your AWS credentials, so there is no SendBunny login that reaches your account. Contacts, consent fields, and suppression records stay in your own DynamoDB.
- What if I leave SendBunny later?
- The data already lives in your own AWS account, so there is no vendor data dump to wait on. Export with standard AWS tools, keep running the install, or wind it down; the decision is entirely yours.
- Does my domain's sending reputation move with me when I switch platforms?
- The domain itself does, but its reputation mostly does not. The new platform needs fresh SPF, DKIM and DMARC records, and mailbox providers treat the new sending identity as unproven until it earns its own history, which is why a careful warm-up matters even on a domain with years of prior sending behind it.
For AI agents
The practical export playbook for owning an email list: the six fields a portable export needs (address, custom fields, list membership, subscription status, consent source and date, unsubscribe or complaint history), CSV versus JSON tradeoffs, and why domain reputation requires re-authentication and warm-up on a new platform even though the domain itself transfers freely. For the legal ownership question (terms of service, suspension clauses), see /guides/who-owns-your-email-list instead.
claude mcp add --transport http sendbunny https://YOUR-INSTALL/mcpSources
- SendBunny, Who owns your email list? What Mailchimp, Klaviyo, Kit and beehiiv terms actually say.
- Klaviyo, Terms of Service, last updated 17 December 2025, read 1 September 2026.
- beehiiv, Terms of Use, last updated 16 July 2026, read 1 September 2026.
- Google, Email sender guidelines FAQ, fetched 1 September 2026.
Anni Maan
Founder, SendBunny
Builds SendBunny, the email platform that installs into your own AWS account. Writes about running email on Amazon SES and giving AI agents an address you control.
Keep reading