diff --git a/redis/redis.go b/redis/redis.go
index cb305b8801abe4b3df18ecf5d789cfb5ca58396c..98972ed47dd4b2d58667a83ceff76db2f5d59f1f 100644
--- a/redis/redis.go
+++ b/redis/redis.go
@@ -308,3 +308,29 @@ func (r ClientWithHelpers) KeepLockKeyAlive(key string, expiration time.Duration
 
 	_ = r.Client.Expire(ctx, key, expiration)
 }
+
+func (r ClientWithHelpers) IncrementCounter(key string) *int64 {
+	if !r.IsConnected() {
+		return nil
+	}
+
+	val, err := r.Client.Incr(ctx, key).Result()
+	if err != nil {
+		return nil
+	}
+
+	return &val
+}
+
+func (r ClientWithHelpers) DecrementCounter(key string) *int64 {
+	if !r.IsConnected() {
+		return nil
+	}
+
+	val, err := r.Client.Decr(ctx, key).Result()
+	if err != nil {
+		return nil
+	}
+
+	return &val
+}