I've spent many thousands of dollars hiring talent on Upwork. Here are my not-so-obvious strategies and tactics I learned along the way.
Everyone has their reasons for hiring talent from where they do. A surprising number of US-based companies hire only domestically on Upwork, citing "security concerns." This is usually a joke, as they'll go on to hire their US-based talent without vetting them for security. But back to the original question...
My go-to location for hiring talent is Eastern Europe for two reasons: 1. They're great to work with and 2. Time zones work well.
Eastern Europeans do not have the nauseating fake-politeness you'll see in places such as England, which means that expectations, questions, and deadlines are easily shared back and forth. If you jump on a Zoom call with a freelancer and there's no small talk, don't be alarmed.
In my experience, Eastern European freelancers respect deadlines, work hard, and produce great work.
For some reason Ukraine is home to some amazing interface designers and visual artists (in much higher density than countries such as India). For UX/UI work I would give good consideration to freelancers from Ukraine.
Time zones work to your advantage as well. Eastern Europe is roughly 7 hours ahead of New York. This means that your freelancer is able to work while you are sleeping. For communication, just plan accordingly: try to get your communication done before noon here in the US. Alternatively, if you work late into the night you could schedule a meeting at 11pm Los Angeles time, and it would be a convenient 9am for your Moscow-based freelancer.
India-based freelancers are great too. But be prepared to deal with a culture that's very different from Eastern Europe.
I've discovered that due to cultural differences Indian freelancers may not communicate as directly as Eastern Europeans if project scope is not well-defined or if deadlines are impractical, or if the project is outside their skillset. This can be mitigated by communicating thoughtfully and asking clear questions to confirm that your freelancer has fully understood all expectations. Also, let your freelancer know that they are free to ask any questions, at any time.
India is where I look to hire developers and data entry freelancers. Expect hourly rates to be lower than Eastern European rates, on average.
For a long time the Philippines has been the go-to place to find an offshore VA. I don't have much experience hiring from the Philippines but many people recommend it. If you're looking for a longer-term freelancer, I'd suggest you skip Upwork and use onlinejobs.ph which will give you the same caliber of talent at a lower cost to you. Expect Filipino talent to cost as much or less than Indian talent.
Of course you can find any kind of freelancer you want, in the US. Just expect to pay at least double what you'd otherwise pay an equivalent offshore freelancer.
I don't have much experience hiring freelancers outside the US, Eastern Europe, India, or the Philippines, so I can't comment.
Hire experts only (unless you enjoy pain).
Don't set an hourly rate; freelancers will always bid at the high end of your range, even if their bid is above their marketplace value.
Always create at least one custom screening question. Freelancers often use boilerplate responses to apply to gigs, so the quality of the answer to your custom question is a great indicator of the quality of the applicant. Freelancers also see the custom question before they even begin to apply to a specific job, which means that adding one will dramatically reduce the number of window-shopper applicants.
Before posting the job, set filters to include only freelancers with a success score of 80% and up, and an amount earned of over $1000. This will save you a lot of frustration.
Immediately after posting the job, you will be prompted to invite freelancers to the job. You are limited to inviting 15 freelancers (you can invite more than 15 for a $30 fee) so be intentional about who you invite.
I will usually hire my candidate(s) roughly 24 hours after I post the job. This gives my invited candidates time to accept or decline, and for other freelancers to see the project and apply.
The quickest method for vetting candidates is to get them on a call. Usually I send a message such as "Hey [freelancer], are you available to jump on a quick call to discuss?" and nine times out of ten you'll have a positive response within 10 minutes.
Upwork messages are a mess and it's often difficult to separate the signal from the noise. After hiring a freelancer I like to move communication to email or a messaging platform (Telegram for Eastern Europe, Whatsapp for India) so that communication doesn't get lost in the Upwork app.
Upwork is a great platform for finding freelancers, and knowing how to filter for hidden talent will save you significant amounts of money and time and stress. Enjoy.