Generate email summaries with AI

Generate email summaries with AI

Keeping up with your email inbox can be a daunting task. Getting bogged down in long, rambling messages? Or maybe the opposite is true, and you keep missing important emails  buried within the clutter. Fortunately, there’s a solution that can help.

With Zapier’s ChatGPT integration, summarizing your email’s essential details has never been easier. With just a few clicks, you can automatically get a summary for each email in Slack or a handy daily digest that includes all the critical info you need from each email all in one go.

In this article, we’ll walk you through the steps of setting up this powerful Zap—our word for Zapier’s automated workflows. Whether you’re a busy professional or simply seeking to optimize your work day, this tutorial will help you streamline your email management and stay on top of your inbox.

How it works

For this project, we’ll be using ChatGPT’s GPT-4o mini to summarize our emails, and then we’ll send the summaries to Slack.

Screenshot of Zap

If you’d like to start with a template, click on the Zap template below to go to the Zap editor. You’ll need to create a Zapier account if you don’t already have one. Then, follow the directions below to set up your Zap.

Alternatively, if you prefer to receive the notifications as a daily digest rather than individually, we’ll walk through how you can use Digest by Zapier for this purpose. 

Screenshot of Zap with digest

If you’d like to go the digest route, you can start with the following Zap template:

Before we begin developing our Zap, you’ll also need an OpenAI account if you don’t already have one. Go to platform.openai.com to sign up for your account. You’ll also need a free Slack account, which you can sign up for at www.slack.com

Are you ready to build this yourself? Let’s get started!

New to Zapier? It’s workflow automation software that lets you focus on what matters. Combine user interfaces, data tables, and logic with thousands of apps to build and automate anything you can imagine. Sign up for free.

Step 1: Set up your Gmail trigger step

Head over to Zapier, and click the Create Zap button to create a new Zap. 

Search for and select Gmail for the trigger app and New Email in Gmail for the trigger event (if you’re using the Zap template, these will already be selected for you). You’ll also be asked to connect your Gmail account to Zapier if you haven’t already.

Screenshot of Gmail trigger set up

Once you click Continue, select INBOX in the Label/Mailbox field. You can optionally leave this blank to trigger for all emails. But since that will also trigger for sent messages and drafts, INBOX is the best choice unless you do heavy email filtering/labeling to remove emails from your inbox.

Screenshot of label

Click Test trigger, and you should see a recent email from your inbox, as shown below:

Screenshot of email D test

Next, click Continue with selected record.

Step 2: Set up your ChatGPT email summary prompt

If you haven’t set up your Zapier connection to OpenAI, you’ll have to do that now. To start, head back over to platform.openai.com to log into your account. At the top right of the page, click on your profile icon and click API keys:

Screenshot of API keys option in OpenAI

From that page, click on the + Create new secret key button to generate a new API key. You’ll need this key to connect to your OpenAI account within Zapier. Copy this key and store it somewhere safe.

A list of API keys in OpenAI.

Head back over to Zapier and add a new action step at the bottom of your Zap. Search for the ChatGPT app and choose the Summarize Text event:

Screenshot of ChatGPT action event

Click on Choose account, and set up a new account by providing the API key you just generated in OpenAI. If you already have set up your account connection, simply select your existing account and click Continue.

In the Text to be summarized field, you can pull in data from your Gmail step. You’ll want to map the body of any new email content so ChatGPT can summarize it. Just click the + icon inside the empty field where you want the data to go and select Body plain from the list of options. (You can also pull in the subject line and anything else included in the email (like the date or name of the sender) if you think it’s important. You don’t need to include any instructions, as the action is set up to summarize text using extreme TLDR generation (which basically means providing short summaries without losing the original meaning or context). 

Screenshot of text to be summarized

Your model will be set by default to GPT-4o mini, which we recommend using as it’s the fastest and cheapest model available. You can also leave all of the other fields (tokens, temperature, etc) for this step set to their default values as they may affect performance. Click Continue.

Next, click Test step to send the email over to ChatGPT. Review the summary and make sure everything looks okay. Here’s the summary ChatGPT generated for me:

Screenshot of summary generated by ChatGPT

If you want to get a notification in Slack for each email you receive, continue to the next step.

If you want to get a daily digest of all of your emails, skip ahead.

Get notifications for each email step 3: Set up your Slack message

Next, we’ll set up the action step that will send the email summary back to you in a Slack message. This could also be set up to send as an email or SMS if you prefer, but we’ll be using Slack for this example.

Add a third action step and search for the Slack app. Select the Send Channel Message event. Remember to connect your Slack account if you haven’t already connected it to Zapier.

Screenshot of Slack action set up

Next, we’ll set up the action step. Select the Slack channel you want these messages to be sent to. I create

d a new channel called email-summaries for this purpose. 

In the Message Text field, copy and paste the following, replacing the bracketed content with data from your previous Zap steps, which you can select from the Insert Data dropdown:

*New email summary*

From {Gmail From Email}

Summary: {Summary}

<{Gmail Message URL}|Go To Email>

Your Message Text field should look like the following image when complete:

Screenshot of message text fields

This will create a message in Slack that includes the sender’s email address, the summary generated by ChatGPT, and a link to open the email directly in Gmail for easy responding.

Switch the Include a link to this Zap? field to No and leave the remaining fields as is. Once you’ve finished adjusting your fields, click Continue.

Now it’s time to test your step. Click Test step to send the summary message to your Slack channel and make sure everything is working properly. If everything looks good, you’re now ready to publish and start using your Zap.

Screenshot of Slack summary as a message

Get a daily digest step 3: Set up your digest entries

If the idea of receiving instant notifications for every email you receive sounds too distracting, the daily digest is an ideal solution for you. Instead of setting up a Slack notification for the third step, we can use a built-in Zapier tool called Digest by Zapier to store up the email summaries throughout the day and then release them to us all at once at a designated time. 

Add a new action step to the bottom of your Zap. Select Digest by Zapier for your action app and Append Entry and Schedule Digest for your action event. Click Continue.

Screenshot of digest by zapier app and event

Navigate to the Action section and give your digest a descriptive title like Daily email summaries

For the Entry field, simply copy and paste the copy below. Then replace the bracketed content with the variables from the prior steps by selecting them from the Insert Data menu.

From {Gmail From Email}

Summary: {Summary}

<{Gmail Message URL}|Go To Email>

For the Frequency field, select Daily, and for the Time of Day field, choose when you’d like to receive the digest. Your completed action step should look like this:

Screenshot of entry in Zap

Click Test step to add an entry to your digest and make sure your action step is set up correctly.

Get a daily digest step 4: Set up the Slack action to release your daily digest

Finally, we’ll set up the action step that will release your daily digest and send all of the email summaries to you in a Slack message. This digest message will automatically send at the Time of Day you specified in the prior action step. 

Add an action step and search for the Slack app. Select the Send Channel Message event and connect your account.

Screenshot of Slack app and event

In the next section, select the channel you want these messages to be sent to. I created a new channel called email-summaries for this purpose. 

In the Message Text field, copy and paste the following, replacing the bracketed content with the data received from your previous digest step by selecting them from the insert Data dropdown:

*You received {Digest Count} emails today*

{Current Digest}

Your Message Text field should look like the following image when complete:

Screenshot of message text fields

This will create a message in Slack that includes the total number of emails received and the digest with all of the email summaries that were created throughout the day, formatted as we specified in the prior step. 

Switch the Include a link to this Zap? field to No and leave the remaining fields as is. 

Next, click Test step to send the summary digest to your Slack Channel and make sure everything is working properly. If everything looks right, you’re now ready to use your Zap! 

Screenshot of digest message

Putting it all together

Whether you’re a busy professional or simply looking to optimize your email management process, setting up either of these workflows can help streamline your day and keep you on top of your inbox. Give it a try and see the difference it can make!

This article was originally published in May 2023, written by Michael Toth. It was most recently updated in October 2024 by Elena Alston.

by Zapier