diff --git a/lib/flipper/gates/percentage_of_actors.rb b/lib/flipper/gates/percentage_of_actors.rb
index <HASH>..<HASH> 100644
--- a/lib/flipper/gates/percentage_of_actors.rb
+++ b/lib/flipper/gates/percentage_of_actors.rb
@@ -10,17 +10,13 @@ module Flipper
       end
 
       def open?(thing)
-        percentage = toggle.value
+        percentage = toggle.value.to_i
 
-        if percentage.nil?
-          false
+        if Types::Actor.wrappable?(thing)
+          actor = Types::Actor.wrap(thing)
+          Zlib.crc32(actor.value) % 100 < percentage
         else
-          if Types::Actor.wrappable?(thing)
-            actor = Types::Actor.wrap(thing)
-            Zlib.crc32(actor.value) % 100 < percentage
-          else
-            false
-          end
+          false
         end
       end
 
diff --git a/lib/flipper/gates/percentage_of_random.rb b/lib/flipper/gates/percentage_of_random.rb
index <HASH>..<HASH> 100644
--- a/lib/flipper/gates/percentage_of_random.rb
+++ b/lib/flipper/gates/percentage_of_random.rb
@@ -8,13 +8,9 @@ module Flipper
       end
 
       def open?(actor)
-        percentage = toggle.value
+        percentage = toggle.value.to_i
 
-        if percentage.nil?
-          false
-        else
-          rand < (percentage / 100.0)
-        end
+        rand < (percentage / 100.0)
       end
 
       def protects?(thing)
Fixing typecasting for percentage toggle values

- fixes previous failures, should behave exactly the same while simplifying the
logic to boot