I always found "expat" to be a weird term. As far as I'm concerned, they're migrants. There seems to be a political bent to it eg. white migrants are more often considered "expats" but non-white migrants are more often considered "immigrants".
I wouldn't consider myself an expat despite now living in the UK.
Yes, it's an overused term.
I think of expats as people who move to another country for a specific assignment. In my case it was mostly on IT projects and about half of my fellow expats were usually non-white (East Asian or Indian), but that didn't stop them from being considered expats.
Normally the right to stay in that country is tied to a work permit linked to a specific employer and role.
I would think of IT workers from India who are in Australia on short term contracts and conditional work permits as expats, 100%.
Retirees who retire to a country with cheaper cost of living and warmer weather are a bit of a grey area (no pun intended), and they are often referred to as expats or as expat retirees.
The real wanky expression is tourists who refer to themselves as "travelers".