Back

In a World With Data Overload, I Save Time with Email Summaries

A quick 'n dirty n8n automation that hooks into your Gmail, summarizes incoming messages and pipes back a short recap back to my inbox. Simple, fast, and effective.

This is part of a series where I walk through and discuss automations that I've set up to simplify my life. Some are simple, others may be relatively complex. Some are pointless hacks, while others save me countless hours per month. If you find value in these words, please let me know!

Let's dive in.

The scope of this post is to create a simple email summary automation. It creates a hook on a specific subject or sender, and will pipe a received email through a simple LLM chain where we prompt the model to summarize the content of the email and ship it back to me for reading.

Why this email summary automation is useful for me

I consider myself a bleeding-edge consumption addict. I can't help myself; I crave modern info for the things I'm interested in. For the most part, that's investing, blockchain/crypto and AI.

One of my favorite newsletter subscriptions is Token Dipatch, written excellently by Prathik. Prathik has a knack for journalism and reporting on relevant stories with in-depth [mostly] daily newsletters.

The problem?

Prathik is a great writer... and he loves his craft. He writes novels for his newsletter.

But frankly, most of the time, I don't have 10-20 minutes to dive into the full story.

However I highly value the TLDR.

In order to preserve my time but still get the value out of the newsletter, I created a simple n8n pipeline that does the following:

  1. Gmail trigger for message received from the Token Dispatch newsletter
  2. Pipe the content of the message into an LLM model for summarization
  3. Delete the original Gmail message
  4. Send a new message to my inbox with the summary attached

Enter n8n

I'll assume you have an n8n instance up and running. I use a DigitalOcean VPS running the Docker instance and use Joffcom's n8n Caddy repo for a persistant postgres volume.

For the pipeline..

Step 1: Gmail Trigger for message recieved

  1. Add the Gmail Trigger
  2. Configure your Gmail account credentials
  3. I set Poll Times to 1 minute
  4. Event set to Message Recieved
  5. You'll want to deselect Simplify so you get the full payload of the message in the node output
  6. I set up the Filter Sender to the email address the newsletter comes from, eg "thetokendispatch+products@substack.com"

Step 2: Basic LLM Chain to summarize the message content

  1. Add the Basic LLM Chain
  2. Add a prompt that meets your expectations:
You are a Tech and Blockchain summarization expert. Summarize the following post in 200 words or less:
{{ $json.text }}
  1. Then add an LLM model of your choosing. At the time of writing I find gpt-5-nano to be more than sufficient for my needs. You'll want to make sure you have an OpenAI Credential configured.

Step 3: Delete the message so you don't have dups in your inbox

Note: The Gmail node doesn't (yet?) support email forwarding. In a perfect world, this pipeline would simply reply to the original message with the summary, but the Gmail node also doesn't support replying to a specific address. So instead, I delete the message and create a new one. If you wanted to get fancy, you could call the GMAIL API directly and nav around the Gmail node.

  1. Select your Gmail account credential
  2. Resource -> Message
  3. Operation -> Delete
  4. Message ID:
{{ $('Gmail Trigger').item.json.id }}

Step 4: Send the summary back to my inbox

  1. Select your Gmail account credential
  2. Resource -> Message
  3. Opoeration -> Send
  4. To: input your email
  5. Subject:
Token Dispatch Summary -  {{ $('Gmail Trigger').item.json.subject }}
  1. Email Type: HTML
  2. Message:
[Summary]

{{ $('Basic LLM Chain').item.json.text }}

Save and Activate!

Where to next

Instead of deleting & sending a new email, this pipeline could be easily extended to call the Gmail HTTP API to simply respond (aka forward) to your inbox so it keeps it within thread and you have the historical email.

Another iteration could be to set up a "summary inbox". Any email you forward to this inbox will respond with a summary. I would use this more than I'd like to admit. Next on deck.

Keep in mind that Google is finally SLOWLY rolling out Gemini summaries for Workspace emails. This will eventually make this pipeline obsolete and that's ok. You're ahead of the curve.

Finishing up

I hope this simple tutorial saves somebody time out there. If it does, give me a follow on LinkedIn or X and lmk!

Cheers & Stay Frosty