In surprise sets, the probability is based on the guest. So if there are 2 rewards of 50% weightage each, every time a guest is supposed to receive a reward, he has a 50% chance of receiving either one. So there could be a situation where you see 51/52% of Reward A and 49/48% of Reward B. This is because an exact 50% allocation cannot be achieved in dynamically changing pools (example Sign-Ups) as the pool volume will keep changing.
If further assistance is required, submit a ticket to Punchh Support. (For help submitting a ticket, click here)