Move from SendGrid
Move from Twilio SendGrid: export Marketing Campaigns contacts, every suppression list, and designs, rebuild automations, and decide where your application email goes.
On this page›
- What comes across, and what doesn't
- Step 1: Set up your sending domain
- Step 2: Export your contacts
- Step 3: Import your contacts
- Step 4: Bring your suppressions across
- Step 5: Move your designs
- Step 6: Rebuild your marketing automations
- Step 7: Decide where your application email goes
- Step 8: Before your first send
This page moves you from Twilio SendGrid to IGSendMail. SendGrid is often used for two things: Marketing Campaigns (newsletters and automations) and application email sent through its API or SMTP (receipts, password resets). IGSendMail replaces the first. It doesn't have an SMTP relay, so step 7 covers what to do with the second. Contacts and suppressions take about 30 minutes, because SendGrid keeps suppressions in six places.
Stuck on a step?
Reply to the email this guide came in, or write to us from the contact page. We answer migration questions by email, usually within a working day.
Download promptly
SendGrid's contact export link only works for 12 hours after the export starts. Do the exports when you're ready to import, and keep SendGrid running until your marketing is sending from IGSendMail and your application email has a settled home.
What comes across, and what doesn't#
| From SendGrid | How it moves | Time |
|---|---|---|
| Marketing Campaigns contacts and custom fields | Export each list to CSV, import into a list | Minutes |
| Global unsubscribes, group unsubscribes, bounces, blocks, spam reports, invalid emails | Export each as CSV, import into your Blacklist | 15 minutes |
| Designs from the Design Editor | Export the HTML, paste into a new template | A few minutes each |
| Code Editor designs | Copy the code, paste into a new template | A few minutes each |
| Marketing automations | Can't be exported; rebuild each one | 20 to 60 minutes each |
| Application (transactional) email | Stays with SendGrid or moves to another transactional provider | Nothing, or an hour or two if you switch |
Step 1: Set up your sending domain#
Go to Sending domains, add the domain you send from, and publish the DNS records it shows you. Authenticate your domain walks through each record.
SendGrid's domain authentication added CNAMEs such as em1234, s1._domainkey and s2._domainkey, and link branding added two more. Remove them only after SendGrid has sent its last email, marketing and application alike. Removing the link-branding records also breaks tracked links in emails SendGrid already sent, so there's no rush. Keep your DMARC record.
Step 2: Export your contacts#
Export each list
In SendGrid, go to Marketing > Contacts. Open a list's ⋮ menu and choose Export. SendGrid emails you when the file is ready.
Download the file
Go to Exports and click Download CSV. The download only works for 12 hours after the export started.
Repeat for each list you want to keep.
Step 3: Import your contacts#
Create the list and its fields
Go to Lists and create a list for each SendGrid list you're keeping. Add a field under ListsFields for each custom field you use.
Import and map
Import each file and map each column to its field. Import contacts covers the mapping screen, duplicates and the import summary.
Plan size
The Free plan holds 2,500 contacts. Every paid plan has unlimited contacts, so if your list is bigger than that, choose a paid plan before you import.
Step 4: Bring your suppressions across#
SendGrid keeps suppressions in six places. Export each one as CSV:
| Suppression | Where in SendGrid | How to export |
|---|---|---|
| Global unsubscribes | Suppressions > Global Unsubscribes | Action menu > Download as CSV |
| Group unsubscribes | Marketing > Unsubscribe Groups | Group's ⋮ menu > Export (emailed to you) |
| Bounces | Suppressions > Bounces | Gear icon > Export CSV |
| Blocks | Suppressions > Blocks | Gear icon > Export CSV |
| Spam reports | Suppressions > Spam Reports | Gear icon > Download CSV |
| Invalid emails | Suppressions > Invalid Emails | Set the date range, then gear icon > Download CSV |
Then go to Blacklist and import each file. The Blacklist import reads the email address from the first column, so move the email column to the front first if it isn't there already.
Group unsubscribes are people who opted out of one kind of email, such as a newsletter, but not everything. If you'll send that kind of email from IGSendMail, blacklist them too; if the group only covered email you're not moving, you can leave them out.
Don't skip this. Emailing someone who unsubscribed or reported spam earns more complaints and may break the law, and emailing addresses that bounced damages your sender reputation. Blacklisted addresses are never emailed, from any list. Blacklist and suppression explains how it works.
Step 5: Move your designs#
- Design Editor designs: open the design, open the settings drawer, go to Build > Advanced and choose Export. You get the HTML without the images, so download the images and re-upload them.
- Code Editor designs: open the design and copy the code.
In IGSendMail, create a new template, choose your own HTML, and paste it in.
Then replace SendGrid's tags. {{first_name}}, {{{unsubscribe}}} and {{Sender_Address}} won't work here; insert tags with the editor's personalization control, as described in Personalization tags. Check the footer has your unsubscribe link and postal address.
Step 6: Rebuild your marketing automations#
SendGrid automations can only be duplicated inside SendGrid, so each one is rebuilt by hand. Write down what starts each one (usually a contact joining a list), each email and the wait before it. Then build it under Automations; Welcome series is a worked example and Build a workflow covers the editor.
Switch each automation on here only when you switch the SendGrid one off, so nobody gets the same email twice.
Step 7: Decide where your application email goes#
IGSendMail doesn't have an SMTP relay or a send-one-message API, so if your website or app sends receipts, password resets or notifications through SendGrid's API or smtp.sendgrid.net, that email needs a home that isn't IGSendMail.
- Simplest: keep it on SendGrid. A SendGrid Email API plan can carry your application email while your marketing moves here. Keep SendGrid's DNS records for the subdomain it sends from.
- Or move it to another transactional provider. Point your application at the new provider's SMTP or API, move any dynamic templates into your code or the new provider, and test every message type (sign-up, password reset, receipt) before you revoke your SendGrid API keys.
- Welcome and onboarding emails can move here. If your app sends one-off lifecycle emails through SendGrid, add the contact or a tag through the API instead and let an automation send them. Transactional email explains what fits.
A dedicated IP can't move between providers. Your sending reputation lives with your domain, so warm up gradually; see step 8.
Step 8: Before your first send#
- Verify the list. Old lists always contain dead addresses. Run email verification before your first campaign.
- Start with your most engaged people. Your domain is new to our servers, so send to recent openers first and build up over a week or two. Warm up a new domain has a schedule.
- Replace your signup forms with an IGSendMail form.
- Close SendGrid only if nothing else sends through it: otherwise downgrade to the plan your application email needs.
Last updated September 25, 2026