Coordinates (aka., points, aka., positions) in the GeoJSON spec take the following order:
| terminology | 0, | 1, | 2 | 
|---|---|---|---|
| cartesian | x | y | z | 
| projected | easting | northing | altitude | 
| geographic | longitude | latitude | altitude | 
| spherical range | (-180,180) | (-90,90) | (?,∞) | 
The z/altitude measure is often omitted, in which case the positions are 2-tuples.
GeoJSON features can have bbox fields, which are always 2N-long, where N = the number of dimensions.
For most geolocation, N = 2, so this field is 4-long. The order is:
| 0, | 1, | 2, | 3 | ||
|---|---|---|---|---|---|
| [ | southwest longitude | southwest latitude | northeast longitude | northeast latitude | ] | 
| [ | minimum longitude | minimum latitude | maximum longitude | maximum latitude | ] | 
Southwest is the minimum (for both latitudes and longitudes), northeast is maximum.
For example, here’s a simple little snippet of GeoJSON for the whole earth:
{
  "type": "Feature",
  "bbox": [-180.0, -90.0, 180.0, 90.0],
  "geometry": {
    "type": "Polygon",
    "coordinates": [[
        [-180.0, -90.0, 180.0, 90.0]
    ]]
  },
  "properties": {
    "name": "The whole world"
  }
}
Twitter has two formal geolocation attributes:
geo (deprecated): represents points in latitude, longitude pairs (backwards from GeoJSON).
It pretends to be a geometry object but gets it wrong.coordinates: This is a proper GeoJSON geometry object. Most often, coordinates.type will be “Point”.
    coordinates.coordinates, where supplied, is a [longitude, latitude] pair.geo and coordinates might both be null, or other types of geometries, but those parts of a tweet might look like this:
{
  "geo": {
    "type": "Point",
    "coordinates": [
      <latitude>,
      <longitude>
    ]
  },
  "coordinates": {
    "type": "Point",
    "coordinates": [
      <longitude>,
      <latitude>
    ]
  }
}
Luckily, Twitter got the order right in the streaming API locations query. We can query from the whole globe with the following URL:
https://stream.twitter.com/1.1/statuses/filter.json?locations=-180,-90,180,90
Twitter sometimes only returns “place” attributes. This is kind of like a GeoJSON feature, but has a predictable set of values:
{
  "place": {
    "id": "1d9a5370a355ab0c",
    "url": "https://api.twitter.com/1.1/geo/id/1d9a5370a355ab0c.json",
    "place_type": "city",
    "name": "Chicago",
    "full_name": "Chicago, IL",
    "country_code": "US",
    "country": "United States",
    "attributes": {},
    "bounding_box": {
      "type": "Polygon",
      "coordinates": [[
        [-88.097, 37.771],
        [-88.097, 41.761],
        [-84.784, 41.761],
        [-84.784, 37.771]
      ]]
    }
  },
  ...
}
The bounding_box sub-object above is a true GeoJSON geometry, with [long, lat] pairs.
You can tell pretty quickly with this one because, if a place had latitudes around -84 or -88, it’d be in the Antarctic.
Not impossible, but unlikely.
Of course, no latitudes are greater than 90 or less than -90, and most tweets come from somewhere between the Arctic (+66 latitude) and Antarctic (-66 latitude) circles.
When you search for a coordinate pair, Google expects latitude, longitude pairs.
This support page lists the following working formats:
41°24'12.2"N 2°10'26.5"E41 24.2028, 2 10.441841.40338, 2.17403