Tools and Applications

Natural Resources Canada's Canadian Geodetic Survey (CGS) provides several geodetic tools and their corresponding desktop applications, enabling accurate positioning, heights and coordinates transformations.

The Canadian Spatial Reference System (CSRS) Precise Point Positioning (PPP) tool allows the computation of higher accuracy positions of raw Global Navigation Satellite System (GNSS) data, the GPS·H tool performs the conversion of ellipsoidal heights to orthometric heights, the TRX tool performs transformation of coordinates, INDIR does geodetic Direct (computes the geographic coordinates of the end point) or Inverse (computes distance and azimuth between two points) computations and finally, the NTv2 tool allows for the transformation of coordinates between the North American Datums (NAD) of 1927 and 1983 reference systems. Note that the GSRUG and TRNOBS applications have been discontinued and replaced by TRX.


CSRS-PPP is an online application for GNSS data post-processing allowing users to compute higher accuracy positions from their raw observation data.

CSRS-PPP uses the precise GNSS satellite orbit ephemerides to produce corrected coordinates of a constant "absolute" accuracy no matter where you are on the globe, regardless of proximity to known base stations.

Users can submit RINEX observation data from single or dual-frequency receivers operating in static or kinematic mode over the Internet and recover enhanced positioning precisions in the Canadian Spatial Reference System (CSRS) and International Terrestrial Reference Frame (ITRF).

Click on PPP direct v1.4 in order to access the Desktop Applications download page.

CSRS-PPP Online Computation Go to CSRS-PPP online tool

Running the tool

  1. Enter email address to which the processing results will be sent
  2. Select the processing mode: static or kinematic
  3. Select the reference frame of the output coordinates: NAD83 or ITRF
  • If NAD83 is the selected reference frame, choose an epoch (see Epochs)

Assuming you have created a valid RINEX observation file from your raw GNSS observation data:

  1. Import the RINEX observation file by clicking on "Choose file"
  2. Click "Submit to PPP"

In "More options", it is possible to:

Ocean tidal loading - Who should use this?

For single epoch positioning at the 5-cm precision level or mm static positioning over 24h period and/or for stations that are far from the oceans, ocean loading can be safely neglected. On the other hand, for centimeter precise kinematic point positioning or precise static positioning along coastal regions over observation intervals significantly shorter than 24h, this effect has to be taken into account.

OTL files can be created using the "ocean tide loading provider" online service maintained by Hans-Georg Scherneck at the Onsala Space Observatory. CSRS-PPP accepts either HARPOS or BLQ formatted OTL files.

Users can also provide their own ocean tidal loading (OTL) files. Note that an OTL file can include several stations and that CSRS-PPP extracts ocean loading corrections from the OTL file based on the station position and not on its name.


CSRS-PPP can produce NAD83 (CSRS) coordinates at the epoch of your choice:

  • The epochs adopted by the provincial geodetic agencies, which can be found here.
  • The epoch of the GNSS data
  • A user-defined epoch

CSRS-PPP uses a velocity grid that accounts for crustal motion over time (mostly vertical motion due to post-glacial rebound).

Facts about CSRS-PPP

CSRS-PPP post-processing can be done in two modes: Static ("fixed" GNSS receiver) or kinematic ("moving" GNSS receiver).

  • Static produces one corrected averaged single point.
  • Kinematic produces a corrected track.

Output coordinates can be in either NAD83 (CSRS), the standard Canadian national reference frame, or the global ITRF. Users need to select the system that is the most appropriate for their purpose (see Reference frames).

Precise GNSS orbit ephemerides

CSRS-PPP online post-processing tool will use the best available ephemerides (FINAL, RAPID or ULTRA-RAPID).

  • FINAL (+/- 2 cm): available in 13 days
  • RAPID (+/- 5 cm): available the next day
  • ULTRA RAPID (+/- 15 cm): available every 90 minutes (not available to download)

International Terrestrial Reference Frame (ITRF)

The specific ITRF used by CSRS-PPP is the one realised by the International GNSS Service (IGS) at the epoch for which the precise GNSS orbit ephemerides were computed. With the production of orbit estimates on a daily basis, the ITRF realisation epoch will always be within a day of the submitted GNSS data.

Illustration of the functionality and components of the Canadian Spatial Reference System (CSRS) Precise Point Positioning (PPP) post-processing tool

Illustration of the functionality and components of the Canadian Spatial Reference System (CSRS) Precise Point Positioning (PPP) post-processing tool

When to use CSRS-PPP, before or after the Real Time Kinematic survey?

Suggested methodologies

1) It is preferable to compute the base station’s coordinates before starting the Real Time Kinematic (RTK) work. You could setup the base station ahead of time and collect raw GNSS data (anywhere from 2hrs to 24 hrs depending on the accuracy required). Leave the base station in place. Transform the raw data to RINEX and submit it for Static CSRS-PPP processing. CSRS-PPP can process the data approximately 90 minutes after data collection. Once you have your accurate coordinates from CSRS-PPP, you can begin the RTK work.

2) If it is not possible to collect raw data and run CSRS-PPP ahead of time, the RTK survey can still be performed entering the Base Station’s approximate coordinates. Ensure that base station raw data is recorded (uninterrupted) for as long as possible. Run Static CSRS-PPP after the RTK survey, compute the difference (between approximate and PPP coordinates) and apply a 3D shift to the entire survey. A minor drawback here is that for each ten meters of error in the Base Station position an additional 1ppm (1mm per kilometre) error is introduced in the baseline computation.

3) A popular methodology is to establish accurate coordinates for 2 points within the survey area (a fair distance apart and inter-visible). Collect raw GNSS data simultaneously at both points and post-process both using Static NAD83 (CSRS). Also process both files as a baseline (distance, azimuth) using your phase differential post-processing software. From the CSRS-PPP output coordinates, you can compute the distance and azimuth between points as well (program INDIR, inverse solution). Comparing these results can serve as quality control plus you now have 2 geodetic control points to choose from. Make one of them the main Base Station location; the survey will be anchored to this point. The other point can be tied with the Rover during the RTK survey (as an additional check) and used as a back sight for traditional surveying.

Back to top


GPS·H allows users to convert their GNSS ellipsoidal heights (h) that are in either NAD83 (CSRS) or ITRF, to orthometric heights (H, heights above mean sea level) through the application of a gravimetric or hybrid geoid model (N). Gravimetric model CGG2013 provides orthometric heights in the Canadian Geodetic Vertical Datum of 2013 (CGVD2013) while hybrid model HTv2.0 provides heights that are compatible with the Canadian Geodetic Vertical Datum of 1928 (CGVD28). The superseded gravimetric geoid models do not provide heights in either CGVD2013 or CGVD28, but rather in their own reference system.

GPS·H provides a user-friendly interface to perform heights conversion, which can be expressed as:

Orthometric Height (H) = Ellipsoidal Height (h) - Geoid Height (N)

GPS-H is available as an online tool and a desktop application. Click on GPS·H v3.2 in order to access the desktop version.

GPS·H Online Computation Go to GPS·H online tool

Running the tool

  1. Select a geoid model
    • CGG2013: Canadian Geodetic Vertical Datum of 2013 (CGVD2013)
    • HT2_0: Canadian Geodetic Vertical Datum of 1928 (CGVD28)
  2. Select the reference frame of the input coordinates
  3. Select the epoch (if applicable)
  4. Enter the coordinates in the appropriate boxes and the ellipsoidal height (h)
    • By checking the box “Batch Processing”, the user can submit coordinates in an ASCII or zipped file in one of these formats: Ghost, GeoLab or CSV.
    • By checking the box next to "Input H", the user can enter the orthometric height (H) instead of the ellipsoidal height (h).
  5. Click "Calculate"
  • Several types of coordinate systems are available:
    • Geographic (see How to enter coordinates?)
      • Degrees, Minutes, Seconds (DD°MM'SS.sssss")
      • Degrees, Decimal minutes (DD°MM.mmmmmm')
      • Decimal degrees (DD.ddddddd°)
    • Cartesian
    • Universal Transverse Mercator (UTM) / Modified Transverse Mercator (MTM) / Stereo
  • All coordinate fields are required for the chosen type of coordinate system, except heights (h / Z)

Geoid models

CGG2013 is the Canadian Gravimetric Geoid model of 2013. It is the realization of the new vertical datum for Canada, the Canadian Geodetic Vertical Datum of 2013 (CGVD2013).

HTv2.0 (Height transformation version 2.0) is a hybrid geoid model based on an earlier geoid model (CGG2000) that has been distorted to fit with CGVD28 benchmarks published elevations.

Back to top


TRX is a new coordinate transformation tool that combines and replaces GSRUG and TRNOBS. The tool allows for transformation between NAD83 (CSRS) and ITRF realizations as well as transformations between geographic, cartesian and local projections systems (UTM, MTM, custom projections and stereographic).

Click on TRX v1.0 in order to access the Desktop Applications download page.

TRX Online Computation Go to TRX online tool

Running the tool

  1. Select the origin reference frame and epoch (if applicable) and origin coordinates system.
  2. Select the destination reference frame and epoch (if applicable) and destination coordinates system.
  3. Click "Calculate"
  • Checking the box next to "Epoch Transformation" will output the horizontal and vertical velocities.
  • Checking the box next to "Interpolate velocities" will perform interpolation.

Epoch Transformation

The National Epoch Transformation (NET) v6.0 propagates coordinates to and from NAD83 (CSRS) and the ITRF realizations by applying the Canadian GNSS velocity grid (CVG) v6.0 to the coordinates. The Velocity Grid is included in the CSRS-PPP and TRX online tools and desktop applications.

Why a velocity grid?

Since the NUVEL 1-A model has no vertical component and does not account for some regional crustal motion occurring within the plate and along its margins, NAD83 coordinates of a point do not remain constant over time. Provincial and federal survey agencies published their NAD83 (CSRS) coordinates based on realizations of NAD83 (CSRS) dated to specific NAD83 (CSRS) epochs (some 1997, others 2002). To ensure the coordinates confirm with the province's published coordinates they must relate to the same epoch.

See Epochs

Reference frames

The International Terrestrial Reference Frame (ITRF) is the official scientific global spatial reference frame. However, ITRF is dynamic and its coordinates change over time because of tectonic plates motion worldwide.

Preferring stable coordinates that do not change over time, NAD83 was developed; a reference frame meant to be locked to the North American tectonic plate which rotates horizontally 2 cm per year in a counter-clockwise direction.

NAD83 (CSRS), the adapted reference coordinate system for Canada, is rigorously related to the current ITRF via:

  • A 7-parameter similarity (Helmert) transformation (3 translations, 3 rotations and 1 scale factor) between NAD83 and ITRF96.
  • The NUVEL 1-A model of the horizontal rotation of the North American tectonic plate.

The ITRF scale was adopted for NAD83 (CSRS) in order for the two reference frames to be very similar except for an approximate 2 m difference in earth centre position.



  • WGS84, the World Geodetic System of 1984, was originally compatible with the NAD83 reference system; however, WGS84 has been redefined and it is now compatible with the ITRF2008 reference system.

Back to top


The INDIR Direct-Inverse computation tool performs either a geodetic Direct or Inverse computation. Direct uses a starting point's geographic coordinates, an azimuth and a distance to compute the geographic coordinates of the end point. Inverse uses geographic coordinates of two points to compute azimuth and distance.

INDIR Online Computation Go to INDIR online tool

Running the tool

In the Point 1 tab:

  1. Enter the geographic input coordinates
  2. Select an ellipsoid model

In the Point 2 tab:

  1. Select the option Direct or Indirect
    1. If Direct is selected, enter either directions and distances or azimuths and distances
    2. If Indirect is selected, enter geographic coordinates

Back to top


The National Transformation Version 2 (NTv2) tool provides a national standard for transforming coordinates (geographic, UTM/MTM/Stereo) between the NAD27 and NAD83 reference systems using a binary Grid Shift File (.GSB format). The transformation is 2D (horizontal) therefore heights are not required.

Click on NTv2 v2.0 in order to access the Desktop Applications download page.

NTv2 Online Computation Go to NTv2 online tool

Running the tool

  1. Enter the geographic or UTM/MTM/Stereo input coordinates
  2. Click "Calculate"
  • File processing accepts GHOST (code 04 record) format only.

Back to top

GNSS Calendar

The GNSS calendar is an application allowing users to view on a gregorian calendar the Day of Year, the Modified Julian Day, the GNSS Week number and the GNSS days of the week.

The user only needs to:

  1. Select a date: YYYY-MM-DD
  2. Select the number of months:
    • For 1 month, the application will show the calendar of the month previously defined in the date
    • For 2 months, the application will show the calendar of the month previously defined in the date and the following month, and so on

On the calendar of any month:

  • The first column is the GNSS Week number
  • The first row corresponds to the GNSS days of the week
    • Sunday= 0, Monday= 1, Tuesday= 2, Wednesday= 3, Thursday= 4, Friday= 5, Saturday= 6
  • The number to the right of any regular date is the "Day of Year"
  • The number below the "Day of Year" is the "Modified Julian Day"

For example, Wednesday July 25th, 2001, is the 206th day of the year and the 3rd day of GNSS Week 1124.

Back to top

How to enter coordinates?

There are various ways to enter coordinates. Examples are shown below. The user is not required to write down symbols or specify cardinal directions.

Geographic coordinates

Degrees, Minutes, Seconds

  • Latitude and longitude
    • N/W DD°MM'S.sssss"
      • e.g. N64°19'6.00", W96° 1'14.00"
    • DD°MM'S.sssss" N/W
      • e.g. 64°19'6.00"N, 96° 1'14.00"W
    • DD°MM'S.sssss"
      • e.g. 64°19'6.00", 96° 1'14.00"
    • DD MM S.sssss
      • e.g. 64 19 6.00, 96 1 14.00

The same format applies to Degrees, Decimal Minutes (6 decimal places)

By checking the box "Input H", the user can enter the orthometric height instead of the ellipsoidal height

Decimal Degrees

  • Latitude and longitude
    • DD.ddddddd°
      • e.g. 64.318401°, -96.019005°
    • DD.ddddddd
      • e.g. 64.318401, -96.019005

    The user can omit the negative sign in front of the longitude coordinate by checking the box "Longitude Positive West"


  • Easting and Northing
    • The user should write the coordinate without adding units or a letter
    • Easting and northing coordinates have up to 3 decimal places.
  • The option "Input H" is also offered for UTM/MTM/Stereo coordinates

Back to top

Data formats



Raw GNSS data is usually logged in a format (ASCII or binary) that is proprietary to the GNSS manufacturer. All manufacturers should provide software to transform their raw data to the Receiver Independent Exchange Format (RINEX) format, and its variation, Compact RINEX, the recognized standards for raw GNSS data. Any other format will result in an unsuccessful job termination. To minimize upload time, file compression is recommended. The greatest file size reduction is achieved by compressing a Compact RINEX file.

File compression

Since both the RINEX and Compact RINEX are in the ASCII format, it is possible to use standard compression algorithms to further reduce the upload file size.

PPP compatible compression modes with CSRS-PPP
Mode File extension
gzip .gz
zip .z
unix compression .Z

Back to top