Jump:
Ordnance Survey – Great Britain's national mapping agency
6.1 What is a geodetic transformation?
A geodetic transformation is a mathematical operation which takes the coordinates of a point in one coordinate system and returns the coordinates of the same point in a second coordinate system. Hopefully we will also have an inverse transformation to get back to the first coordinate system from given coordinates in the second. Many types of mathematical operations are used to accomplish this task. The term geodetic transformation does not indicate a particular type of formula.
To properly understand geodetic transformations, it is essential to understand the relationship between a datum and the TRF that realises the datum. Having looked at several examples of real Terrestrial Reference Frames in sections 4 and 5, we know that they are of widely variable quality. Unless a TRF is perfect, the datum it realises is ambiguous. We can think about this in the following way. The given three-dimensional coordinates of any three ground points in the TRF imply the location of the coordinate origin, and the orientation of the coordinate axes relative to those three points. If we select a different set of three ground points, the origin and orientation implied will be slightly different. This is due to observational errors in the determination of the coordinates of the ground points. Taking the TRF as a whole, the datum which it implies has some degree of uncertainty, because the origin positions implied by different selections of TRF ground points are never in perfect agreement with each other.
The usual situation in geodesy is that we have two TRFs realising two different datums, with a large number of points in common between the two TRFs. That is, a particular ground point will be included in both TRFs, but it will have different coordinates in each. Because the TRFs are not perfect realisations of their respective datums, it is impossible to say exactly what the transformation between the two datums is. We can only give a best estimate of the transformation with a statistical measure of the quality of the estimate.
To clarify this idea, let’s look at an example. To keep things simple, we’ll consider one-dimensional coordinate systems (Ordnance Datum Newlyn in section 5.3 is an instance of a real one-dimensional coordinate system). Imagine we have two coordinate systems, A and B, each of which state coordinates for three points called White, Grey and Black. So here we have 100% overlap between the TRFs of the two coordinate systems – all three points appear in both TRFs.

| Point | Coordinate system A | Coordinate system B |
| White | 4.1 | 7.3 |
| Grey | 9.8 | 12.7 |
| Black | 12.2 | 15.0 |
We want to work out a transformation from the datum of coordinate system A to the datum of coordinate system B. This transformation will be a single number t which can be added to any coordinate in system A to give the equivalent coordinate in system B. We don’t have any theoretical datum definitions of these two systems to work from, and even if we did we would not use them (in this example we don’t even know what the coordinates represent; it doesn’t matter). We want a practical transformation which will convert any coordinate in coordinate system A to coordinate system B. So we use points which have known coordinates in both systems – in other words, we relate the two datums by using their TRFs.
In this example we have three points which are coordinated in both TRFs – White, Grey and Black. The best estimate of the transformation between the frames t is simply the average of the transformation at each of these points:
,
,
,
so ![]()
However, this 'best estimate' value for t doesn’t actually agree with the translation at any of the three known points. We need to compute a statistic that represents the amount of disagreement with this estimate among the known points. This is the standard deviation of the three individual t values from the average t value:

So our estimate of t would be written
, that is, t could quite probably be anything from 2.80 to 3.14 based on the information we have available. It is common to state a range of three standard deviations as a likely range within which the true figure lies, that is, between 2.46 and 3.48.
So what is the transformation between datum A and datum B? We don’t know exactly, and we can never know exactly. But we have a best estimate and a measure of the likely error in the estimate.
The point of all this is that since TRFs aren’t perfect, neither are transformations between the datums they realise. In practice, this means that no exact transformation exists between two geodetic coordinate systems. People often assume, quite reasonably, that the transformation between two ellipsoidal datums can be exactly specified, in the way that a map projection can. In theory, this is true; but what use would it be? What you really want to know is what the transformation is for real points on the ground – so you are actually asking a question about TRFs. And the answer to such a question is always an approximation.
The degree of error in a geodetic transformation will depend on the patterns of errors present in the TRFs A and B (which are often characteristic of the methods used to establish the TRF in the first place), and also on how carefully the transformation has been designed to take account of those errors. For instance, TRFs established by triangulation generally contain significant errors in the overall size of the network, and often this scale error varies in different parts of the network. Therefore, a real transformation is likely to represent not only the difference between geodetic datums, but also the difference between the TRFs that realise those datums due to errors in the original observations.
6.2 Helmert datum transformations
The ways in which two ellipsoidal datums can differ are (i) position of the origin of coordinates; (ii) orientation of the coordinate axes (and, hence, of the reference ellipsoid); and (iii) size and shape of the reference ellipsoid. If we work in 3-D Cartesian coordinates, item (iii) is not relevant (and any position given in latitude, longitude and ellipsoid height coordinates can be converted to 3-D Cartesian coordinates using the formulae in annexe B). Working with 3-D Cartesian coordinates, therefore, we use six parameters to describe the difference between two datums, which are three parameters to describe a 3-D translation between the coordinate origins, and three parameters to describe a 3-D rotation between the orientations of the coordinate axes.
It has become traditional to add a seventh parameter known as the scale factor which allows the scale of the axes to vary between the two coordinate systems. This can be confusing because the scale factor is nothing to do with the conventional definition of the datum expressed by the six parameters mentioned above. It was introduced to cope with transformations between TRFs measured by theodolite triangulation, which was the standard method before the latter half of the twentieth century. These TRFs have the characteristic that network shape (which depends on angle measurement) is well measured, but network size (which depends on distance measurements) is poorly measured, because distances were very hard to measure accurately before electronic techniques arrived in the 1950s. Strictly speaking, a Cartesian datum transformation has only six parameters, not seven. However, the scale factor is included in the usual formulation of the datum transformation, which is variously known as the Helmert transformation, 3-D conformal transformation, 3-D similarity transformation, or seven parameter transformation. All these terms refer to the same thing.
When this transformation is applied to a TRF, it has the effect of rotating and translating the network of points relative to the Cartesian axes, and applying an overall scale factor (that is, a change of size), while leaving the shape of the figure unchanged. Equivalently, we can think of the network of points remaining still while the Cartesian axes are rotated, translated and rescaled. Since our application of this transformation is to change datum with the points firmly fixed on the ground, we usually use the second mental picture.
The Helmert transformation can only provide a perfect transformation between perfect mathematical reference systems. In practice, we determine and use transformations between sets of real ground points, that is, between TRFs which are subject to the errors of the real world. The more distortion, subsidence, and so on present in the TRF, the worse the Helmert transformation will perform. Both the parameters of the transformation and the output coordinates will contain errors. Bear this in mind, especially when working with pre-GPS coordinate sets and orthometric heights over large areas.
The usual mathematical form of the transformation is a linear formula which assumes that the rotation parameters are small. Rotation parameters between geodetic Cartesian systems are usually less than 5 seconds of arc, because the axes are conventionally aligned to the Greenwich Meridian and the Pole. Do not use this formula for larger angles; instead apply the full rotation matrices which can be found in most photogrammetry and geodesy textbooks.
In matrix notation, the coordinates of each point in reference system B are computed from those in reference system A by:

(3)
where
,
and
are the translations along the X, Y and Z axes, respectively, in metres
,
and
are the rotations about the X, Y and Z axes, respectively, in radians and s is the scale factor (unitless) minus one. This definition of s is convenient since its deviation from unity is usually very small. s is often stated in parts per million (ppm) – remember to divide this by a million before using equation 3. Rotations are often given in seconds of arc, which must be converted to radians.
Beware that two opposite conventions are in use regarding the rotation parameters of the Helmert transformation. Equation (3) uses the right-hand-rule rotation convention: with the positive end of an axis pointing towards you, a positive rotation about that axis is anticlockwise. A way to remember this is: if your right-hand thumb in hitch-hiking pose is the positive end of an axis, the curl of the fingers indicates positive rotation. Some published transformations use the opposite convention. In this case, reverse the signs of the three rotation parameters before applying equation (3). For safety, always include a test point with coordinates in systems A and B when stating a transformation.
Sometimes three-parameter (translation only) or six-parameter (translation and rotation only) transformations are encountered which omit some of the seven parameters used here. The same formula can be used to apply these transformations, setting parameters not used to zero.
Any small Helmert transformation can be reversed by simply changing the signs of all the parameters and applying equation (3). This is valid only when the changes in coordinates due to the transformation are very small compared to the size of the network.
The Helmert transformation is designed to transform between two datums, and it cannot really cope with distortions in TRFs. As we’ve seen, in practice we want an accurate transformation between the coordinates of points on the ground in the two coordinate systems for the area we’re interested in. If there are large regional distortions present in one or both of the TRFs, a single set of Helmert parameters for the whole coordinate system will not accomplish this. For the transformation from ETRS89 to OSGB36 in Great Britain, using a single Helmert transformation will give errors of up to 5 metres, depending where in the country the points of interest are. One solution to this is to compute a special set of Helmert parameters for a particular region – this is known as a local transformation. Alternatively, more complex transformation types which model TRF distortion can be used. An example of this is the National Grid Transformation OSTN02™ discussed in section 6.3 below.
To summarise: for a simple datum change of latitude and longitude coordinates from datum A to datum B, first convert to Cartesian coordinates (formulae in annexe B) taking all ellipsoid heights as zero and using the ellipsoid parameters of datum A; then apply a Helmert transformation from datum A to datum B using equation (3); finally convert back to latitude and longitude using the ellipsoid parameters of datum B (formulae in annexe C), discarding the datum B ellipsoid height.
Note: Molodensky datum transformations: there are formulae to change between geodetic datums when the positions of points are expressed as latitude and longitude coordinates, without first converting the positions to Cartesian coordinates. These are known as the Full Molodensky formulae or the Abridged Molodensky formulae, the latter having a lower degree of accuracy. However, the Molodensky formulae cannot cope with a difference in orientation of the ellipsoid axes – it only deals with a translation of the origin and changes in ellipsoid size and shape. For this reason, the Molodensky formulae are not given here.
6.3 National Grid Transformation OSTN02 (ETRS89-OSGB36®)
To cope with the distortions in the OSGB36 TRF, different transformations are needed in different parts of the country. For this reason, the national standard datum transformation between OSGB36 and ETRS89 is not a simple Helmert datum transformation. Instead, Ordnance Survey has developed a ‘rubber-sheet’ type transformation which works with a transformation grid expressed in easting and northing coordinates. The grids of northing and easting shifts between ETRS89 and OSGB36 cover Britain at a resolution of one kilometre. From these grids a northing and easting shift for each point to be transformed is obtained by a bi-linear interpolation. This is called the National Grid Transformation OSTN02, and it is freely available in software packages from the Ordnance Survey GPS Website, www.ordnancesurvey.co.uk/gps.
The National Grid Transformation copes not only with the change of datum between the two coordinate systems, but also with the TRF distortions in the OSGB36 triangulation network, which make a simple datum transformation of the Helmert type limited to applications at 5 m and larger accuracy levels. This transformation removes the need to estimate local Helmert transformations between ETRS89 and OSGB36 for particular locations.
Because the National Grid Transformation works with easting and northing coordinates, other ETRS89 coordinate types (3-D Cartesian or latitude and longitude) must first be converted to eastings and northings. This is done using the same map projection as is used for the National Grid (see section 7 below), except that the GRS80 ellipsoid rather than the Airy ellipsoid is used. The parameters and formulae required to obtain these ETRS89 eastings and northings are given in annexes A–C. After the transformation, the resulting National Grid eastings and northings can be converted back to latitude and longitude (this time using the Airy ellipsoid) if required.
6.4 National Geoid Model OSGM02® (ETRS89-Orthometric height)
A vertical transformation between ETRS89 ellipsoid height and orthometric height is also available from Ordnance Survey. This transformation is based on a gravimetric Geoid model covering Great Britain, Ireland and Northern Ireland aligned with their respective vertical datums. In mainland Britain OSGM02 therefore gives Ordnance Datum Newlyn (ODN) orthometric heights directly from GPS survey for direct compatibility with Ordnance Survey mapping, without the surveyor having to visit Ordnance Survey bench marks.
OSGM02 also covers areas of Britain not related to ODN such as the Shetland Isles, Outer Hebrides and the Isle of Man. Orthometric heights in these areas are related to specific local vertical datums.
The National Geoid Model OSGM02 is a grid of geoid-ellipsoid separation values at one kilometre resolution, from which a value is obtained for any location by bi-linear interpolation. The nominal accuracy of the geoid model is 2 cm rms (root mean square) in mainland UK and less than 4 cms rms for other areas. This transformation is freely available from the Ordnance Survey GPS website,
A six-parameter transformation between ETRS89 (European TRS 1989, the Europe-fixed version of WGS84) and the various versions of the ITRS (International Terrestrial Reference System) is published by IERS (International Earth Rotation Service) via their Internet site. The following is extracted from that document.
The most recent IERS TRF is ITRF2005 and it is this datum which will be called ‘ITRS’ here. Previous versions ITRF94, ITRF96, ITRF97 and ITRF2000 use a different TRS and transformation parameters and these are given below. These transformations are not suitable for ITRFs before ITRF94 (these are no longer in common use).
| ITRS2005 to ETRS89 datum transformation | ||||||
| s(ppm) | ||||||
| 0.056 | 0.048 | -0.037 | 0 | 0.000054 | 0.000518 | -0.000781 |
| ITRS2000 to ETRS89 datum transformation | ||||||
| s(ppm) | ||||||
| 0.054 | 0.051 | -0.048 | 0 | 0.000081 | 0.00049 | -0.000792 |
| ITRS94/96/97 to ETRS89 datum transformation | ||||||
| 0.041 | 0.041 | -0.049 | 0 | 0.00020 | 0.00050 | -0.00065 |
Because ETRS89 is slowly diverging from ITRS due to the motion of the Eurasian tectonic plate, the rotation parameters are time-dependent and must be multiplied by
, the time difference in years between the epoch at which ITRS is being used and the fixed epoch of ETRS89 (1989.0). If the epoch of the ITRS-consistent coordinates is
in decimal years, then
![]()
The usual application of this transformation is in dealing with GPS coordinates determined in a ‘fiducial network’ using IGS permanent GPS stations as fixed control points and using IGS products such as satellite ephemerides, satellite clock solutions and Earth orientation parameters. In this application, the coordinates adopted for the fixed IGS stations should be ITRS coordinates in the same realisation of ITRS as used to determine the IGS precise ephemerides and other products. That realisation is currently ITRF2005. The ITRF2005 coordinates of the IGS reference stations at the epoch of observation are obtained by multiplying the ITRF2005 station velocity by the time difference between the ITRF2005 reference epoch and
, and adding this position update to the ITRF2005 reference epoch station positions.
The resulting coordinates of the unknown stations are in ITRS at epoch
. The transformation above can then be used in equation (3) to convert these coordinates to the ETRS89 datum.
6.6 Approximate WGS84 to OSGB36/ODN transformation
The following Helmert transformation converts WGS84 (or ETRS89 or ITRS, the differences are negligible here) coordinates to something like OSGB36 and something like ODN heights. The error is up to five metres both horizontally and vertically. This is good enough for certain applications. This transformation is for use with equation (3). Note the remarks made about Helmert transformations in section 6.2.
| ETRS89 (WGS84) to OSGB36/ODN Helmert transformation | ||||||
| s(PPM) | ||||||
| -446.448 | +125.157 | -542.060 | +20.4894 | -0.1502 | -0.2470 | -0.8421 |
| Note 1:OSGB36 is an inhomogeneous TRF by modern standards. Do not use this transformation for applications requiring better than 5 metre accuracy in the transformation step, either vertically or horizontally. Do not use it for points outside Great Britain. Note 2: OSGB36 does not exist offshore. | ||||||