The coin side is determied by using a random number that is written to the Bitcoin ledger roughly every 5–15 minutes — unpredictable, permanent, controlled by no one. Even = Heads. Odd = Tails.
The result comes from the last digit of a Bitcoin block hash, a number produced automatically by thousands of computers worldwide on the Bitcoin network every few minutes the moment a new bitcoin block is mined.
Neither player controls it. Neither player can predict it.
Even = Heads. Odd = Tails. Exactly 50/50 by design.
The hash shown above is permanent and public. Anyone can verify it at mempool.space