I'm trying to transform (using pyproj) the same coordinates, first from WGS84, and then from NAD83(2011), and I'm getting the same result:

from pyproj import CRS, Transformer

from_wgs84_transformer = Transformer.from_crs(CRS("WGS84"), CRS("epsg:6415"), allow_ballpark=False)
from_nad83_transformer = Transformer.from_crs(CRS("NAD83(2011)"), CRS("epsg:6415"), allow_ballpark=False)
>>> from_wgs84_transformer.transform(41.15240653663834, -122.85890995637374)
(1927909.814711512, 702339.7864515218)

>>> from_nad83_transformer.transform(41.15240653663834, -122.85890995637374)
(1927909.814711512, 702339.7864515218)

Can someone explain why, and also how to fix the code?

  • I could not find any example about the usage as ` Transformer.from_crs(CRS("WGS84"),...`. Where did you find the documentation for that syntax?
    – user30184
    Nov 21 at 7:56
  • How to you suggest to create the transformation? pyproj4.github.io/pyproj/stable/_modules/pyproj/…
    – paul
    Nov 21 at 8:03
  • Do you have the transportation grids installed? pyproj4.github.io/pyproj/stable/transformation_grids.html
    – snowman2
    Nov 21 at 13:51
  • One transformation/operation path could be 7666 which is wgs84(G1762) to ITRF2008 (null transformation) and then 7807, ITRF2008 to NAD83(2011) which is time-based so you need a data epoch or just use the base epoch of the transformation.
    – mkennedy
    2 days ago

1 Answer 1


You get that result because for Proj NAD83(2011) and WGS 84 mean the same. You can get a full report by testing the transformation with Projinfo.

projinfo -s epsg:6318 -t epsg:4326

Candidate operations found: 1
Operation No. 1:

EPSG:9774, NAD83(2011) to WGS 84 (1), 2.0 m ...

PROJ string:
SCOPE["(null/copy) Approximation for medium and low accuracy
applications assuming equality between plate-fixed static 
and earth-fixed dynamic CRSs, ignoring static/dynamic CRS 
    REMARK["For many purposes NAD83(2011) can be considered
to be coincident with WGS 84. This approximation ignores 
the ~2.2m offset of NAD83 from the geocentre, the low 
accuracy of the WGS 84 ensemble and the application 
of tectonic plate motion to WGS 84 data."]]

Unfortunately I do not know which tools can handle the terms that Proj ignores.

  • 1
    They're not the same. NAD83(2011) is plate-fixed, while WGS 84 (and ITRFxx) is not. There's about 1-2 m difference between the 2 systems. That transformation has a 2 m accuracy because it's not taking the differences into account.
    – mkennedy
    2 days ago
  • 1
    And for taking into account the differences also the epoch of the dynamic system should be known. It seems that Proj and GDAL has nowadays support for coordinate epoch gdal.org/user/coordinate_epoch.html.
    – user30184
    2 days ago

Your Answer

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

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