In this article:

Send Email From Google Sheets [Easiest Method in 2024]

In this article we will show you how to send email from Google Sheets. Most people aren't even aware this is possible, but in a few simple steps you will be able send emails like a pro!

Send Email from Google Sheets

1. Prepare your Spreadsheet with the data you need to send emails

For this example, we want to be able to send email messages to a team member when we update their task status from FALSE to TRUE.

Your Google Sheet data should be arranged in a table with no empty rows or spaces. The first row should be your column headers, which cannot have special characters or line breaks.

google sheets send email
Email information on Google Sheets

2. Create a Lido Account

Lido is a new spreadsheet that has formulas that Google Sheets does not, like SENDGMAIL(), which we'll use to send out our emails. You can create a free account at

3. Connect your Google Sheet to Lido (optional)

You only need to do this step if your Google Sheet data might change. Otherwise, you can skip this step and copy / paste your data into Lido directly from your Google Sheet.

Create a new file in Lido, then click on Connect Data.

email from google sheets

Select Google Sheets, then paste in your Google Sheet URL.

how to send an email from google sheets

Then, select the columns from your Google Sheet that you want to connect to Lido. Lido will automatically refresh data from your Google Sheet, so don't worry if you plan to add more records. They'll automatically sync.

email google sheets

Click Add Data and your spreadsheet data has now been imported to Lido.

4. Create your email subject and body

Now, we need to add the our email content.

First, we will create templates in a fresh worksheet. You can reference table columns as variables like this: [@column].

google sheets email
Create email templates with variables using [@column]

Then, navigate back to your spreadsheet table and select Add computed column.

google sheets script send email

Name the column Subject. Then, enter this formula in the second row:


Where Sheet1!$B$1 is replaced with the location of the email subject template cell that you just created. This formula will automatically replace any referenced column variables with the actual values from the row in your table.

send email from google sheets

Now repeat the same process for email body. First, create a new computed column. Then enter in the formula:


Since our body template cell is in a slightly different location than our subject. With the body, we can now see the full impact of using STRINGTEMPLATE since our Name variable is properly replaced in each row.

how to send email from google sheets
Email body with dynamic column content

5. Write your SENDGMAIL Formula

Unlike Google Sheets, Lido has a concept of "Action" formulas. These formulas behave similarly to buttons, in that they don't run unless you trigger them. SENDGMAIL is a Lido Action formula that will send an email when run.

Create another computed column and type the SENDGMAIL formula into cell E2.

The formula to send an email from Lido is:

=SENDGMAIL(sender, recipient, subject, body)

In our example this will be:

Sender = (This must be a gmail account, but does not have to be the same account you used to create a Lido account)

Recipient = Email in B2

Subject = C2

Body (message) = D2

Final Formula:


6. Send your emails

Lido Actions need to be run, so let's do that. The first time you run the SENDGMAIL formula you'll be asked to authenticate into your Gmail account. Make sure you choose the same account that you entered into the sender field of the SENDGMAIL formula.

To send one email:

Right click on a blue SENDGMAIL formula and select Run Action.

Run a single SENDGMAIL formula

To send all the emails in your column: click on the 3 dot menu and select Run Column Now.

Run an entire column of SENDGMAIL formulas

And that's it! You can now send emails from a spreadsheet using Lido.

Sending Emails With Attachment

Sometimes we want to send attachments with our messages. The SENDGMAIL formula has an optional argument for attachments:

=SENDGMAIL(sender, recipient, subject, body, [cc], [bcc], [attachments])

Attachments need to be passed through as statically hosted URLs. The URL needs to be the direct download link for a file, and not a preview or share link.

You can read more about this here.

Sending Multiple Emails / Mail Merge from Google Sheets

If you have multiple messages to be sent, simple configurations on AppScript will allow you to run this smoothly. You can find the script on this article for mail merge.

Send Email in Google Sheets Based on Cell Value

If you have values on your spreadsheet and would like a message to be sent based on the contents of a cell, a coding script will allow you to do that. Follow this article to learn how to send an email when cell value changes.

Automatically Send Email From Google Sheets

If you’d like to automate emails these steps, a guide on how to have them sent automatically can be found here.

Send Email when new Row Added Google Sheets

If your spreadsheet is constantly increasing and you’d like to have messages sent when a row is added this guide will help you:

Send Email When New Row Added

Automate repetitive tasks with Lido

Save hours on repetitive and tedious work. Lido is a new spreadsheet that connects your spreadsheets, forms, PDFs, and email inbox.

Select trigger
When a cell value in Google Sheets changes
Check Google Sheets for today's date
When a new row is added to Google Sheets
On new Google Form submission
Send me a daily reminder
On new Typeform submission
When a cell value in database changes
Check database for today's date
When a new row is added in database
When a new HubSpot customer is created
Select action
Creates a one- or multiple-day calendar event with optional attendees
Adds an object to Hubspot
Create a Slack channel, and optionally add a topic or members
Makes any HTTP request
Replaces [@column_name] values in a Google Doc with the corresponding table row's values
Replaces [@column_name] values in a Google Doc with the corresponding table row's values, then export it as a PDF
Makes any HTTP request and returns the response
Inserts given array below defined values in given worksheet
Sends an email using your Google account
Sends an email using your Microsoft Outlook account
Sends a Slack message
Sends an SMS message using your Twilio account
Updates cells with given values
Updates a property of a Hubspot object
Trigger is required
Action is required
Get started