FairDraw

Bots and syndicates: what actually stops them

Operators are banning high-volume players and talking about bots. The data says the problem is mostly arithmetic, not software, and the fixes are design changes you can make this month.

Who is actually buying late

Between October and November 2026 we followed 1,288 competition closes across 22 UK sites, and read the public entry lists of 154 finished competitions on sites that publish them. Three things stood out.

None of that is touched by CAPTCHAs, rate limits or device fingerprinting. The buyer is a person with a card who passed your checks.

1. Score the maths, not the behaviour

Stamp every ticket purchase with the competition's state at that moment: tickets sold, unclaimed prize value, minutes to close. From those you get the expected value of that ticket at the time it was bought. A regular customer's purchases are scattered with respect to expected value; a syndicate account's cluster where it is highest, across competitions and across weeks. Rank accounts by their average expected value at purchase against the population.

It is hard to evade without giving up the edge, because the only way to look ordinary is to buy when it isn't profitable. It needs no fingerprinting, and it links syndicate accounts to each other, since they all appear at the same moments on the same competitions. It runs on data you already hold: your order table and your prize ledger.

2. Remove the buyout point

Scoring tells you who. These stop the giveaway.

3. Check your own draws

If you are going to tell customers your draw is random, be able to show it. The draw-position test takes your completed-competitions page and tells you in an afternoon whether winning tickets land where a fair draw would put them. Run it before someone else does. Commit-and-reveal seeds, or a draw under independent supervision, let you publish the proof rather than the claim.

What not to do

Disclosure: the author built and runs a read-only alert tool that reads the same public pages described here. That is how these numbers were measured. See about and disclosure.