[GET] Boost Your Google Organic CTR With This iMacros Script

ebiz101

Power Member
Joined
Feb 16, 2010
Messages
739
Reaction score
174
I decided to create this script to boost google organic ctr based on these articles :

https://moz.com/blog/does-organic-ctr-impact-seo-rankings-new-data

Basically what this script does it goes to google search for your already rank keyword (could be long tail keyword in 5th page for example) and click on your website. It will use backconnect or rotating proxies usa residential ip, change the user agent to mimick different visitors.


Put this code to your macros folder as ctr.js (make sure to change the proxy : port with yours)
Code:
var loop = 50; //number of loop
var proxy = "proxy:port"; //backconnect or rotating proxy, make sure to use 'different ip per http request' setting to get different ip everytime you search
var notfound = ""; //some old imacros version uses #EANF# if string not found

//put these txt files on imacros datasource folder
var inputfile = "keywordurl.txt"; // format : keyword|domain eg: red widget|redwidget.com
var uafile = "ua.txt"; //consist of your user agent. one per line

//headers
var n = "\n"
var headers = "CODE:SET !ERRORIGNORE YES" + n
headers += "SET !TIMEOUT_STEP 0" + n
headers += "SET !TIMEOUT_PAGE 30" + n
headers += 'PROXY ADDRESS=' + proxy + n


var getkeyword = headers
getkeyword +=  "SET !DATASOURCE {{filename}}" + "\n";
getkeyword +=  "SET !DATASOURCE_COLUMNS 1" + "\n";
getkeyword +=  "SET !DATASOURCE_LINE {{linesrc}}" + "\n";
getkeyword +=  "ADD !EXTRACT {{!COL1}}" + "\n";

var goto = headers
goto += 'WAIT SECONDS=2' + n
goto += 'SET !USERAGENT {{uastring}}' + n
goto += "URL GOTO=https://www.google.com/ncr" + n
goto += 'WAIT SECONDS=2' + n
goto += "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:f ATTR=NAME:q CONTENT={{keyword}}" + n
goto += "TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:f ATTR=NAME:btnG" + n
goto += 'WAIT SECONDS=2' + n
goto += 'TAG POS=1 TYPE=DIV ATTR=ID:resultStats EXTRACT=TXT' + n

var clearcache = headers
clearcache += 'CLEAR' + n

var wait1 = headers
wait1 += 'WAIT SECONDS={{sec}}' + n

var findurl = headers
findurl += 'WAIT SECONDS=2' + n
findurl += "TAG POS=1 TYPE=A ATTR=HREF:*{{url}}* EXTRACT=HREF" + n

var clickurl = headers
clickurl += 'SET !USERAGENT {{uastring}}' + n
clickurl += "TAG POS=1 TYPE=A ATTR=HREF:*{{url}}*" + n
clickurl += 'WAIT SECONDS={{rwait}}' + n

var nextpage = headers
nextpage += "TAG POS=1 TYPE=A ATTR=TXT:{{page}}" + n
nextpage += 'WAIT SECONDS=2' + n


for (var linesrc=1; linesrc<=loop; linesrc++){

  //clear cache for new search
  iimPlay(clearcache);
 
  //get random user agent, in this case we have 84 user agents
  rnum = Math.floor((Math.random() * 84) + 1);
  iimSet('linesrc',rnum);
  iimSet('filename',uafile);
  iimPlay(getkeyword);
  uastring = iimGetLastExtract();
 
  //get random url & keyword, in this case we have 5 line of keyword|url
  iimSet('uastring',uastring);
  rnum = Math.floor((Math.random() * 5) + 1);
  iimSet('linesrc',rnum);
  iimSet('filename',inputfile);
  iimPlay(getkeyword);
  url = iimGetLastExtract();
 
  //split keyword & url
  url_array = url.split("|");
  keyword = url_array[0];
  url = url_array[1];
 
  //submit keyword to google
  iimSet("keyword",keyword)
  iimPlay(goto); 
  result = iimGetLastExtract();
 
  //if error, sleep for x secs and continue loop
  if (result == notfound) {
  iimSet('sec',5);
  iimPlay(wait1);
  continue;
  }
 
  //check for url on google serp until page 10
  var page = 2;
  do {
      //find url on google serp
      iimSet("url",url);
      iimPlay(findurl);
      index = iimGetLastExtract();
     
      //check if url exist, else go to next page
      if (index == notfound){
        iimSet('page',page);
        iimPlay(nextpage);
        page++;
      } else {
        //set how long should stay in the page, in this case 6-10 seconds
        rnum = Math.floor((Math.random() * 10) + 6);
       
        //click url
        iimSet('rwait',rnum);
        iimSet('url',url);
        iimSet('uastring',uastring);
        iimPlay(clickurl);
       
        }
  } while ((index == notfound) && (page <= 10));

}

Save this to your datasource folder as ua.txt
Code:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; WOW64; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/602.3.12 (KHTML, like Gecko) Version/10.0.2 Safari/602.3.12
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/602.4.8 (KHTML, like Gecko) Version/10.0.3 Safari/602.4.8
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0
Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:50.0) Gecko/20100101 Firefox/50.0
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/602.4.8 (KHTML, like Gecko) Version/10.0.3 Safari/602.4.8
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36
Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/55.0.2883.87 Chrome/55.0.2883.87 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:50.0) Gecko/20100101 Firefox/50.0
Mozilla/5.0 (X11; Linux x86_64; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Windows NT 6.3; WOW64; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/602.3.12 (KHTML, like Gecko) Version/10.0.2 Safari/602.3.12
Mozilla/5.0 (X11; Linux x86_64; rv:50.0) Gecko/20100101 Firefox/50.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:50.0) Gecko/20100101 Firefox/50.0
Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36
Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36
Mozilla/5.0 (Windows NT 6.1; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36
Mozilla/5.0 (Windows NT 6.3; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; Trident/5.0)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit/602.2.14 (KHTML, like Gecko) Version/10.0.1 Safari/602.2.14
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/601.7.7 (KHTML, like Gecko) Version/9.1.2 Safari/601.7.7
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/602.3.12 (KHTML, like Gecko) Version/10.0.2 Safari/602.3.12
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0; Trident/5.0)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586
Mozilla/5.0 (Windows NT 5.1; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0
Mozilla/5.0 (iPad; CPU OS 10_2 like Mac OS X) AppleWebKit/602.3.12 (KHTML, like Gecko) Version/10.0 Mobile/14C92 Safari/602.1
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/602.4.8 (KHTML, like Gecko) Version/10.0.3 Safari/602.4.8
Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12) AppleWebKit/602.1.50 (KHTML, like Gecko) Version/10.0 Safari/602.1.50
Mozilla/5.0 (Windows NT 6.1; rv:50.0) Gecko/20100101 Firefox/50.0
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:51.0) Gecko/20100101 Firefox/51.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/53.0.2785.143 Chrome/53.0.2785.143 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/600.5.17 (KHTML, like Gecko) Version/8.0.5 Safari/600.5.17
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.100 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/601.7.8 (KHTML, like Gecko) Version/9.1.3 Safari/537.86.7
Mozilla/5.0 (iPad; CPU OS 10_2_1 like Mac OS X) AppleWebKit/602.4.6 (KHTML, like Gecko) Version/10.0 Mobile/14D27 Safari/602.1
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:50.0) Gecko/20100101 Firefox/50.0
Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; Touch; rv:11.0) like Gecko
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36

Save this to your datasource folder as keywordurl.txt
Code:
your keyword1|yourdomain.com
your keyword2|yourdomain.com
your keyword3|yourdomain.com
your keyword4|yourdomain.com
your keyword5|yourdomain.com

Enjoy...
 
Good work, but isn't it better if this is running on a machine away than your residential one.
 
I'm a newbie here. How do you create the script is there a detailed guide somewhere? Sorry for the dumb question just want to learn.

Thanks in advance
 
does this work?? thanks thou

Yup its working for me. From time to time if google made changes on their serp interface you need to tweak a lil bit to match the new footprint

Good work, but isn't it better if this is running on a machine away than your residential one.

Yup I ran this in my vps. Residential ip means a rotating proxy service that uses usa residential ip. You'll find it here on bst section. So everytime you request, it uses different ip address

I'm a newbie here. How do you create the script is there a detailed guide somewhere? Sorry for the dumb question just want to learn.

Thanks in advance

You just need to install imacros addon on your browser (i use firefox) and copy each file to the designated folder. There's alot resource out there about imacros its free useful tool to automate small task
 
Great script man! Do you think it will work with free proxies?
 
Great script man! Do you think it will work with free proxies?

It should work but i'm not sure if its effective. it need to be anon though, also you need to change the code because right now its only using one proxy and the proxy provider will change on each request
 
Much appreciated for the guidance and I will look into that for sure! You da man!
 
I think this needs a proxy.txt file also. To use with multiple proxies.

Can you update with it?
 
This uses backconnect proxies such stormproxies or microleaves ($4), so you just need one proxy and every http request you'll get new ip address from ten of thousands ip address on their pool. This is the best solution so far. At the moment we have no plan to update the script, perhaps in the future we'll have different version for people using regular proxies and upload it to txt file
 
Great work. I have alrady use some tool like Google search bot can't remember the exact name. Do same task as yours, changine ips, go though with diffrent keywords, change the browsers and click the page on gsrp. but used that tool for months but didnt see any improvement for ranking
 
I didn't think by using this there's any SERP change or improvement. If anyone of you using it and find some results please do mention here.
 
Great work. I have alrady use some tool like Google search bot can't remember the exact name. Do same task as yours, changine ips, go though with diffrent keywords, change the browsers and click the page on gsrp. but used that tool for months but didnt see any improvement for ranking

I didn't think by using this there's any SERP change or improvement. If anyone of you using it and find some results please do mention here.


Thanks... Nothing is certain in SEO you just need to try it yourself just like hundreds of other ranking factors..
 
Back
Top