diff --git a/README.md b/README.md
index 0206de6..65a5f74 100644
--- a/README.md
+++ b/README.md
@@ -36,7 +36,6 @@
     --since 2000-06-01 \
     --aggregate email_hour \
     --url http://gerrit.mycompany.com \
-    --botlike-filename-regexps='.+\.xml,.+\.bzl,BUILD,WORKSPACE,\.gitignore,plugins/,\.settings' \
     -e gerrit \
     --username gerrit-api-username \
     --password gerrit-api-password
@@ -64,8 +63,6 @@
     the system temporary directory
 - -a --email-aliases (*optional*) "emails to author alias" input data path.
 - -k --ignore-ssl-cert allows to proceed even for server connections otherwise considered insecure.
-- -n --botlike-filename-regexps comma separated list of regexps that identify a bot-like commit, commits that modify only files whose name is a match will be flagged as bot-like
-
 
   CSVs with 3 columns are expected in input.
 
diff --git a/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/job/Main.scala b/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/job/Main.scala
index 9b8ad85..6f51c0d 100644
--- a/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/job/Main.scala
+++ b/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/job/Main.scala
@@ -81,10 +81,6 @@
       opt[Boolean]('r', "extract-branches") optional () action { (input, c) =>
         c.copy(extractBranches = Some(input))
       } text "enables branches extraction for each commit"
-
-      opt[String]('n', "botlike-filename-regexps") optional () action { (input, c) =>
-        c.copy(botLikeRegexps = Some(input))
-      } text "comma separated list of regexps that identify a bot-like commit, commits that modify only files whose name is a match will be flagged as bot-like"
     }
 
   cliOptionParser.parse(args, GerritEndpointConfig()) match {
diff --git a/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/model/GerritEndpointConfig.scala b/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/model/GerritEndpointConfig.scala
index fdee284..c853b2e 100644
--- a/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/model/GerritEndpointConfig.scala
+++ b/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/model/GerritEndpointConfig.scala
@@ -33,8 +33,7 @@
     username: Option[String] = None,
     password: Option[String] = None,
     ignoreSSLCert: Option[Boolean] = None,
-    extractBranches: Option[Boolean] = None,
-    botLikeRegexps: Option[String] = None) {
+    extractBranches: Option[Boolean] = None) {
 
   val gerritApiConnection: GerritConnectivity = new GerritConnectivity(username, password, ignoreSSLCert.getOrElse(false))
 
@@ -55,8 +54,7 @@
     "since"            -> since.map(format.format),
     "until"            -> until.map(format.format),
     "aggregate"        -> aggregate,
-    "extract-branches" -> extractBranches.map(_.toString),
-    "botlike-filename-regexps" -> botLikeRegexps.map(URLEncoder.encode(_, "UTF-8"))
+    "extract-branches" -> extractBranches.map(_.toString)
   ).flatMap(queryOpt).mkString("?", "&", "")
 
   def contributorsUrl(projectName: String): Option[String] =
diff --git a/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/plugin/ProcessGitCommitsCommand.scala b/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/plugin/ProcessGitCommitsCommand.scala
index 4bb9a97..7fa8239 100644
--- a/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/plugin/ProcessGitCommitsCommand.scala
+++ b/gitcommits/src/main/scala/com/gerritforge/analytics/gitcommits/plugin/ProcessGitCommitsCommand.scala
@@ -57,13 +57,6 @@
              usage = "enables branches extraction for each commit")
   var extractBranches: Boolean = false
 
-
-  @ArgOption(name = "--botlike-filename-regexps",
-    aliases = Array("-n"),
-    usage = "comma separated list of regexps that identify a bot-like commit, commits that modify only files whose name is a match will be flagged as bot-like")
-  var botLikeRegexps: String = ""
-
-
   override def run() {
     implicit val config = GerritEndpointConfig(gerritConfig.getListenUrl(),
                                                prefix =
@@ -74,9 +67,7 @@
                                                endDate,
                                                aggregate,
                                                emailAlias,
-                                               ignoreSSLCert=Some(ignoreSSLCert),
-                                               botLikeRegexps=botLikeRegexps
-    )
+                                               ignoreSSLCert=Some(ignoreSSLCert))
 
     implicit val spark: SparkSession = SparkSession
       .builder()
