I am currently visiting the USA from the UK (I am a UK citizen) and am intending on staying here for the full 90 days under the Visa Waiver programme. How long would I have to stay out of the US at the end of this period before returning again? Would I have to return to the UK, or could I stay with friends in another country (such as Canada) for a while?
It all comes down to a 'reasonable length of time' between stays.
Now that's about as ambiguous as they come - what's reasonable? It's like this on purpose - it's up to the official at the border, as the purpose of this is to try and work out if you're trying to live in the states and just border hopping every 90 days, instead of visiting.
From the CBP website:
If you're worried they may think you're trying to live there, then you could bring extra documents as evidence - eg, your flight out of America back to the UK, or proof of your current employment and residence in the UK. Basically anything to convince them that you're not actually surreptitiously residing in the US :)
Short version - it doesn't matter, what matters is convincing the border officer that you're visiting, not living in the US.
If you go to Canada and Mexico or the Caribbean, and while you are there, your initial 90-day period of entry expires, but you need to come back in to the U.S. to fly home, you may encounter a problem. The terms of the VWP are very clear - it is only to be used for occasional, short visits to the U.S. If the CBP Officer thinks you are trying to "reset" the clock by making a short trip out of the U.S. and re-entering for another 90-day period, you can be denied entry. (If that happens, you will have to obtain a visa for any future travel to the U.S.) In order to be re-admitted to the U.S. shortly after a previous admission expired, you will have to convince a CBP Officer that you are not trying to "game" the system.
(as of 25 Mar 2015)