SendGrid
Use GrowthLoop audiences for SendGrid contact lists and email templates.
Connect this destination to export audience membership onto a SendGrid contact list, or to trigger a dynamic email template from a journey Destination Node, for use in SendGrid Marketing Campaigns.
This destination writes to your SendGrid account and is a good fit when you want to:
- Make GrowthLoop audiences available as SendGrid contact lists
- Match contacts on at least one identifier: email, phone, external ID, or anonymous ID
- Trigger a dynamic email template from a journey
This maps to GrowthLoop Audiences and Journeys:
| Use it for | Audiences | Journeys |
|---|---|---|
| Sending GrowthLoop audiences as SendGrid contact lists | ✓ | ✓ |
| Triggering a SendGrid dynamic email template | ✓ |
Prerequisites
Make sure you have:
- A SendGrid account. See SendGrid if you need to create one.
- An API Key. In SendGrid, go to Settings > API Keys, click Create API Key, and grant Marketing access so GrowthLoop can manage lists. If you will use Send Email, also grant Mail Send and Template access. Click Create & View, then store the key. SendGrid shows it once.
- At least one dynamic email template and a verified sender if you will use Send Email.
Set up SendGrid as a destination
- In GrowthLoop, click the Destinations tab on the left sidebar.
- Click New Destination in the top right corner.
- Search for SendGrid and click Add SendGrid.
- Enter the required information, then click Create.
| Field | Description |
|---|---|
| Destination Name | Name this destination in GrowthLoop. Use a name so your team recognizes its purpose, like "SendGrid Email". |
| Sync Frequency | Set the default export frequency (for example, daily or weekly). You can override this setting for individual exports. |
| API Key | SendGrid API key you've created with Marketing access. Include Mail Send and Template access if you will send email from journeys. |
| Prefix for Personalization Fields (optional) | Prefix GrowthLoop adds to personalization fields. The default value is fw. Leave this blank for no prefix. If you set one, it must start with a letter and use up to 5 letters or numbers. |
GrowthLoop validates the key by loading Marketing lists. SendGrid then appears in your list of connected destinations.
Export to SendGrid
From within GrowthLoop, export from an audience or from a journey Destination Node. See Export an audience or Build a journey if you need more information on these steps.
After building or selecting an audience, click Export, then search for SendGrid. In a journey, add a Destination Node under Email and select SendGrid. To write list membership, keep the export action on Add to List Only. To trigger a template instead, see Send email from a journey.

Map contact identifiers
On an audience or in a journey Destination Node, map at least one of Email, Phone, External ID, or Anonymous ID.
You can also map profile fields such as First Name, Last Name, Alternative Email, and address fields, plus custom attributes from the audience or from the journey. Additional fields must already exist as SendGrid reserved or custom fields.
Map Email if you run ongoing exports. GrowthLoop looks up contacts by email when contacts leave the audience.
Configure the export
This is where you set the campaign type and schedule for audience exports. On a journey Destination Node, you set timing on the journey canvas.
| Setting | Audience export | Journey Destination Node |
|---|---|---|
| Export Name | Defaults to {audience name}_GL_Audience_{audience ID}. GrowthLoop uses this as the new list name. | Names the node in the journey. It does not rename an existing list or template. |
| Campaign type | Choose a one-time or ongoing export. | The journey schedule controls when the journey runs and contacts are sent to SendGrid. |
| Export Inclusion Criteria | All audience members for a full refresh, or Newly added audience members for additions and removals since the last export. | The journey sends contacts who reach this node. |
| Schedule | Set frequency, start date, end date, and days of the week. | Users reach this node when the journey runs. Add a Delay Node or set Criteria Evaluation to control timing. |
| Export action | Audience exports use List Status. | Add to List Only or Send Email. |
| List Status | New creates a contact list. Existing writes to a list you select. | Journeys choose Add to List Only, which creates a list. |
| List Id | Shown when status is Existing. The list ID is the last part of the SendGrid list URL. | Journeys create a list. |
Export behavior
This is what GrowthLoop writes when you export an audience.
| Behavior | What happens |
|---|---|
| What GrowthLoop writes | Contacts on a SendGrid Marketing list, or a dynamic template send from a journey. Direction is GrowthLoop → SendGrid. |
| When it runs | GrowthLoop sends the export as a batch on the next successful run. An export that starts Now runs within about 15 minutes. Journeys send exports on demand when users reach the Destination Node. |
| New list | GrowthLoop creates a contact list named after the export name. |
| Existing list | GrowthLoop writes to the list ID you entered. |
| Match fields | At least one of Email, Phone, External ID, or Anonymous ID. |
| One-time exports | GrowthLoop upserts current members onto the list. |
| Ongoing adds and removals | Ongoing exports upsert contacts who enter the audience. When contacts leave, GrowthLoop looks them up by email and deletes the SendGrid contact. |
| Deletes | Remove deletes the contact from SendGrid. It does not only take them off the list. |
WarningAn ongoing export that removes contacts deletes those SendGrid contacts, not just list membership. Map Email so GrowthLoop can find the contact. Use a one-time export if you do not want removals.
Send email from a journey
You can trigger a SendGrid dynamic email template from a journey Destination Node. See Build a journey if you need more information on these steps.
- Add a Destination Node under Email and select your SendGrid destination.
- Select Send Email as the export action.
- Choose From Email from your verified SendGrid senders.
- Map Recipient's Email.
- Choose the template in Email Template. GrowthLoop lists dynamic templates.
- Map Template Variables that GrowthLoop loads from the template.
- Send a test email before you publish.
Match fields for list membership are hidden when the export action is Send Email.

Send behavior
| Behavior | What happens |
|---|---|
| Trigger | GrowthLoop sends the selected dynamic template for each user who reaches the Destination Node. |
| Templates listed | GrowthLoop lists SendGrid dynamic templates. |
| Template variables | GrowthLoop loads variables from the template HTML. |
| From address | The verified sender you select in From Email. |
| Audience membership | Send Email does not create or update a contact list. Use Add to List Only or export an audience to write list membership. |
Confirm the export was successful
When the run finishes, confirm you can use the data in SendGrid.
- Audience export: Open Marketing > Contacts in SendGrid and look up the list. Look for the
_GL_Audience_name unless you changed Export Name or wrote to an existing list. - Journey Destination Node: Open Marketing > Contacts and look up the list named after the export. You can also spot-check a contact who reached the node.
- Send Email: Confirm SendGrid delivered the selected template from the verified sender.

In GrowthLoop, review Added and Removed counts on the audience Exports tab, or open the Activity tab on the journey Destination Node. See Export an audience or Monitor a journey for more information.
Congrats on successfully exporting to SendGrid!
Troubleshooting
These are the issues we see most often. You can always email us at [email protected] for help.
| Problem | Cause | Resolution |
|---|---|---|
| Connection fails to validate | The API key is wrong or cannot read Marketing lists | Create a key with Marketing access. Copy it again from SendGrid; the key is shown once |
| Rows fail to match | No identifier is mapped | Map at least one of Email, Phone, External ID, or Anonymous ID |
| An existing list export fails | List Id is blank or wrong | Copy the list ID from the end of the SendGrid list URL |
| Contacts who left the audience disappeared from SendGrid | Ongoing removals delete the contact | That is expected. Use a one-time export if you only want to add contacts |
| Removals did not run | Email is not mapped, so GrowthLoop cannot look up the contact | Map Email on an ongoing export |
| A Send Email journey did not create a list | Send Email triggers a template only | Use Add to List Only or export an audience to write list membership |
| Send Email has no templates | The account has no dynamic templates | Create a dynamic template in SendGrid, then refresh the Destination Node |
Updated about 12 hours ago
