Migrate from listmonk to MailCheap
Export your subscribers from listmonk, import the file as it is, and send. MailCheap reads listmonk's statuses, so people who left stay out.

“Moved to MailCheap. Cancelled beehiiv / ActiveCampaign same weekend. $380/mo now $19.”
Bruce van Zyl@brucevanzyl
- 1
Export your subscribers from listmonk
- 1.1In listmonk, open Lists. Next to your list, click Confirmed, so the subscribers page shows only them.
- 1.2Click Export above the list and confirm. In listmonk 7, tick the box at the top, select them all, then pick Export.
- 1.3listmonk downloads subscribers.csv.
On a single opt-in list, readers stay unconfirmed and still get your campaigns: export its Unconfirmed ones the same way, and import both files.
Leave out Unsubscribed. listmonk's file says who it blocklisted, not who left one list, so they would come in as active.
subscribers.csvExported from listmonk - emailEmail
- statusStatus
- created_atSignup date
- 2
Import the file into MailCheap
- 2.1In MailCheap, open Contacts, click Add contacts and pick Import a CSV.
- 2.2Choose the file. MailCheap shows how many rows it read, and their statuses.
- 2.3Check Other columns: custom fields go into new fields on their own, the platform's own columns stay out.
- 2.4Tick "These people agreed to receive my emails", then click Import.
MailCheap leaves out invalid addresses, role addresses (info@, support@…), throwaway inboxes, duplicates and addresses that bounced or complained before.
Import contacts
subscribers.csv9,412 unique valid of 9,517 rowsactive 9,108unsubscribed 251bounced 53These people agreed to receive my emails
After the import
228 left out
- invalid address41
- role address (info@, support@…)87
- throwaway inbox22
- duplicate in the file64
- unsubscribed, bounced or complained before14
- 3
Send from your domain, or ours
- 3.1On Domains, add your domain and create the DNS records MailCheap shows: DKIM and a return path, plus DMARC if you have none.
- 3.2Until then, or for good, send from hello@your-newsletter.mailcheap.ai: it's set up for you, with no DNS to touch.
news.yourdomain.comReady
- CNAMEDKIM
- CNAMEReturn path
- TXTDMARC
Or hello@your-newsletter.mailcheap.aiReady
- 4
Send your first issue
- 4.1On Campaigns, write it in the editor, or ask your AI agent to.
- 4.2Add your postal address in the newsletter settings: every issue needs one.
- 4.3Send yourself a test, then send or schedule it.
Your first send to imported contacts goes out in steps: 2% first, then 5% more 30 minutes later, then the rest, while bounces and complaints stay low.
From a domain you already send newsletters with, everyone gets your first issue right away. A new domain sends to its first 2,000 Gmail readers on its first day and to the others the next day, since Gmail is careful with domains it doesn't know.
Notes from a quiet monthSending in steps
- 2% firstGoes out now
- 5% more30 minutes later, with bounces under 2.5%
- The rest30 minutes after that
Comes with your list
- Every email address
- Who unsubscribed, bounced or complained: they get nothing
- First names, tags and custom fields
- Signup dates, opens and clicks, when the export has them
Stays on listmonk
- Past issues and their stats
- Templates
- Transactional emails
- Other lists and their opt-in settings
Ready to move?
Questions about your export? Chat with us from your dashboard.
Other migration guides
- From beehiiv
- From Substack
- From Mailchimp
- From Kit
- From MailerLite
- From Buttondown
- From Ghost
- From EmailOctopus
- From Sendy
listmonk is a trademark of its owner, shown here to name the product you move from. MailCheap isn't affiliated with listmonk. The export steps follow listmonk's help on October 31, 2026.