Bot Traffic Blocking

MoEngage tries to prevent all the traffic from bots as they may impact the DAU/MAU and billing. Due to bots, there would be web activities that have not been performed by actual users and it results in higher DAU, MAU.

Bots, such as crawlers, spiders, and search engine bots, download and index content from websites all over the internet. MoEngage uses a user agent filtering method to prevent bots from using its functionality and block the bot traffic.

Default Blocked Bot List

Default Blocked Bot List
Applebot - http://www.apple.com/go/applebot
PetalBot - https://webmaster.petalsearch.com/site/petalbot
Pingbot - www.pingdom.com
Proximic - https://www.comscore.com/Web-Crawler
AdsBot-Google - www.google.com/adsbot
Googlebot - http://www.google.com/bot.html, http://www.googlebot.com/bot.html
Cincraw	- http://cincrawdata.net/bot
Crawler	- headlessChrome
SnapchatBot - https://businesshelp.snapchat.com/s/article/adsbot-crawler
SnapchatAds - https://businesshelp.snapchat.com/s/article/adsbot-crawler
YandexRenderResourcesBot - http://yandex.com/bots
Bingbot - http://www.bing.com/bingbot.htm
Slurp -  http://help.yahoo.com/help/us/ysearch/slurp
MicrosoftPreview - https://aka.ms/MicrosoftPreview
Baiduspider/2.0 - http://www.baidu.com/search/spider.html

Integration Changes

If the users want to block more bots. They can do it during integration with key bots_list: ["bot_name"]

Here, "bot_name" will be the userAgent of the bot or a unique Identifier in the userAgent.

JavaScript
<script type="text/javascript">
      
var moeDataCenter = "{DC}"; // Replace "DC" with the actual Data center value from the above table
var moeAppID = "{AppID}"; // Replace "AppID" available in the settings page of MoEngage Dashboard.
      
!function(e,n,i,t,a,r,o,d){if(!moeDataCenter||!moeDataCenter.match(/^dc_[0-9]+$/gm))return console.error("Data center has not been passed correctly. Please follow the SDK installation instruction carefully.");var s=e[a]=e[a]||[];if(s.invoked=0,s.initialised>0||s.invoked>0)return console.error("MoEngage Web SDK initialised multiple times. Please integrate the Web SDK only once!"),!1;e.moengage_object=a;var l={},g=function n(i){return function(){for(var n=arguments.length,t=Array(n),a=0;a<n;a++)t[a]=arguments[a];(e.moengage_q=e.moengage_q||[]).push({f:i,a:t})}},u=["track_event","add_user_attribute","add_first_name","add_last_name","add_email","add_mobile","add_user_name","add_gender","add_birthday","destroy_session","add_unique_user_id","update_unique_user_id","moe_events","call_web_push","track","location_type_attribute"],m={onsite:["getData","registerCallback"]};for(var c in u)l[u[c]]=g(u[c]);for(var v in m)for(var f in m[v])null==l[v]&&(l[v]={}),l[v][m[v][f]]=g(v+"."+m[v][f]);r=n.createElement(i),o=n.getElementsByTagName("head")[0],r.async=1,r.src=t,o.appendChild(r),e.moe=e.moe||function(){return(s.invoked=s.invoked+1,s.invoked>1)?(console.error("MoEngage Web SDK initialised multiple times. Please integrate the Web SDK only once!"),!1):(d=arguments.length<=0?void 0:arguments[0],l)},r.addEventListener("load",function(){if(d)return e[a]=e.moe(d),e[a].initialised=e[a].initialised+1||1,!0}),r.addEventListener("error",function(){return console.error("Moengage Web SDK loading failed."),!1})}(window,document,"script","https://cdn.moengage.com/release/"+moeDataCenter+"/moe_webSdk.min.latest.js","Moengage");

Moengage = moe({
  app_id: moeAppID,
  bots_list: ["bot_name"],
});

</script>
Was this article helpful?
0 out of 0 found this helpful

How can we improve this article?