Skip to main content
For the complete documentation index, see llms.txt.
The Standard Product 3 (SP3) format is an ASCII standard developed by the International GNSS Service (IGS) for distributing satellite orbit and clock correction data. Originally designed for GPS satellites, SP3-c (the current version) supports multiple GNSS constellations and LEO satellites, making it widely used for precise orbit ephemerides.

VALAR Measurement Import Requirements

SP3 permits position-only products and optional accuracy/correlation records. VALAR’s current OD measurement importer is narrower: it accepts PV observations, not position-only observations.
  • Supply a velocity-capable (V) header and matching P and V records for the same satellite at each epoch. Missing velocity is an error, not zero velocity. Do not change the header alone or insert zero V records unless those are actual supplied observations; genuine zero velocity is preserved.
  • Supply positive finite accuracy for all three position and all three velocity components in the P/V records. When PVT measurement uncertainty is enabled, only missing components use the shared spacecraft defaults or per-import override; supplied accuracy is preserved. Otherwise missing or partial accuracy produces “SP3 measurement uncertainty is required”. Header aggregate orbit accuracy is not a six-component noise model.
  • Supply a supported coordinate system in the header; a missing frame is not assumed to be ITRF.
  • EP/EV accuracy and correlation records are currently rejected because the underlying parser would discard them. Ask the producer for an OEM containing PV states and covariance at every epoch to preserve that uncertainty.
For a position-only or matching satellite P record error, obtain genuine paired PV data with uncertainty or use a consumer that supports position-only products. This restriction does not make a P-only SP3 product invalid under the SP3 standard.

Key Components

An SP3 file contains several distinct sections:
  • Header: 22 lines of file-level metadata including version, time system, coordinate frame, satellite list, and accuracy information
  • Comments: 4 optional comment lines for additional documentation
  • Epoch Blocks: Repeating blocks containing position/clock records and optional velocity/correlation records
  • EOF Marker: End-of-file indicator

File Structure Overview

Header Fields

Line 1: File Identification

Line 2: Time Reference

Lines 3-7: Satellite Identifiers

Up to 85 satellites listed across 5 lines (17 per line). Each satellite uses a system identifier:

Line 13: File Type and Time System

Data Records

Position and Clock Record (P)

Bad or absent position values are set to 0.000000. Bad or absent clock values are set to 999999.999999.

Optional Flags (Position Record)

Velocity and Clock Rate Record (V)

Only present when Line 1 P/V flag is V:

Correlation Records (EP, EV)

Optional high-precision correlation records provide:
  • Standard deviations in physical units (mm for position, mm/s for velocity)
  • Six correlation coefficients (xy, xz, xc, yz, yc, zc) scaled by 10^7

Supported Time Systems

All times in an SP3 file use the SAME time system, whether expressed as Gregorian dates or Modified Julian Dates.

Common Use Cases

  • Precise Point Positioning (PPP): High-accuracy GNSS positioning using precise orbits
  • Orbit Comparison: Validating orbit determination results against IGS products
  • LEO Satellite Tracking: Distributing precise orbits for Earth observation satellites
  • Clock Analysis: Satellite clock characterization and time transfer
  • Geodetic Research: Reference frame determination and geophysical studies

Sample SP3-c File

This abbreviated position-only example illustrates the SP3 layout. It is not accepted by VALAR’s PV measurement importer; use the PV and uncertainty requirements above for an importable product.

Technical References