How to Find Anyone's Email Address using Google Sheets using Gamalogic API

For every digital marketer's building, an audience for an email marketing campaign becomes of utmost importance. If you have done some research you could find several methods online like creating blogs, sign up pages and subscribe pages with double opt-in option, by incentivizing your service, social media inquiry forms, etc.

A successful campaign needs better research and patience.

Personally, from my experience, I didn’t get any better experience from email list vendors or data vendors. Instead, when you create from scratch makes sense. Build the list according to the niche makes the campaign more successful thus make an email marketing campaign potentially an excellent solution for massive outreach campaigns.

In this blog, I will share some simple techniques to create an email address list using a simple and effective technique by Finding Anyone's Email Address using google sheets and email address validation API.

Building a targeted audience is an art

Marketers who generate new prospects, lead generation or looking to get in touch with a CEO, finding email addresses is difficult and time-consuming. This tutorial helps you to find any email address for free through trial-and-error method.

As a digital marketer each marketing niche there will be an online community. That is for sure you can figure out in Facebook groups, LinkedIn groups, Reddit, etc. Scraping information like name and URL of the company working will help a lot to guess anyone's email address.

You can search for similar tools like Email lookup, Email Finder, Email Guessing tools, LinkedIn email finder, prospect finder, Sales Navigator for Gmail, Email Permutator, etc.

List of the tools involved to guess someone’s email address.
• Gamalogic Email validation API

• Google sheets

Let’s jump into the tutorial. and for better knowledge, we use some example Jessica Albert who works at

Step 1

Open a new Google sheet. In first-row Cell A1 add First Name, Cell B1 add Second Name and Cell C1 Company URL last Cell D1 Email address.

In the first column i.e., column A list first name of the person that you need to find the email address here we add Jessica. In the next column i.e. column B list the second name eg: Albert and in column C list the domain or URLs like,, etc or the domain of the company that the person works like, In this tutorial we keep These are the inputs that you need to give to a list of possible email addresses. You can go through the below image for reference

Listing the email address pattern here will be done by the script automatically which eliminates the work like manually inputting the common permutations for someone’s email. No external tools needed here to figure out the email address pattern. These patterns are used mostly by the email administrator of the company. This helps us to guess the email address. This is a trial and error method. If we are lucky, we can find our prospect here. Let’s hope for the best.

We make our best guess using the following patterns.

[First Name]
[Last Name]
First Name].[Last Name]
[First Name][Last Name]
[First Name]_[Last Name]
[First Name]-[Last Name]
[Last Name]_[First Name]
[Last Name]-[First Name]
[Last Name].[First Name]
[Last Name][First Name]
[First Name]_[First letter of Last Name]
[First letter on first name]_[Last Name]
[First Name].[First letter of Last Name]
[First letter on first name].[Last Name]
[First Name]-[First letter of Last Name]
[First letter on first name]-[Last Name]
[First Name][First letter of Last Name]
[First letter on first name][Last Name]
[First letter on first name].[ First letter of Last Name]
[First letter on first name][ First letter of Last Name]

Step 2

Navigate to Tools from the menu bar and click Script Editor from the list. Then a new window opens up with a new file named where you need to write the script.

Step 3

As mentioned before now copy the below script and paste in which opened earlier and then save it.

function start() {
var apikey = 'API_KEY'
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var row_list = ss.getDataRange().getValues()
if (row_list.length <51){
email_list = email_address_bulider(row_list)
Browser.msgBox("Maximum 50 list only allowed")
payload = create_payload(email_list)
result_list = verify_list(payload,apikey)
if (result_list.getResponseCode() == 200) {
var params = JSON.parse(result_list.getContentText());
var result = params.gamalogic_emailid_vrfy;
var list_result = grid_result(result)
var list_ = list_result[0];
colors_list = list_result[1];
sheet.getRange(1,1).setValue(['Credits Balance']).setFontWeight("bold");
Browser.msgBox("Error in you response")
function email_address_bulider(row_list) {
var email_list = [];
for(i=1;i< row_list.length;i++)
FN=row_list[i][0].split(" ").join("").toLowerCase();
LN=row_list[i][1].split(" ").join("").toLowerCase();
URL=row_list[i][2].split(" ").join("").toLowerCase().
return email_list
function create_payload(email_list) {
var payload = {"gamalogic_emailid_vrfy": []}
for (var i =0; i < email_list.length ; i++)
payload["gamalogic_emailid_vrfy"].push({"emailid" : email_list[i] });
payload =JSON.stringify(payload)
return payload
function verify_list(payload,apikey) {
var url = ""+apikey
var options =
"method" : "GET",
"payload" : payload,
'contentType': 'application/json'
var result = UrlFetchApp.fetch(url, options);
return result
function grid_result(result) {
no_of_list = result.length/20
array_result = new Array(no_of_list);
var color = [];
for (var k=0; k< no_of_list; k++){
array_result[k] = new Array(20).fill(null);
color[k] = new Array(20).fill(null);
for (var i =0,j=0; i< 20; i++)
if (result[i+(k*20)]["is_valid"] && !(result[i+(k*20)]
["is_duplicate"]) && !(result[i+(k*20)]
["is_disposable"]) && !(result[i+(k*20)]["is_unknown"]) )
array_result[k][j]= result[i+(k*20)]["emailid"]
if (result[i+(k*20)]["is_catchall"])
{color[k][j] = "yellow";}
else{color[k][j] = "green";}
} } }
return [array_result, color];
function getBalance(apikey) {
var response = UrlFetchApp.fetch(""+apikey);
var json = response.getContentText();
var data = JSON.parse(json);
var sheet = SpreadsheetApp.getActiveSheet();

Step 4

You will need to change the API key from line 2. Copy Gamalogic API key from the dashboard (You will need to register with to get an API Key) and replace it with APIKEY in the script. Before running the script make sure the function about to run is "start()". Then run the script. You will need to allow your google account to give access to the google script for further.

For best results use email validator to remove the invalid address from the list

Why we use email validation to guess the someone’s email contact?

In the script, the list of the permuted email list is sent for email validation or email verification this is to remove the invalid email address thus preventing from email sending the spam box or get bounced. Know more why we should validate email address list

You will see the script will start and waiting for results to be listed. And the results are shown in the sheets within a few minutes. Cells in green are Valid address, Yellow catch-all or accept all emails. In the header, the balance credits will be displayed. 50 number of individual’s email addresses will be guessed at the time.

You can have 500 email address guesses for free if your register with us now. Grab this offer.

Below we have our video tutorial and comment on your suggestions. Happy Successful Email Hunting

Get started today!

Get instant credits for free on registering with us.