Considered greater precision of value and increment (better code)
diff --git a/erpnext/controllers/item_variant.py b/erpnext/controllers/item_variant.py
index c80a5f3..0e1d126 100644
--- a/erpnext/controllers/item_variant.py
+++ b/erpnext/controllers/item_variant.py
@@ -51,7 +51,7 @@
 				frappe.throw(_("Increment for Attribute {0} cannot be 0").format(attribute))
 
 			is_in_range = from_range <= flt(value) <= to_range
-			precision = max(len(cstr(value).split(".")[-1].rstrip("0")), len(cstr(increment).split(".")[-1].rstrip("0")))
+			precision = max(len(cstr(v).split(".")[-1].rstrip("0")) for v in (value, increment))
 			#avoid precision error by rounding the remainder
 			remainder = flt((flt(value) - from_range) % increment, precision)