GTIDs make a failover something you can reason about

Repointing a replica by file and position requires knowing exactly where the old source stopped, and a GTID is a transaction identity that every server agrees on.

-- without GTIDs, after a failover
CHANGE MASTER TO MASTER_LOG_FILE='bin.000412',
  MASTER_LOG_POS=88104;
-- and the position on the NEW source is not the same number

-- with GTIDs
CHANGE REPLICATION SOURCE TO SOURCE_AUTO_POSITION = 1;

SELECT @@gtid_executed;
-- 3e11fa47-71ca-11e1-9e33-c80aa9429562:1-412008

The auto-positioning negotiation is the whole benefit: the replica tells the new source which transactions it already has, and the source sends the rest. Enabling GTIDs on a running system is a multi-step rolling change rather than a flag, which is why it gets deferred, and the moment you need it is the moment it is too late to enable. The identifier also makes it possible to answer whether a specific transaction reached a specific replica, which nothing else does.