It’s just the nature of calling an api. You don’t really know when you’ll get that information back.
Whether the server is under load or network conditions to and from that server are less than ideal, that’s what makes asynchronous calls harder to deal with.
I believe the fcc weather api uses the openweathermap api which does have limits to the amount of calls per minute which may be getting hit since presumably everyone is sharing that same api key. So it could be that as well.
I have noticed that using the openweathermap api as opposed to the fcc one does avoid the bug that defaults to some town in Japan sometimes. It doesn’t take long to get it up and running either.