How to Bulk Send Emails in Gmail using Sheets for FREE [GMass Alternative]

Ever wondered how to bulk send emails in Gmail without retyping the same email everytime to each email contact?

As a marketer, reaching out to a large number of people can be a daunting task. It becomes even more challenging when you want to personalize each email and make it feel like it was sent to them directly. This was the problem that I faced when I wanted to reach out to a few bloggers to update them about my products.

Bulk Email Sending from Google Sheet using Gmail

However, I found a solution that helped in send these emails without making it feel like a mass spammy email. This solution involved using the Google Sheet App script for free mass email sending. With this automation, I was able to send personalized emails to each blogger and drive better conversions.

This is also a good way where you want to send emails in bulk without adding anyone in bcc or cc so that emails look like it were dedicatedly sent to the person.

If you require any help with email marketing, feel free to connect with me.

Table of Contents

Prerequisite for Sending Mass Email in Bulk using Gmail

Before sending mass email in bulk with Gmail using the Google Sheet App script, there are a few prerequisites that must be met.

These include:

  • Gmail account: A Gmail account is required to use Gmail for sending mass email in bulk.
  • Google Sheets: Google Sheets is a free spreadsheet program that is part of the Google Workspace suite of online tools. You will need to use Google Sheets to create a spreadsheet that contains the email addresses and other information for the recipients of your mass email.

It’s important to note that there are limits to how many emails you can send per day using Gmail. With a free Gmail account, you can send up to 500 emails per day. However, if you are using Google Workspace, the limit is 2,000 emails per day for each user account.

It’s also important to remember that sending spam or unsolicited emails is not allowed and can result in your account being suspended or terminated. Always make sure that you have permission from the recipients to send them emails and include an easy way for them to unsubscribe from future emails.

By meeting these prerequisites and following best practices, you can use Gmail and Google Sheets to send mass email in bulk for free.

Setting up the Google Sheet for Sending Email

Before sending mass emails through Gmail using Google Sheets and App Script, you need to set up the Google Sheet to include the email addresses and other required details

Here’s how to set it up:

Step 1. Opening Script Editor from Sheets Extensions.

First, make a copy of this Google Sheet –

Making the Copy of Google Sheet

Then, open the Google Sheet and click on the “Extensions” menu. From there, select “App Scripts.” This will open the App Script editor in a new window.

Step 2. Customizing the Google App Script Code (If Required)

To customize the Google App Script code for your mail merge automation, you can make a few optional changes to the source code.

Here’s how :

The sample code includes additional parameters, currently commented out, that allow you to control the name of the account the email is sent from, reply-to email addresses, as well as Bcc and Cc email addresses.

Customsing App Script

To activate the parameters you want to add, remove the forward slashes // in front of each one.

For example, here’s an excerpt from the sendEmails function that activates most of the email parameters:

GmailApp.sendEmail(row[RECIPIENT_COL], msgObj.subject, msgObj.text, {
         htmlBody: msgObj.html,
         bcc: '[email protected]',
         cc: '[email protected]',
         from: '[email protected]',
         name: 'name of the sender',
         replyTo: '[email protected]',
         // noReply: true, // if the email should be sent from a generic no-reply email address (not available to users)

Note that the noReply parameter is still commented out because the replyTo parameter is set.

If you require any help with this, feel free to connect with me, I would love to help you in any way.

Preparing the Email Content in Gmail for Mass Sending

Before sending mass emails, it is important to prepare the content of the email carefully. The content should be concise, clear, and relevant to the recipients. It is also important to ensure that the email is not spam and that the recipients have given their permission to receive the email.

To prepare the email content in Gmail, start by creating a new email and adding a subject line that is clear and concise. Then, craft the body of the email with the message you want to convey to your recipients, and then keep this email in draft.

Ensure the Email and Google Sheet are created from the same Gmail ID.

Uploading the Email List and Custom Field(s) Content to Google Sheets

The next step is to upload the email list and custom fields to Google Sheets. Simply add the emails in the Recipient column, and avoid changing this column title, as emails won’t be identified without this.

And you can add more columns like Name and add content to them as well.

It is important to ensure that the email addresses are accurate and up-to-date, and that none of the emails are invalid. You can verify your email list using tools like Snov Email Verifier to ensure that your emails will be delivered to valid email addresses only.

You can make your emails more personalized by using more dynamic fields, such as Name or Reason for Contact by creating a new column in the sheets, which can be added to the email content. This will make each email unique and personalized to the recipient, and make it look less spammy.

I have also created an App Script function where you can store YouTube data in Google Sheet, If you are into YouTube content creation, then this will help you analyze what’s working best for you and take correct decisions – Read More here

Adding Dynamic Content in Draft Email Content

Now that you have prepared the email content and uploaded the email list to Google Sheets, it’s time to add the dynamic fields to the email content. To achieve this, simply add the dynamic field in double curly brackets, such as {{Name}}, where you want the dynamic content to appear.

Now come back to your draft email content in the Gmail’s to field, and you can add other fields like {{name}} after the greeting line, example like done below.

Keeping the ‘to’ field empty

Drafting the Email with dynamic content

Like this, you can any no. of custom fields in email which changes dynamically, just ensure you have added the column name in brackets like this – ⁣{{Column Head Title}}

I share my Learnings & Case studies via email.
Subscribe to Stay Updated

Sending the Mass Email from Google Sheets : The Final Step

After setting up the email in draft in Gmail and contact list with necessary details in Google Sheets, it’s time to send the mass email. Here’s how:

  1. Click on the Mail Merge Menu to Send Emails

Once the email and other fields have been added to the email with dynamic values, the next step is to send them to all the recipients. After reviewing the email content, click on the Mail Merge button in the top row menu in Google Sheets, near the Help menu, and select ‘Send Email’ from the dropdown.

If you don’t see this, refresh the sheet.

Sending the Email from Mail Merge Tab
  1. Add the Subject of Your Draft Email

Here you will be asked to add the subject of your draft email. This should be the same email you just prepared, as it acts as an identifier to connect Google Sheets and Gmail to know which email needs to be sent in bulk.

Type your Email Subject
  1. Click on Send Now

Once the subject is pasted, click on ‘Send Email’, and the emails will start sending slowly. You will see the current date and time being added to every row with email and custom fields. This confirms that the email has been sent.

When you are prompted to authorize the script, click on the “Authorize” button. If the OAuth consent screen displays a warning message saying “This app isn’t verified”, you can continue by selecting “Advanced” and then clicking on “Go to {Project Name} (unsafe)”.

This will allow you to proceed with the authorization process.

And don’t worry, the process does not provide anyone access to your emails, it’s basic authentication between your Google Sheet and Gmail so that it can run the script to send the emails.

  1. Verify if the Email is Sent or Not

You will also see the date and time added in the column ‘Email Sent’, which confirms your emails are sent successfully

Email Sent Confirmation

To verify that the emails have been sent, check the Sent Tab of your Gmail where you will see the emails being sent to respective emails.

QUICK TIP: To ensure that the dynamic fields and everything are replaced correctly without any errors, it is recommended that you send a test email to your email. Just add your name and email in the Google Sheets column.

By following these simple steps, you can easily send mass emails from Google Sheets using the App script. This is a free and efficient alternative to paid mail merge services.


The Google Sheets App Script is a powerful tool that enables users to send mass emails for free. By following the steps outlined in this article, users can easily create a mail merge alternative that is both efficient and effective.

Using the Google Sheets App Script, users can easily create a personalized email that is sent to multiple recipients with just a few clicks. This tool is especially useful for businesses and organizations that need to send mass emails to their customers or members.

While there are other mail merge tools available, the Google Sheets App Script is a great alternative for those who want to save money and have more control over their email campaigns.

Thanks for reading! let me know in the comments, how helpful this was to run your email campaign efficiently without burning any dollars.

Aditya R Sharma

Hello! Currently, I am working as Chief Marketing Officer at POSIMYTH Innovations, with a deep love for WordPress. I love solving problem with AI, Automations & Critical planning. In my free time, I write blogs to share all his learnings with the internet.

Content Writing for SaaS & WordPress Business
Tired of Low Traffic & see your Blog Fail?

Let me help you with content writing & SEO strategy for your product that makes sales.

After raising multiple domains to 1M+ organic click, I am helping Business owners like you harness the real power of SEO.

Explore Further