How to send a mail merge with Google Sheets

GMass and Google SheetsGMass’s Google Sheets integration is complete. You can now send a mass email/mail merge campaign easily to contacts in a Google Sheets spreadsheet.

The basic process of connecting to a spreadsheet and then personalizing and sending a mail merge campaign.

You’ll notice a new Google Sheets icon next to the Build Email List button.

Click the Sheets icon to start.

Click the Sheets icon, and a window will popup showing your spreadsheets, and allowing you to choose one. All Google Sheets that you own or are shared with you will show in the dropdown. If you don’t see the Google Sheet you’re expecting, your account doesn’t have permissions to access it. Also, note that the dropdown will NOT show you your Excel files that are in your Google Drive. GMass doesn’t connect to Excel files directly, but it’s easy to convert your Excel spreadsheet to a Google Sheet.

Choose your spreadsheet and worksheet.

You do not need to specify which column contains the email addresses, because GMass will auto-detect email addresses and read the other columns in the spreadsheet to allow you to personalize your mass email with any of those fields.

A properly formatted spreadsheet

How to format your spreadsheet

Your spreadsheet needs to be formatted properly for GMass to read from it. Proper formatting includes:

  • The first row should contain column names, like: FirstName, LastName, EmailAddress, Company, LastPurchase, and others. It’s best that column names do not contain spaces or special characters. Stick with alphanumeric characters so that personalization works reliably.
  • The actual data should start on the second row.
  • At least one column should contain email addresses. GMass will auto-detect this column.

Choose your Google Sheet

The first step is to choose the Google Sheet you want to use from the dropdown. Only Google Sheets that you own or are shared with you will show up here. Excel files will not show up.

Choose your worksheet

If your spreadsheet has multiple worksheets, then a Worksheets dropdown will also appear, allowing you to select the specific worksheet from which you’d like GMass to read your email list. If your spreadsheet only has one worksheet, then this dropdown will not appear.

After clicking the Connect button, GMass will read the email addresses and other data from your spreadsheet and load the email addresses into the To field of a new Compose window.


Clicking on the settings arrow will reveal the personalization buttons, one for each column in the spreadsheet. Click these buttons to insert the personalization fields into the Subject and Body of your email message.

Use the personalization buttons to insert mail merge tags in your Body.

Advanced Mail Merge Techniques with Google Sheets

Above I’ve shown you how to do a basic mail merge with a Google Sheets spreadsheet and personalize based on columns in the spreadsheet.

127 Replies to “How to send a mail merge with Google Sheets”

  1. Ajay Goel

    This error is likely specific to your Gmail account, as I haven't had any other reports of issues. Can you email me your email address, and then I can investigate further?

  2. Vivianne

    Also, if I do not want to personalise it (as I do not have the names), I only have a spreadsheet with email adresses. How does the email then look like? I really want to see how the email looks like before sending it off. Is this possible?

  3. Ajay Goel

    Hi Vivianne — if you use the GMass button, then no recipient will see any other recipient's email address. Individual emails will be sent, one to each recipient with just that person's address in the To line, If you use the default Gmail "Send" button, however, then all of the email addresses will be shown in the To line.

  4. Ajay Goel

    If your spreadsheet only contains email addresses, that is fine. You just won't be able to personalize. You can always send yourself a test message first. In the future, I'll be adding a feature to make sending test messages easier.

  5. SDJ

    I just tried sending a mass email to 1200 people, it seemed to go through but in my sent box i can only count about 30 emails that seemed to go out.

    Any thoughts?

  6. Brian Quach

    Hi GMass! Thanks for creating a great product. I have a list of emails (non-gmail) on one column, and a list of first names on another column. How do I pull data for the first names into the mail merge?

  7. QBJ

    I just sent a Gmass email to 78 recipients using google sheets for my contact list. It all looked fine but I don't see anything in my sent box and it is still in drafts. I clicked to send now but it says it is scheduled for 4 am! I guess I have to wait until tomorrow morning to see if it got sent. Maybe the problem was that I asked to do drafts only but then nothing happened and I did not see any drafts. So I decided to try and send it and this is what happened. I don't want to try again until tomorrow in case it actually goes out. I'll follow up tomorrow. However, why didn't the drafts part work when it said it was? Thanks!

  8. Ajay Goel

    Hi Brian — all you do is follow the instructions in this blog post to connect to the Google Sheets spreadsheet. Then, if your column name is "FirstName" for example, you would use {FirstName} in your Subject or Message to substitute the person's actual first name.

  9. Ajay Goel

    Abs — yes, any columns that are present in your spreadsheet can be used as personalization variables. GMass will create personalization buttons, as shown above, for each column in your spreadsheet.

  10. Ajay Goel

    Yes, it's very easy to convert an existing CSV file or Excel spreadsheet to a Google Sheets spreadsheet, and then connecting that spreadsheet to GMass. Let me know if you need any more help.

  11. Ajay Goel

    You likely received the email I sent to you and a few other users that were affected a server disk issue earlier this evening. I did re-queue your emailing after I fixed the issue, and it did go out to all 78 recipients, eliminating anyone that had already received it. As far as the scheduling, I'm wondering if you saw the time in GMT time after you sent it. It might have looked like it was going out in the future, when it was actually in mid-sending at that time. We do attempt to localize times based on your computer's set time zone though. If that happens again, please send a screenshot to

  12. Ajay Goel

    With a regular Gmail account, 500 emails/24 hours. With a Google Apps account, 2000 emails/24 hours. We are about to release a feature that will make sending up to 10,000 emails very easy — we'll distribute it over multiple days so you don't violate your account limits.

  13. aShocka

    Just remove the Chrome Extension. Click the three lines icon on the right-hand side of the toolbar in Chrome, More Tools -> Extensions, locate the GMass and click remove.

  14. Russ Tanner

    Is Gmail/Google going to block this extension at some point because it potentially violates SPAM laws? Just curious. I've been waiting for an extension like this, but I'm hesitant to use it heavily because I'm worried it will be short-lived.

  15. Ajay Goel

    That is unlikely. GMass itself doesn't violate any laws, spam or otherwise. Gmail polices its network quite aggressively for spammers, so if anyone attempts to send spam through GMass, then the individual Gmail account will be closed. GMass isn't doing anything that Gmail doesn't already make possible.

  16. towerpeople

    I tried sending emails to all residents ( 300 nos)of my colony . It seemd to work very well. Around 250 people opened as per report generated.
    I am using google sheet on drive for email ids.

    One of the fields is "Name". It did not work for quite some time. But when I erased and re-entered the same "name" , it worked. Does formatting of header row affect in any way ???????

    Using Gmass with id.

  17. Unknown

    Argh. I LOVE This! Except when I click on the buttons to insert fields, they do not insert. When I type them in manually, they do not work 🙁

    I am on a iMax OSX Yosemite 10.10.5 Chrome Version Version 43.0.2357.132 (64-bit)

  18. Ajay Goel

    If the header column is just "Name", then that should work just fine, whether you're using the personalization button or typing "{Name}" manually in the Subject or Body. If you want, we can do a screen share session and you can show me an example where it doesn't work, so I can fix it. Please email me at

  19. winterowl

    I like Gmass a lot but I can't figure out how to send emails to a subset of the people listed on my Google Sheets spreadsheet. It looks like when I select a spreadsheet, and compose a message, the recipients listed include everyone on the spreadsheet. I can filter out the people I don't want to email on the spreadsheet itself, but they still appear as recipients when I compose the email. How do I limit the recipients to what would be a "group" in gmail contacts?
    — Arthur

  20. Alwis Anil


    What happens if there are duplicate entries in the spreadsheet? Will Gmass recognise that there are more than one instance of the same email that's being sent?

  21. Ajay Goel

    Unfortunately no. GMass removes duplicate email addresses from an email campaign, even if you have multiple rows of the same address but with different data in your Google Sheets spreadsheet. Several users have asked for a workaround to this though, so I am coming up with a solution.

  22. Ajay Goel

    This is by design. GMass will send to all email addresses in a chosen Google Sheets spreadsheet. To filter out certain addresses, you can manually remove them from the To field after GMass connects to the spreadsheet, or you can copy/paste just the rows you want to send to from the current spreadsheet to a new spreadsheet, and then have GMass connect to the new spreadsheet.

  23. Marco Sterling

    I try to connect a sheet and I get the following:

    GMass: System.Data.Entity.Validation.DbEntityValidationException: Validation failed for one or more entities. See 'EntityValidationErrors' property for more details.

    Not sure what to do to proceed?

  24. Irene Jason

    When I tried to insert the column named "Name", "Dear {Name}," it won't insert. It just showed "Dear ,", do you know why? There are about 300 lines in the sheet. Thanks for your help!

  25. Unknown


    I got the same message when trying to connect to a spreadsheet with over 1500 lines.

    GMass: System.Data.Entity.Validation.DbEntityValidationException: Validation failed for one or more entities. See 'EntityValidationErrors' property for more details.

    Does anyone know what the issue is?

  26. Unknown


    I got the same message when trying to connect to a spreadsheet with over 1500 lines.

    GMass: System.Data.Entity.Validation.DbEntityValidationException: Validation failed for one or more entities. See 'EntityValidationErrors' property for more details.

    Does anyone know what the issue is?

  27. Pubudini

    Any idea why the test email goes through, but not the actual email?
    My google sheet is pretty small, but the Gmass send tab seems to have frozen.

  28. MarkDQ

    I got the same error message (hard to copy, as it disappears quickly).

    I send a test email, successfully received.
    I changed the concept.
    I resend a test email, was refused with error message:
    There was a problem sending your test email
    Google.Apis.Requests.RequestError not found [404]
    Errors [Message[Not Found] Location[-]
    Reason [notFound] Domain[global]]
    – inner:

  29. Unknown

    Hi, I am unable to use the Google sheet option. When I click the Red color box to insert the sheet – it is showing "Please wait for Google sheet spreadsheets to load" for 2 mins but it doesn't get loaded. Tried relaod and restart but no luck.

  30. Ajay Goel

    This is strange. Unless you have hundreds of spreadsheets, it should load within just a few seconds. I suspect this was a temporary quirk, as people are using this feature constantly throughout the day. If you still need help, email me at and I'll diagnose your account individually for you.

  31. Ajay Goel

    Pubudini – to answer your other question about the test email — that can happen if you hit the "Send Test Email" button before GMass has a chance to extract certain information from Gmail. Usually if you just hit it again, your email will send and the error will go away.

  32. crazyprotein

    I'm having this issue persistently for 3 days now. I have tried everything with the lists, I cleaned up formatting, renamed the columns, etc etc. split the list into smaller batches.
    I get the test email where none of the parameters would be inserted.
    I'm really puzzled why. I was supposed to start my campaign on Tuesday

  33. Peter

    Count me as another vote for this feature. My temporary workaround is to slightly edit the duplicate email addresses so multiple messages are created, sending as draft, then going in and manually correcting the email addresses and sending manually. Not ideal but I'm only merging about 50 rows with 8 or so duplicates.

  34. Unknown


    Is there a way to trigger a gmass email upon a Google Form submission? ie, the moment a Google Sheet gets populated, that gmass can auto-send the auto-follow up email protocol?

  35. shivank gupta


    Firstly it worked just fine. I was really impressed by GMass. But now when I connect to a spreadsheet and send the mail to say 350 recipients it is only sending the mails to 11 or 12 addresses. I am really in need of this feature. Can you please suggest something?

  36. Anonymous

    I just tried sending a mass email to 3000 plus people, it seemed to go through but in my sent box i can only count about 30 emails that seemed to go out.

    Any thoughts?

  37. Anonymous

    Hi Ajay,

    Gmass is working well for me.

    The only problem is my signature does not appear within the message at the bottom, whenever I successfully link to a Google Sheets doc.

    Is there some setting I'm missing? When I compose an ordinary email, the signature is there correctly.


  38. Daniel Peeden

    How does gmass work? Can I edit the google sheet while my email is in draft mode and sending emails daily? Also, if a subscriber is on my list they will only get the email once, correct?

  39. Kimberly Peers

    When I say I've tried everything to find a work around for this, I mean it. I'm pretty sure I've thought of everything, to include cutting the sheet down to 5 and even trying to send it to only 1, but no matter what, it will not send. It works fine with other tested sheets. Can't figure this out. And I've even made separate sheets with the same info to try to circumvent the issue. PLEASE HELP

    Google.Apis.Requests.RequestError Not Found [404] Errors [Message[Not Found] Location[ – ] Reason[notFound] Domain[global]]

  40. Anonymous

    Hi, I thought I read where you could send up to 10,000 emails per day? It stopped me and said I could only send 500 per day. Is there anyway around this?

  41. Leila

    Just out of curiosity, is there a feature that I could compose HTML instead of plain text? Usually my messages has embedded links and if you hover the mouse into it, you’ll see an indirect link of

  42. Luis Ensinas

    Hi Ajay, can you help me. I have set (apparently) everything as you describe in this page tutorial. I have loaded the google spreadsheet and wrote my e-mail.

    However when i hit the “GMASS” red button i don´t see nothing happenning.

    What shall i do to shoot my e-mails.

  43. Mark P.

    Your GMass request failed. Error details: Google.Apis.Requests.RequestError Not Found [404] Errors [ Message[Not Found] Location[ – ] Reason[notFound] Domain[global] ]

    What does this error mean and how can I fix it? The first three GMass emails went great. Then one said all links in the newsletter had to be replaced. I copied and pasted another version of the email and then got the error above.

  44. sathish

    hi,i used to send 1000 emails in day with normal gmail account , past few months i cant send even 20 emails, if i send 500 emails it shows that your message has been blocked all the messages were blocked n returned back , why am i facing such problem, still my friend using gmail they are sending bulk emails, so i started using gmass from yesterday, i added 100 recipients, when i press the gmass button its shows “i can send only 50 email in a day, otherewise i have to choose a plan, i dont understand, why i have to pay when i used to send bulk email in 1000s range.please help me out,with normal gmail account all my messages are blocked by sending, so i created new email address to send as new but still am facing the same problem tat “my messages are blocked”give me some solution.. could you respond to it.

  45. Mike

    Is there any way to add emails from different worksheets within the same spreadsheet? I have one spreadsheet for all of my students with different classes on different worksheets. Each worksheet has it’s own list of emails and I need to be able to send one email to all of my students. So I need to add email addresses from four worksheets to the BCC field in one email.

  46. Shraddha


    I am facing an issue with G-mass, Somehow the trail e-mails that I am sending id not able to pick the First name or last name as it should. Can you help me rectify the situation or guide me to the right way of using g-mass.

  47. Mary Pugh

    I set up a test sheet on GOOGLE SHEETS

    about 5 emails….. and I get a message to wait to the sheet to load.

    It has been over an hour…. Am I doing something wrong ?

    Opened a new email… and tried other similiar things…but it is not loading.

  48. Manisha

    Hello Ajay,

    Can we send different draft emails to the 3 emails schedule for tomorrow through google sheet?
    For eg. I have prepared birthday list and daily it automatically runs and send the email as per the sheet. So if there are three birthday on 1 single day then can we have an option to send 3 different draft to 3 birthdays. I have created a draft using birthday wishes image

  49. Stephen Hart

    Ajay – this is going to sound silly….does the google spreadsheet have to remain “intact” until the mailing is done or does GMass read all the necessary data upfront then you can change/delete your spreadsheet if you want? Asking because I scheduled some mail merges for the next day but when they sent, none of the personalised fields (except email) were picked up. Between scheduling the mail merge and it actually being sent, i had changed the spreadsheet and deleted a lot of the fields (in the belief GMass had already captured the data it needed). If you are scheduling the mail merge for later, does the spreadsheet need to remain unchanged in your Google Drive until the send is complete? Furthermore, if you have set up auto-follow up, does the spreadsheet need to remain unchanged until auto-follow up is complete (i think not but could you confirm?). Many thanks – a fantastic product.

    • Maya Quijada

      Hey Stephen – I believe we spoke over the support address. GMass reads your Google Sheet at the time the Campaign sends. However, once it sends you can edit your Google Sheet as you please, and your Auto Followups will not be affected.

  50. zhhan

    Hi, is there a way to select specific column in Google Sheets for the email addresses to be sent to? I have 2 columns of email addresses and I want to select just 1 specific column.

  51. Tristan

    Ryan Seacrest to host Oscars red carpet pre-show after denying sexual harassment
    allegations by former colleague. Read more on sports

  52. Jaume

    Hi, thanks for this great solution. My question is if emails sent with Gmass provide the ability to see who has read/opened the email, or if not, if the integration of MailTracker or such solution in Gmail will also work for emails sent with Gmass.
    Thank you!

  53. Shahid Khan Mehsud

    How much we connect gmails accounts?
    Like if i use multiple accounts like in bulks gmail accounts..
    It is possible like i ask above?

    • Marvin Quinsaat

      Hi Shahid,

      You can subscribe to multiple subscriptions for different Gmail accounts. You might also be interested in signing up for a team plan if you’re planning on subscribing 5 or more email accounts. Team plans have centralized billing as well as a discounted rate from the individual premium subscription plans. Please see and under G Suite, you will see the option to select either individual or team plans.

  54. Brian


    I’m attempting to connect a spreadsheet to an email, but when the new message loads rather than an email list of recipients in the email field it just has “GMass Recipient List From Worksheet “. It seemed to work fine with a test spreadsheet that I created, but not with the spreadsheet that I need to connect to. I double checked the formatting on the spreadsheet and it’s set up correctly. Thanks in advance for any help you can offer. 🙂

  55. Rosemary

    Please tell me how to delete Gmass from my gmail account. I DO NOT wish to subscribe and the links are an annoyance.

    I have opened another email account for my bulk emails. Thank you

  56. David Condit

    I can get “Filter Rows” to work if I set Name=Somebody but can NOT get it to work if I set Date=CurrentDateIgnoreYear
    “Connect to Spreadsheet” does nothing whereas when I set Name filter it opens compose window.

  57. Devon

    I am new to GMass.
    1. Can I add an attachment to GMass emails?
    2. Can I add different (personalized) attachment to each GMass recipient?
    If so, how can I do it?

    • Marvin Quinsaat

      Hi Devon,

      1. Yes, you can attach files using the default attach files icon in Gmail.

      2. Currently, that’s not a feature offered in GMass but it is in the roadmap for future features to be added.

  58. Megha

    I just sent an email to 9 recipients via google sheets using GMass. I was expecting to see the mail sent, opened, and clicked updates on the sheets, as I did in my test campaigns. But so far the report is only in Gmail and not showing in the google sheets.

    • Marvin Quinsaat

      Hi Megha,

      GMass does not update the spreadsheet, it is merely used as a list for recipients’ emails and mail merge. You can still download those details such as blocks, click and open tracking through the GMass reports found in your email.

  59. arvind Srivastav

    Hi sir,

    i have small setup for photo editing service world wide. i already use this service. But, my gmail got spammy. Then i get few clarification mail from you if i add CNAME, TXT/DKIM, SPF record to my host domain page. Then, my mail would not be spammy. And, i can work free mind my mailing campaign. my gsuite mail id is……now, tell me what i did next before start again mail campaign by GMASS service. this time, i dont back so before start campaign. you share me all further process. what you think.

    • Marvin Quinsaat

      Hi Melvin,

      Duplicate the row so that the other columns are also filled in so you’ll have 2 rows one for each email address.

  60. Roberto

    I’ve successfully connected GMass to my Google Drive and sent a test batch of 120 emails. How can I add additional emails (on separate Google Sheets tabs) to the same campaign?


Leave a Reply

Your email address will not be published. Required fields are marked *