7 min readF4MDX

Predicting satellite passes with TLE

Any satellite tracking tool you use, whatever it looks like on screen, is doing the same math behind the scenes. Feed it a location and a date, and it tells you when a satellite will rise above your horizon. That prediction only works because of a small block of text called a TLE, Two Line Elements, and once you know how to read one, orbital mechanics stops being a black box.

TLE, Two Line Elements

TLEs are unique to each tracked object orbiting Earth, and they get recalculated constantly because orbits drift over time. Atmospheric drag, gravitational perturbations, station-keeping burns: all of it shifts the numbers. The reference source is Space-Track.org, operated by the 18th Space Defense Squadron, the same unit behind the Space Surveillance Network. Sites like CelesTrak redistribute the same data in a friendlier format, but Space-Track is where it actually comes from.

Here is the TLE for NOAA 19. Hover any field to see what it means.

1 33591U 09005A 24285.49466946 .00000972 00000-0 54355-3 0 9997
2 33591 99.0340 342.4576 0013141 327.7681 32.2687 14.13153634808053

Line 1 carries the catalog number and the epoch, written as YYDDD.DDDDDDDD (year, then day of year as a decimal, so the fraction is the time of day), along with drag related terms that matter mostly for precision decay models. The last digit on each line is a checksum, a simple modulo 10 sum used to catch corrupted data during transmission or parsing.

Line 2 is where the orbit actually lives. Six numbers on that line describe the shape, tilt, and current position of the whole orbit, and that is really the whole article right there.

One thing worth knowing before going further: a TLE is only meaningful alongside the propagation model it was built for. SGP4 for near-Earth objects, SDP4 for orbits with a period longer than 225 minutes (roughly above 5,800 km, which includes GEO, GTO, and highly elliptical orbits). Plug these numbers into a different propagator and the prediction drifts off almost immediately. It is not a universal orbit description, it is a set of inputs tuned for one specific piece of math.

Orbital Mechanics

Those six numbers on line 2 describe everything about the orbit.

Loading 3D viewer…
Satellite
51.6°
60.0°
1.1R⊕
0.0010
30.0°
90.0°

Every parameter described below can be adjusted with the sliders above. Tap any orbital element in the TLE to jump straight to its explanation here.

Inclination

Labeled i, inclination is the angle between the satellite's orbital plane and Earth's equatorial plane, in degrees. Picture Earth's equator as a flat hoop, then tilt a second hoop through it at some angle. That tilt is i.

  • 0° ≤ i ≤ 90°, prograde: the satellite orbits the same direction Earth spins, west to east.
  • 90° < i ≤ 180°, retrograde: going against Earth's rotation.
  • i = 90°, polar orbit: passing over both poles on every revolution, which is why weather and imaging satellites love this inclination. You get global coverage over time instead of being stuck circling the tropics.

Right Ascension of the Ascending Node

Labeled Ω (RAAN), this one trips people up on first read, but it is really just answering "where does the orbital plane sit, compass-wise, in space."

First you need the ascending node: the point where the satellite crosses Earth's equatorial plane heading north (the descending node is the same crossing heading south). Then you need a fixed reference direction in space, which is the vernal equinox, essentially the point where the Sun's apparent path crosses the equator each spring.

RAAN is the angle between the ascending node and that vernal equinox direction. It does not tell you anything about the shape of the orbit, only how the whole plane is rotated in space. Drag the Ω slider above and watch the orbit spin around the polar axis without changing shape.

Semi-Major Axis

Labeled a, this is half the longest diameter of the orbital ellipse. It is the number that basically sets your altitude and, by extension, your orbital period. Bigger a, slower satellite, longer time between passes. Try the Semi-major axis slider to see the orbit expand and the satellite slow down.

Eccentricity

Labeled e, eccentricity measures how squashed the ellipse is.

  • e = 0, perfectly circular.
  • 0 < e < 1, elliptical, closed orbit.
  • e = 1, parabolic, open trajectory: the satellite is leaving and not coming back.
  • e > 1, hyperbolic, same deal but faster.

Most operational satellites you will track sit somewhere between 0 and maybe 0.01, close enough to circular that you can mostly ignore this one. Until you start tracking something like a Molniya-orbit bird or a deep-space probe, and suddenly e is the whole story. Push the slider up and watch the orbit stretch from a circle into a long ellipse. If the periapsis tries to dip below Earth's surface, the slider clamps automatically and the viewer shows a note.

Argument of Periapsis

Labeled ω, this is the angle between the ascending node and periapsis, the closest point of the orbit to the body it is circling. Around Earth we call periapsis perigee (and apogee for the far point). Around the Sun it is perihelion and aphelion. Same idea, different name depending on what you are orbiting. Drag the ω slider to rotate the ellipse within its own plane.

Mean Anomaly

Labeled M, mean anomaly is the value the TLE actually stores. It increases at a constant rate, like a clock hand, as if the satellite moved in a perfect circle — that is what makes it easy to compute. The real geometric angle is the true anomaly, labeled ν (nu), which is what the slider above controls. For a circular orbit, M and ν are identical. For an elliptical one, the satellite races ahead at periapsis and lags at apoapsis, so ν pulls ahead of M near the bottom of the orbit and catches up later. SGP4 converts M to ν internally so you never have to think about it. Hit Animate and watch ν speed up and slow down while M would just tick along.

Putting it all together

Two numbers set the size and shape of the orbit: a and e. Three more set its orientation in space: i, Ω, and ω. The last one, M, tells you where the satellite sits along that track. Six numbers, and you have got the whole orbit pinned down.

TLE has stuck around since the 1970s, and it is still the format almost every tracking tool expects today. There is a newer CCSDS standard called OMM, Orbit Mean-Elements Message, that encodes the same six numbers in XML or JSON instead of a rigid 69-character line, and some agencies are slowly shifting toward it. Either way, the underlying physics does not change, just how it is packaged. Once you have played with the six sliders above, that little block of numbers stops looking cryptic and starts looking like a very compact description of where a piece of hardware is, right now, a few hundred kilometers over your head.

Download on the App Store