diff --git a/src/main/java/com/googlesource/gerrit/plugins/webhooks/Configuration.java b/src/main/java/com/googlesource/gerrit/plugins/webhooks/Configuration.java
index 3c3f67b..fbe38bc 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/webhooks/Configuration.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/webhooks/Configuration.java
@@ -37,6 +37,7 @@
   public static final String MAX_ALLOWED_TRIES = "maxAllowedTries";
   public static final String MAX_ALLOWED_RETRY_INTERVAL = "maxAllowedRetryInterval";
 
+  public static final int UNSET_CONFIG_INT = -1;
   public static final int DEFAULT_TIMEOUT_MS = 5000;
   public static final int DEFAULT_MAX_TRIES = 5;
   public static final int DEFAULT_RETRY_INTERVAL = 1000;
@@ -69,7 +70,7 @@
     allowedUrlPatterns = cfg.getStringList(ALLOWED_URL_PATTERN);
     maxAllowedConnectionTimeout = cfg.getInt(MAX_ALLOWED_CONNECTION_TIMEOUT, 0);
     maxAllowedSocketTimeout = cfg.getInt(MAX_ALLOWED_SOCKET_TIMEOUT, 0);
-    maxAllowedTries = cfg.getInt(MAX_ALLOWED_TRIES, 0);
+    maxAllowedTries = cfg.getInt(MAX_ALLOWED_TRIES, UNSET_CONFIG_INT);
     maxAllowedRetryInterval = cfg.getInt(MAX_ALLOWED_RETRY_INTERVAL, 0);
   }
 
diff --git a/src/main/java/com/googlesource/gerrit/plugins/webhooks/RemoteConfig.java b/src/main/java/com/googlesource/gerrit/plugins/webhooks/RemoteConfig.java
index 5b9686a..2949b90 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/webhooks/RemoteConfig.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/webhooks/RemoteConfig.java
@@ -14,6 +14,8 @@
 
 package com.googlesource.gerrit.plugins.webhooks;
 
+import static com.googlesource.gerrit.plugins.webhooks.Configuration.UNSET_CONFIG_INT;
+
 import com.google.inject.Inject;
 import com.google.inject.assistedinject.Assisted;
 import java.util.Arrays;
@@ -83,9 +85,10 @@
   }
 
   public int getMaxTries() {
+    int maxAllowedRetries = global.getMaxAllowedTries();
     int maxTries = config.getInt(REMOTE, name, MAX_TRIES, global.getMaxTries());
-    return (global.getMaxAllowedTries() > 0)
-        ? Math.min(maxTries, global.getMaxAllowedTries())
+    return (maxAllowedRetries != UNSET_CONFIG_INT)
+        ? Math.min(maxTries, maxAllowedRetries)
         : maxTries;
   }
 
diff --git a/src/main/resources/Documentation/config.md b/src/main/resources/Documentation/config.md
index f4b3250..af1fbed 100644
--- a/src/main/resources/Documentation/config.md
+++ b/src/main/resources/Documentation/config.md
@@ -89,6 +89,7 @@
 @PLUGIN@.maxAllowedTries
 :   Maximum allowed value for the retries. If a value greater than this is
     configured in the @PLUGIN@.config, this value will be chosen instead.
+    If this is set to 0, retries are disabled.
 
 @PLUGIN@.maxAllowedRetryInterval
 :   Maximum allowed value for the retry interval. If a value greater than
