Random Branching code not retruning 50/50 split

Hello all,
I recently used a branching code posted on a previous thread. My aim is to branch two sets of questions, one question to 50% of the sample, and the other question to the remaining 50%.
We did a pretest of the form administering it to 19 people, the form contained two branching codes. With the first branching question module '0' was returned 6 out 19 times, while in the second branching question module 0 was returned 7 times. Both times module 1 was returned more times than module 0.
Is there a reason why module 1 is returned more often than module 0, and is there a way to ensure that both modules are returned an equal number of times?

The code I used in the end was:
once( concat(( round(random() * 100, 0) mod 2 ), " "))

I would really appreciate your help, many thanks in advance,


@Henri It branches randomly, so as the sample size gets larger and larger, it will eventually be 50/50.

Many thanks for the confirmation.

To guarantee an exact 50/50 split you would need to pre-assign branch assignments to the entire sample, probably using a csv with the assignments stored in it. Then you could pull them into the survey using pulldata() for each case.

Otherwise, as Yaw stated; the larger the sample, the more likely it will be close to 50/50 - although exactly 50/50 is still pretty unlikely regardless of sample size.