Thairath Online
Thairath Online

Suspicion Over QR Code and Barcode on Ballots: When Voting May Not Be Secret

Theissue13 Feb 2026 12:47 GMT+7

Share article

Suspicion Over QR Code and Barcode on Ballots: When Voting May Not Be Secret

Suspicion surrounds the "QR code-barcode" on ballots, raising concerns that voting may not be secret amid public doubts that this might violate the constitutional principle of direct and secret voting. However, examination shows that sample ballots previously published by the Election Commission (EC) do not exhibit such suspicious features.

A social media storm erupted after concerns were raised about the barcode at the bottom of the party-list MP ballot. Tests showed that the 8-digit number matches the stub number which voters must sign before receiving their ballot. Similarly, the QR code on the bottom of the constituency MP ballot led many to question if this violates Section 85 of the 2017 Constitution, which mandates "direct and secret voting."

Recently, Mr. Wiroj Lakkhanaadisorn, former party-list MP for the People's Party (PChon), posted on his personal Facebook about this issue, stating: "Regarding the barcode, it’s very easy to prove. If it’s a number uniquely linking to the stub of each ballot, then the EC has broken the law."


The barcode or QR code on both the green ballot (for constituency MPs) and the pink ballot (for party-list MPs) is a serious issue that the EC cannot remain silent about.

If it’s a repeated code, where every ballot has the same code to confirm it’s an official ballot, then this is not a problem.

But if the barcode or QR code is a unique code (Unique Running Code) that matches the ballot’s stub, it would immediately reveal how each voter cast their vote.

If that is the case, the EC would be violating both Section 85 of the constitution, which requires voting to be secret, and Section 96 of the MP Election Act, which forbids marking ballots.

To be clear, if each ballot has a unique code matching the stub signed by the voter, it would identify which voter voted for whom.

The EC should not remain silent. Just scan the barcodes on ballots with their stubs inside ballot boxes, leftover ballots, and unused ballots, and show the media. That alone would reveal whether the EC broke the law.


Ballots have a high production cost.



Mr. Somchai Srisutthiyakorn, former Election Commissioner, posted on his Facebook about this case, noting that the ballots used by the EC are costly. The pink ballots cost 1.40 baht each, green ballots 1.20 baht, and yellow ballots 1.00 baht, with three printing houses producing about 56 million ballots each.

With such a high price, there must be something special that ordinary people don’t know.

The printing is elaborate, including specially designed patterns, special watermarks visible only under ultraviolet light, and microtext so tiny it requires magnification—all secret codes created to prevent ballot forgery.

This aligns with Section 129 of the MP Election regulations, which states, “The committee may specify additional codes, marks, or other details on ballots without prior notice to prevent forgery.”

Emphasizing that these are to prevent forgery.

Emphasizing that these are not to allow retrospective tracking to identify which book, number, or voter corresponds to the stub’s signature, which is cross-checked with the voter registration list (MP 1/3) that records the voter’s order matching the ballot’s sequence number.


Simply put, if each ballot’s code allows backtracking to the book and number, then it would immediately reveal who voted for whom.

The pink ballot has a barcode that, when scanned, shows the ballot number.

The “ballot number” is generated by a formula that can be traced back to the “book number.”

The distribution of books is controlled by polling station, and by checking the voter registration list MP 1/3, one can identify the voter.

Article 85 of the constitution specifies that MP elections must be conducted by direct and “secret” voting.

Whether this issue escalates or ends quietly remains to be seen.