I have some parcel coordinates that I cannot convert to WGS 84 (cf. http://www.bcad.org/mapSearch/?cid=1&p=448116)

What's the coordinate system of these parcel coordinates, you ask? Great question...

As a running example, consider the address

San Antonio, TX 78204

has these coordinates in the polygon:


In the JSON response that produces these coordinates, there is a field which leads me to believe the coordinates are EPSG 2278:

"spatialReference": {
    "wkid": 102740,
    "latestWkid": 2278

This EPSG corresponds to NAD83 / Texas South Central (ftUS) according to http://spatialreference.org/ref/?search=Texas&srtext=Search.

I can even do a sensible conversion here on Earthpoint (http://www.earthpoint.us/StatePlane.aspx) using the options 4204 - Texas South Central / US Survey Feet.

Problem is that I can't seem to get a valid conversion from EPSG 2278 to WGS 84 (I've tried both https://mygeodata.cloud/cs2cs/ as well as pyproj).

Aside that may be of help: When I look at the features of EPSG 2278, it appears that the coordinates I'm getting back are outside the correct bounding box for this coordinate system: http://spatialreference.org/ref/epsg/2278/

WGS84 Bounds:
-105.00 27.82
 -93.83 30.66

Projected Bounds:
   29,483.7 13,155,424.7
3,639,474.5 14,199,599.0

I've tried every other EPSG for Texas South Central I could find listed (http://spatialreference.org/ref/?search=Texas&srtext=Search).

Another aside: I'm using Python code similar to this (and I get similar results on https://mygeodata.cloud/cs2cs/):

EPSG_FROM = pyproj.Proj("+init=EPSG:3673")
EPSG_TO = pyproj.Proj("+init=EPSG:3857")
lat_wgs84, lon_wgs84 = pyproj.transform(EPSG_FROM, EPSG_TO, float(point[0]), float(point[1]))

where point is of course a coordinate from the polygon I'm interested in converting.

  • If you are struggling to convert data which should be easily converted, you must consider the possibility that your source is not in the format expected.
    – Vince
    Jan 20, 2017 at 13:16
  • @Vince Absolutely; the challenge for me was where to go once the format is not as expected :-)
    – D3C34C34D
    Jan 20, 2017 at 22:00

1 Answer 1


It turns out the fix was trivial; I needed to pass in "preserve_units=True" into the Proj object creation:

EPSG_FROM = pyproj.Proj(init="EPSG:2278", preserve_units=True)
EPSG_TO = pyproj.Proj(init="EPSG:4326")
# ...

Still not entirely clear to me why I couldn't get https://mygeodata.cloud/cs2cs/ to work as expected.

This answer led me down the path: Converting state plane coordinates to latitude/longitude

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.