It happens that the tourist coming to Colombia is surprised to hear everyone referring to him or her as "gringo" or "gringa".
"But I'm not a 'gringo', I'm from (insert your country here).
Here gringo means just about anybody from another country that speaks another language, preferably white and blond for easier identification but not necessarily. It does not mean someone from the United States.
It also is not demeaning, not in the least, unless you get called "gringo hp" which means you pissed someone off, probably a cab driver (see blog on slamming car doors).
So that's what the word gringo means here in Colombia.