A computer system, comprising: one or more processors; and a memory coupled to the one or more processors; wherein the one or more processors are configured to: continuously monitor, in real-time, metrics from users of a control group and metrics from users of a treatment group, wherein users in the control group test a control version of a software product, wherein users in the treatment group test a treatment version of the software product; assign a first percentage of users to the control group and a second percentage of users to the treatment group before the continuous monitoring occurs, wherein the first percentage of users and the second percentage of users represent an estimate of metric data needed to achieve a target error rate; based on the monitored metrics, determine in real-time whether a sequential probability ratio test, SPRT, detects a statistically significant effect between the users in the treatment group from the users in the control group; determine that the statistically significant effect is not detected; calculate a new value for the first percentage of users assigned to the control group and a new value for the second percentage of users assigned to the treatment group; assign new users to the control group and the treatment group in accordance with the new value for the first percentage of users assigned to the control group and the new value for the second percentage of users assigned to the treatment group; and continuously evaluate the metrics, in real-time, from the control version with metrics from the treatment version until the SPRT indicates statistical significance. one or more processors; and a memory coupled to the one or more processors; wherein the one or more processors are configured to: continuously monitor, in real-time, metrics from users of a control group and metrics from users of a treatment group, wherein users in the control group test a control version of a software product, wherein users in the treatment group test a treatment version of the software product; assign a first percentage of users to the control group and a second percentage of users to the treatment group before the continuous monitoring occurs, wherein the first percentage of users and the second percentage of users represent an estimate of metric data needed to achieve a target error rate; based on the monitored metrics, determine in real-time whether a sequential probability ratio test, SPRT, detects a statistically significant effect between the users in the treatment group from the users in the control group; determine that the statistically significant effect is not detected; calculate a new value for the first percentage of users assigned to the control group and a new value for the second percentage of users assigned to the treatment group; assign new users to the control group and the treatment group in accordance with the new value for the first percentage of users assigned to the control group and the new value for the second percentage of users assigned to the treatment group; and continuously evaluate the metrics, in real-time, from the control version with metrics from the treatment version until the SPRT indicates statistical significance. continuously monitor, in real-time, metrics from users of a control group and metrics from users of a treatment group, wherein users in the control group test a control version of a software product, wherein users in the treatment group test a treatment version of the software product; assign a first percentage of users to the control group and a second percentage of users to the treatment group before the continuous monitoring occurs, wherein the first percentage of users and the second percentage of users represent an estimate of metric data needed to achieve a target error rate; based on the monitored metrics, determine in real-time whether a sequential probability ratio test, SPRT, detects a statistically significant effect between the users in the treatment group from the users in the control group; determine that the statistically significant effect is not detected; calculate a new value for the first percentage of users assigned to the control group and a new value for the second percentage of users assigned to the treatment group; assign new users to the control group and the treatment group in accordance with the new value for the first percentage of users assigned to the control group and the new value for the second percentage of users assigned to the treatment group; and continuously evaluate the metrics, in real-time, from the control version with metrics from the treatment version until the SPRT indicates statistical significance.