The biggest advantage is auto-positioning. So you don't have to check and double-check the binlog file and position when you start replication. You just point the replica at its source and it figures out where to start replication from based on the GTID range it has already processed.
This greatly simplifies operations when you want to change your replication topology. For example when you want to change a replica so it is subscribed to a different source. You would do this during a failover operation, or if you are juggling replication during an upgrade.
The reason it isn't enabled by default is for backward compatibility with older MySQL deployments. MySQL supported GTID starting with version 5.6 (around 2013), so there were a lot of sites that weren't using GTID and needed to convert. Conversion was kind of a hassle in MySQL 5.6, so many sites did not adopt GTID. In MySQL 5.7, there were improvements that made it easier to make the transition. Still there are lots of sites that don't use GTID yet.