Wednesday, December 7, 2016

Updates made to our Gmail Mail Merge Extension

It's time to reload Gmail in Chrome because in addition to launching automated recurring email campaigns, we've made several improvements to the look and feel of GMass.

1. The Build Email List magnifying glass button next to the Gmail Search bar will now be hidden unless you've searched for something. Meaning now, there will only be two buttons presents when you first load Gmail instead of three.

2. Canceling a scheduled campaign is now much easier than before. Whereas before you had to find the campaign under the GMass Scheduled Label, and remove the Label from the Draft, now all you have to do is find the campaign in the GMass Scheduled Label, and click the Settings arrow, and then click the Cancel button.

3. We've added a splash of color to the GMass Settings panel, that shows better visual separation of functions. The light green area are all options to modify the Subject/Message of your email.

4. If you open up a scheduled campaign from the GMass Scheduled Label, you will immediately get a status of the campaign in the yellow status bar at the top of Gmail. In some cases, the status disappeared before you could finish reading it. Now, the campaign status will remain longer.

5. The Suppression dropdown menu is now collapsed by default, and you must hit the plus sign (+) to expand it to reveal the dropdown menu. This makes for a cleaner UI.

New Feature: Recurring automated email campaigns with Gmail and Google Sheets

We just enhanced GMass so that you can now send emails automatically to new rows added to your Google Sheets spreadsheet.

Be sure to reload Gmail in Chrome to get this GMass update.

This is the second most powerful feature we have ever built (the most powerful feature is auto follow-ups). Now, with automated recurring email campaigns, you can connect a campaign to a particular Google Sheets spreadsheet, and have your email campaign send daily to any new email addresses in the spreadsheet. Additionally, you can set auto follow-ups on a campaign, for a fully automated drip campaign system. Just add your new prospects to your spreadsheet, and the prospects will automatically start receiving your sequence of emails, including any auto follow-ups.

How do you set up an automated recurring email campaign?

Just check this one magical box when setting up your mail merge campaign…the one that says “Repeat daily”.

After connecting to my spreadsheet and composing my email campaign, I set it to repeat daily, so that this same email, and any configured auto follow-ups will send automatically to new email addresses added later to the spreadsheet.

This checkbox will show up anytime you compose a campaign after connecting it to a Google Sheets spreadsheet. It will cause the campaign to send daily, based on the time the campaign is first sent, and it will send to any new email addresses found in the spreadsheet every day. If you set your campaign to have auto follow-ups, then each new email address in the spreadsheet will get the original campaign and the sequential automatic follow-up emails, based on their behavior.

How do you get new email addresses into the spreadsheet?

You can enter them manually, or you can use a number of automated systems available, like Zapier, to tie your Google Sheets spreadsheet to any number of outside databases or CRM systems. 

Just add new rows and those people will get the email campaign and any associated automatic follow-up emails.

Here at my company, we house our data in a SQL Server database, and we use Zapier to push data from SQL Server into a Google Sheets spreadsheet daily. We then have a daily recurring GMass campaign set to email new GMass users every day. The campaign connects to the spreadsheet every day, finds any new rows, and sends the mail merge campaign.

New auto follow-up email option

Now, in addition to setting auto follow-ups based on those who didn’t reply and who didn’t open, you can also set the follow-up to go to everyone who received the original email by choosing All, regardless of their behavior. This is useful for creating for example, a series of welcome emails designed to introduce various features of your product or service to a new subscriber.

The new "All" option will send the follow-up to everyone that was part of the original campaign, regardless of whether they opened or replied.

I’ll be writing a separate article on how to use GMass and this new recurring campaign feature to create a “welcome series” email campaign to new customers. You can use this new option, with a Google Sheets spreadsheet, to fully automate a "welcome series" campaign, if your new customers are added to the spreadsheet automatically every day.

Frequently Asked Questions

Q: What's the big deal about recurring automated email campaigns?

A: The big deal is that now instead of creating and sending a new campaign every day or every week to your new prospects, you can set your campaign up just once and still have it sent to new prospects, just by adding the new prospects to your spreadsheet. You control who gets your sequence of emails by who you add to your spreadsheet.

Q: I've set my campaign to recur daily, but now I've changed my mind and want to stop it. How do I do that?

A: Just find the campaign in your GMass Scheduled Label, open the Draft, click the GMass Settings arrow and click the red Cancel button.

Q: I've set my campaign to recur daily, but now I want to change the spreadsheet it's connected to. How do I do that?

A: Once you've set up an automated recurring email campaign, you can't alter the spreadsheet or the spreadsheet filter it uses. You will need to cancel the campaign and create a new one that is connected to the new spreadsheet.

Q: How are auto follow-ups related to this new capability?

A: If you create a recurring automated email campaign with auto follow-ups configured, then every day when the email campaigns sends to new rows in the spreadsheet, those new email addresses will also receive a sequence of auto follow-up emails based on whether or not they open, reply, or are just a part of the campaign.

Q: If I set a filter when connecting to my Google Docs spreadsheet, when the campaign recurs, will it only send to new rows that match the original spreadsheet filter?

A: Yes, it will. For example, let's say you have a spreadsheet with a column called "DripCampaign" and you've set each row to "yes" or "no" for this column. When you use GMass to connect to the spreadsheet, you set a spreadsheet filter of "DripCampaign=yes". When you set your campaign, you set it to repeat daily. When the campaign looks for new additions to the spreadsheet every day, it will only look for rows where DripCampaign=yes.

Q: I've sent the campaign at 4:00 PM, but I want it to recur daily at 2:00 PM instead of 4:00 PM. How can I change that?

A: Just find the campaign under the GMass Scheduled Label, click the GMass Settings arrow, and change the scheduled time to the next day at 2:00 PM, and then hit the GMass main button.

Sunday, December 4, 2016

How to uninstall GMass

Occasionally, a user is unable to handle all the sales generated by using GMass and therefore wants to uninstall GMass.

If you find yourself in this predicament, this is how you do it. It's a two-step process to fully remove GMass from your Chrome browser and from your Gmail account.

Step 1:

Remove GMass from your browser by navigating Chrome to chrome://extensions, finding GMass in the list of extensions, and either unchecking the Enabled box it or deleting it entirely with the trash can icon.

Step 2:

Disconnect GMass from your Gmail account. Go to Apps Connected to your Google Account, and find GMass, select it, and click REMOVE.

Thursday, December 1, 2016

How I used GMass to buy a brand new 2016 Lexus under invoice cost

My wife and I with our brand new 2016 Lexus NX 200t on August 1, 2016. We used GMass to negotiate the price of the car and never set foot in the dealership other than to pick up the vehicle.

As an email marketing and general purpose mail merge tool for Gmail, GMass can be used in an infinite number of ways. A few months ago in August, I used it to not only buy a new 2016 Lexus NX 200t, but to ensure I paid the lowest possible price.

I used James Bragg's system of buying a new car, which recommends you fax blast a letter detailing the exact car you want to every dealership within a 100 mile radius. You then let the dealerships compete against each other to offer you the lowest possible price. I adapted his method to email, and GMass was the perfect solution to coordinate, track, and automatically follow-up with car dealerships.

Setting up the email campaign to the dealers:

1. Using a combination of and the websites, I spec'd out exactly what I wanted, from options to accessories to acceptable colors.

2. Then, I noted the Invoice Price and the MSRP for inclusion in the email. This way dealerships would know that I did my homework and was a serious buyer.

3. Next, I looked up every dealership within a 100 mile radius of Chicago and called each one and asked the receptionist for the email address of the sales manager. It's important to work with a sales manager as opposed to any old sales associate, because the sales manager has the greatest power to negotiate at-cost or below-cost deals. I placed the sales manager's name, email address, and other contact information in a Google Sheets spreadsheet.

The spreadsheet I made of all Chicago area Lexus dealers and sales managers

4. Next, I used GMass to connect to my spreadsheet and then drafted my email in Gmail. Here's the email:

The mail merge campaign I created to send to the 10 Lexus dealers in Chicago. I'm personalizing each email with the sales manager's name and the dealership name.

Using GMass, I personalized each email with the sales manager's name and the name of the dealership.

5. I included an automatic follow-up to be sent 24 hours later to any salesperson that didn't reply.

Setting an auto email follow-up would trigger a new email 24 hours later to anyone that didn't reply to the original email.

6. Finally, I scheduled my email to go out on the last Tuesday of the month, which in my case was Tuesday, July 26, 2016. Bragg recommends sending your offer on Tuesdays, Wednesdays, and Thursdays close to the end of the month.

7. I hit the GMass button and my campaign was scheduled.

After I sent the email:

1. Within ten minutes of the email being sent, two dealers called with an offer. Lexus of Naperville offered $3,750 off MSRP and Lexus of Highland Park offered $3,033 off MSRP.

2. Because these two dealers called rather than replying to the email, I didn't want them to receive the 24 hour follow-up email. So I manually entered their addresses into the GMass auto follow-up suppression system to ensure they didn't get the 24 hour follow-up.

3. Within the first three hours, five dealerships had replied to my email, either by calling or replying to the email.

4. By the time the auto follow-up went out 24 hours after the original email, only two dealerships hadn't responded, so only two follow-up emails were sent. Both of these dealerships responded within an hour to the follow-up, which is typical. That is the power of automatic follow-up emails...they essentially ensure you get a response. Each manager explained that he didn't work the day before and had just arrived at the office. I suspect neither would have responded if it wasn't for the auto follow-up, because they would have thought that the opportunity was gone since it was 24 hours old, but the auto follow-up email made it seem like the opportunity was still fresh and available. Here's an example of one of the auto follow-up emails:

The auto follow-up email that went out to a dealer 24 hours after the original email, because he hadn't replied yet.

After the initial round of communication, in which all nine dealers responded, I now had 8 offers from 9 dealerships. The 9th dealership did respond to my email but never actually made an offer. Throughout the process, I never set foot in a single dealership. I did it all from home, and apart from having to be on the phone for a few minutes, conducted all of the business by email and in an automated fashion.

Lessons learned from the negotiations:

1. Many dealerships called in response to the email instead of emailing back. I can understand that -- by speaking, they're hoping to lock up the deal right away, and the phone requires two-way communication so it's also validation for the dealer that I'm a legitimate buyer.

2. The car with the exact options I wanted wasn't available at any of the nine dealerships. Why? Because most car manufacturers, including Lexus, package the various options together into two or three different car configurations. Mathematically speaking, if a car offers 10 options, that's 55 different possible configurations of options, and no car manufacturer wants to make 55 different versions of their car. So they make two or three versions, with sets of options they think will be most attractive to buyers. So the car I ended up leasing had more options than the car I detailed out in the email.

2. In one case, the sales manager cornered me: "Tell me where I need to be on price to lock this up." As Bragg will tell you, refuse this question. Stay true to the process of making the dealer offer the lowest price, and you can walk away an honest man. You are communicating to the dealers that you're going to buy from the person that offers the lowest price, and if you spit out a price to lock in a particular dealer, you're not giving every dealer a fair chance to compete for your business. For me, I wanted to a) get the lowest price, and b) conduct my shopping in an ethical manner.

3. What I didn't know prior to speaking with dealerships is that at the time Lexus was offering two incentives on new car leases:
  • Waiving the first month's payment, whatever that may be based on the purchase price, money factor, taxes, and other variables.
  • $500 lease cash applied to the final negotiated price of the car. Meaning, if I negotiated the purchase price of $1,000 off MSRP, the purchase price effectively became $1,500 off MSRP. Every dealer offered this, although some were more transparent about it than others.
4. Leasing a new car in Chicago is always a losing game regardless of how good a negotiator you are, because of Chicago's ridiculous car lease taxes. Despite a recent law that lowered car lease taxes by taxing the monthly payment instead of the full price of the car, you still pay a whopping 17% tax (sales tax and use tax) on the monthly payment of a car lease. My wife's mom is a resident of Wisconsin, however, and she graciously agreed to let us lease the car in her name, saving us a significant $60/month x 36 months = $2,160. That's how much higher Chicago lease taxes are than Milwaukee's.

5. The best offer came from Bredemann Lexus in Glenview, Illinois. The initial offer was:

$1,200 under invoice for any NX 200t that I wanted, and then all other standard fees from Lexus Financial, which amount to:
  • $700 acquisition fee
  • $169 in document fees
  • .00085 money factor, which amounts to a low 2.04% finance rate
  • $500 lease cash-back on the final negotiated price of the car
  • First month's payment covered by dealer
Following Bragg's process, I conducted a second round of negotiations with each dealer to provide them the opportunity to lower their initial price. In this case, Bredemann, who unbeknownst to them, had already offered the best price, agreed to another $120 off the purchase price.

The Lexus lease contract:

The final Lexus lease contract. Note the final negotiated price and the $500 bonus cash. Total monthly payment = $512.79.

Final thoughts:

Using GMass, I negotiated and bought (well, leased) a new 2016 Lexus NX 200t for $41,080, when the sticker price was $44,854. I used scheduling to send the emails early on a Tuesday morning, I used open-tracking to track which dealerships received my offer, and I used auto follow-ups to ping the sales managers that never responded.

Anyone can use GMass to facilitate the same car buying process. The best part -- GMass lets you send up to 50 emails a day for free, so unless you're planning on contacting more than 50 car dealerships (which would be insane), you don't have to pay to conduct this process.

Be someone's car buying hero and share this!

Monday, November 28, 2016

How to resend your Gmail mail merge campaign when you get errors

In the last few days, we've noticed an increase in the number or errors returned to GMass by the Gmail API. The Gmail API is the interface by which GMass connects to your Gmail account and sends email messages through your Gmail account. When the Gmail API spits back an error, it is usually temporary and intermittent and errors received during campaign sending can be overcome by resending your email to just the recipients that resulted in errors in the first place.

These errors are taking place on Google's servers and are not indicative of anything being wrong with GMass.

Usually you will notice errors in the form of a "backend error" from the Gmail API and you will see these in the email confirmation that you get after a campaign finishes sending. You might see:

Backend Error [500]
Errors [
        Message[Backend Error] Location[ - ] Reason[backendError] Domain[global]

listed under the Individual Recipient Send Errors of the email confirmation.

If you see that your mail merge campaign resulted in these errors, you can resend your campaign to just the email addresses that didn't receive it because of this error.

The GMass team is working on a way to automatically re-try sending these emails, but for now, you can follow the instructions below to manually resend your campaign to the errored addresses.

Using the GMass manual follow-up tool, doing so is just a matter of a few clicks.

1. Click the red @ button near the Gmail Search bar. This is the manual follow-up tool.

2. Choose the campaign from the dropdown that experienced the blocking.

3. Under Behaviors, choose Gmail API Errors.

4. Next click the main COMPOSE FOLLOW-UP button.

5. A Gmail Compose window will launch and the To field will be filled with the addresses you want to send to, the addresses that previously blocked your campaign.

6. Next load up the content of your campaign by clicking the GMass Settings arrow and choosing your original campaign from the Load Content dropdown. Your Subject and Message will be set.

7. Lastly, ensure all other GMass Settings are how they should be, such as Tracking of opens and clicks, and make sure the Schedule is set to the desired time of sending.

8. Finally, hit the red GMass button to send. Your campaign will now go to the email addresses that errored out the first time.

Thursday, November 24, 2016

How to include a personalized link in a Gmail email marketing campaign

GMass, the ultimate email marketing tool for Gmail, offers lots of mail merge personalization options, from simple mail-merge personalization to fallback values and even automatic first name detection. Sometimes, you may need to get a little more sophisticated and include a personalized link or URL for each recipient of your email marketing campaign.

The best practice for including a personalized URL is to include the full URL, with personalization in place, or an HTML code snippet of the link, as a column in your Google Docs spreadsheet.

Raw URL Example

Below is an example of a spreadsheet where the personalized link is in raw form, with just the URL specified.

After using GMass to connect to your spreadsheet, the Compose window launches, and your message might look like this:

When your email is sent, the recipient,, will get a message that looks like this:

The link appears just as it did in the row for in the spreadsheet. Hovering over the link shows that it points to the same URL as is displayed.

URL with Anchor Text Example

Next is an example of a spreadsheet where the personalized link is part of an HTML anchor tag, such that meaningful text is displayed that, when clicked, will take the user to the personalized URL. The full <a href> anchor tag will be inserted into the HTML message at the point designated by the {PersonalizedURL} mail merge tag.

After using GMass to connect to your spreadsheet, the Compose window launches, and your message might look like this:

When your email is sent, the recipient will get a message that looks like this:

The anchor text is displayed, since it was surrounded by <a href> tags in the spreadsheet cell, but hovering over the link displays the target URL in the bottom status bar of the browser (highlighted in yellow).

Click tracking will not be applied

If you enable click tracking in GMass settings, these particular links will not be modified, regardless of whether you use the raw URL or anchor text approach. That's because GMass applies click tracking to links before it applies mail merge personalization, so by the time the links are personalized, the click tracking process has already finished altering links in the campaign. In addition, theoretically, because these links are unique to each recipient in the first place, it's not necessary for GMass to click-track them since they are trackable on the web server of the domain in the personalized URL

Do not personalize links directly in the Compose window

The reason we advocate placing the full personalized URL as a column in your spreadsheet is because the Gmail Compose window is prone to altering a personalized link and rendering it a broken link. This is due to how Gmail encodes a message behind the scenes.

In this example:

Do NOT personalize URLs as shown above.

The user has attempted to personalize a URL directly inside the Gmail Compose window, by inserting the mail merge personalization variables as part of the URL. In theory this should accomplish the same objective as placing the full personalized link in the spreadsheet cell, but this actually does not work because Gmail encodes the curly brackets into their HTML-encoded form, replacing the left curly bracket with %7B and the right curly bracket with %7D. This encoding would break the GMass personalization process, causing these merge tags to not be replaced with their appropriate values.


If you need to send personalized URLs as part of a Gmail-based email marketing campaign, include the full personalized URLs, one for each recipient, in your Google Docs spreadsheet rather than including the mail merge personalization variables as part of the link in the Compose window.

Wednesday, November 23, 2016

Why your Gmail account becomes inaccessible when sending a big mail merge campaign

If you've ever been locked out of your Gmail account while sending a large mail merge campaign, you're not alone, and don't be alarmed. It's normal Gmail behavior, and you'll be able to use your account just as soon as sending is complete. During a large mail merge with Gmail, you might see this message telling you "the system encountered a problem" if you're already in your account:

You may see this "Oops" message when trying to check your email while a big mail merge campaign is sending.

Or, if you're trying to reload Gmail in the browser, you might see this "Temporary Error" message:

If you reload Gmail during a big mail merge, you might see this screen.

Why does this happen?

Gmail wasn't originally meant for sending mail merge campaigns or email marketing campaigns. GMass has finagled Gmail to make it possible, but Gmail's User Interface isn't able to process all the network activity that takes place during a mass email send. Whenever you send an email in Gmail, your browser makes several requests to the Gmail server in order to update the User Interface on screen in front of you. When sending hundreds or thousands of individual emails, the User Interface can't keep up with this network activity. Therefore, in order to protect itself from even more network activity, it withholds your access until sending of the email campaign is finished.