How CuriousPilot Predicts Satellite Brightness

Where the brightness numbers come from, how they are calculated, and what they do — and do not — account for.

Document summary: Each satellite starts from a measured reference brightness, taken from the Stellarium database (built largely on decades of visual observations by Mike McCants and others). CuriousPilot then adjusts it for distance, Sun angle, and the dimming effect of the atmosphere. Starlink satellites get two extra models of their own. This page explains each step, and is equally clear about what is not modeled — glints from non-Starlink satellites, tumbling, satellite orientation, weather, and your local light pollution.

1. What “magnitude” means

Brightness is given in magnitude, astronomy’s brightness scale. Two things to remember:

ObjectMagnitude
Full Moon−12.7
Venus at its best−4.6
Space Station on a good pass−5 to −3
Brightest star (Sirius)−1.5
A typical Starlink on a good pass+3 to +4
Faintest star the eye can see, dark sky+6.0 to +6.5
Faintest star the eye can see, suburbs+4 to +5

The magnitude slider in the app hides anything fainter than the number you set.

2. The starting point: a measured “standard brightness”

Every satellite starts with one number, its standard brightness — how bright it would look at a fixed reference: 1,000 km away, with the Sun off to one side (half-lit).

That number lets satellites be compared fairly, no matter who observed them or when. It is the same convention used by Stellarium, Heavens-Above, and the amateur satellite-observing community.

Where CuriousPilot gets it: from the Stellarium satellite database. Stellarium’s values descend largely from the catalog built over decades by Mike McCants and other visual observers, who measured satellite brightness by eye and by camera against known reference stars.

So for most satellites, the base number is an observation, not a calculation.

3. When nobody has measured it

Stellarium does not have a value for every object. Newly launched satellites, obscure debris, and old rocket bodies are often missing. In that case CuriousPilot falls back to an estimate, in this order:

  1. A hand-set value for a few famous objects (Space Station, Hubble, the Chinese station modules).
  2. A guess based on the satellite’s name, if it belongs to a known constellation — Starlink, OneWeb, Iridium each get a typical value.
  3. A generic default for everything else, with rocket bodies and debris treated as somewhat brighter than average.

These fallbacks are the weakest part of the chain. They are rough by nature: a real object could be much fainter than the default, especially small debris. If a satellite in the app looks implausibly bright and it is an obscure object, this is the likely reason.

4. What the app calculates for each moment

The standard brightness is only the starting point. For every satellite at every instant, CuriousPilot adjusts it for the real geometry:

Distance. A satellite twice as far away is four times fainter. Overhead passes are much brighter than passes low on the horizon, purely because they are closer.

Sun angle (phase). Like the Moon’s phases, a satellite can be fully lit, half lit, or a thin sliver, depending on where the Sun is relative to your line of sight. Fully lit is brightest.

Air. Light is dimmed on the way down through the atmosphere. Straight overhead costs about 0.2 magnitudes. Low on the horizon it costs far more — roughly 1 magnitude at 10° elevation and 2 magnitudes at 5°. This alone can push a satellite that would be visible overhead below your detection threshold near the horizon. If you are at altitude (on a mountain or in an aircraft), you are above part of the atmosphere and the penalty shrinks.

Sunlight. A satellite in the Earth’s shadow is not lit at all, and is not shown as visible regardless of brightness.

5. Starlink gets extra treatment

Starlink satellites have a large flat, mirror-like surface facing the Earth. When the geometry lines up, that surface reflects the Sun straight at you and the satellite briefly becomes far brighter than the ordinary calculation would suggest — a flare. CuriousPilot models this specifically:

Flares are modeled for Starlink only. No comparable published brightness curves exist for other constellations, so the app does not attempt to predict their flares.

6. What the model does not account for

Being clear about the limits matters more than the numbers themselves.

7. How to use the predictions

8. Sources