How it works

What Orbinauts tracks

183 satellites of 6 kinds, and the live map draws every one of them by the same rules. Every one of them has a page of its own, with where it is now, its next pass over you and its orbit. 53 of them the site also writes about by hand — the satellites index groups them —: what it is, who flies it and what it is for, in each of the site's languages. 130 of them fly in the 5 constellations, GPS, Galileo, BeiDou, GLONASS, and BlueBird, and the site writes nothing by hand about any one of them: each one's page names it as the catalogue does and says what its orbit and its constellation say. Each constellation has a page too, which lists every one of its satellites with the way to its page and answers the question a receiver answers — how many of them are above your horizon right now — worked out in your browser from orbits the page already has.

Two things about an orbit decide what the rest of the site does with a satellite. Only one bright enough to be seen with the naked eye, which is 11 of the 183, gets pass times for a city: a city page about something nobody there can ever see would have nothing to say, so the others keep their place on the live map and their own page, and nothing more. And a satellite in a geostationary orbit stands over one longitude of the equator rather than rising and setting, so the site says where it stands, and no pass is ever computed for it — there are none to compute.

Two sources for the orbit

Every four hours Orbinauts fetches the current orbital elements of each satellite it tracks from Space-Track, the public catalogue of the US Space Force, in the Orbit Mean-Elements Message format the catalogue recommends. The elements describe the orbit at one instant, the epoch, and a standard model (SGP4) propagates them forwards or backwards from there. For the ISS, NASA also publishes an ephemeris: a table of the station's actual and planned state over the coming days, planned engine burns included. Orbinauts fetches it on the same schedule.

One rule chooses between the two: an answer uses the ephemeris when it covers the requested time and is fresh enough, and the elements otherwise. Every answer names the source it used and how old that source is, so staleness is never hidden.

Positions

A position is where the satellite is at one instant: the point on the ground beneath it and its altitude. It is computed on demand, never stored, either by propagating the elements or by interpolating between the ephemeris's vectors. The live map runs the same propagation code in your browser, from the elements alone, so it can move the marker every second without asking a server; anything with consequences, such as a pass time, comes from the API.

Passes

A pass is one crossing of the satellite above an observer's horizon: when it rises, when it culminates and how high, when it sets, and whether it is lit by the Sun while it does so. Orbinauts searches the coming days for these crossings from a point on Earth, either the one your browser reports or the centre of a city that has a page.

Most of a pass cannot be seen. What Orbinauts shows instead is the visible window: the stretch of the pass in which four things hold at once — the Sun is at least 6 degrees below the observer's horizon (nautical twilight or darker), the satellite is in sunlight rather than in the Earth's shadow, it is at least 10 degrees above the horizon, and its predicted brightness is magnitude 4 or brighter, about the faintest a naked eye finds under a city sky. The window's two ends are when the satellite appears and when it disappears, and those are the times the pages, the calendars and the feeds give: a pass that rises at 9:52 may only be in view from 9:53 to 10:00, after which it slips into the Earth's shadow while still high overhead. A pass with such a window is a visible pass; one without is still listed, with its own rise and set times, but is not marked visible. Where a pass has more than one such stretch, the longest is the window. Below 10 degrees a satellite hugs the horizon and is easily lost behind buildings, and visibility says nothing about clouds.

Brightness is predicted, never measured. A satellite may have a standard magnitude: how bright it looks from 1,000 km away with half its lit side turned towards the observer, one number taken from the values astronomers publish. From there the model carries the number to each instant of the pass — a satellite further away is fainter, by five magnitudes for every factor of ten in distance, and one showing a thin crescent of its lit side is fainter than one showing a full face, as the Moon is through its phases. The result is an estimate. It ignores the flashes off flat surfaces that can briefly make a satellite far brighter than the model says, and the haze of the atmosphere that dims anything low in the sky; and it knows nothing of how dark your own sky is. Each visible pass is shown with the brightest magnitude it reaches inside its window, in plain words: as bright as Venus, as bright as Jupiter, as bright as the brightest stars, or no brighter than a faint star.

What the pages show

A city page lists the visible passes of every naked-eye satellite over the next 10 days in one table, soonest first, each row naming its satellite, computed for the city centre and shown in the city's own time zone; times a few kilometres away differ by seconds. Its table is recomputed every four hours, when the elements are, and its calendar, feed and card carry the same passes. A satellite's page states its position at the moment the page was made, and whether the satellite was in sunlight or in the Earth's shadow then; in the browser it refreshes both every thirty seconds. The live map draws every satellite; for the one it follows, its ground track over the previous and next orbit and the area it is currently above the horizon of; and two bands where the Sun is down: twilight, where it has set but is less than 6 degrees below the horizon, and night, where it is at least 6 degrees below, dark enough for a visible pass. For an orbit that takes longer than 24 hours the track covers the last and next 6 hours instead of a whole orbit each way: the Earth turns under such a satellite several times before it comes round once, so a whole orbit would wrap the map rather than show where it has been and where it is going. On the map every satellite is drawn by the same rules, whether or not it has a page and whichever constellation it flies in: a small satellite sized by its mass, turned so that its chevron points the way it is moving over the ground, or without the chevron and upright for one in a geostationary orbit, which stands over the equator, all of them in one amber but the one the map follows, which is drawn in red. A space station is drawn as a station, a long truss with solar arrays at each end and its modules across it, and a smaller satellite is drawn with fewer cells on its panels, so that it stays sharp at its size. Whether the satellite is in sunlight or in the Earth's shadow, one of the four conditions of a visible pass, is said in words beside the map rather than drawn on its marker; its ground track is drawn fainter along the stretch it spends in the Earth's shadow.

Reading the map

The satellite the map follows trails two lines. The dashed line ahead of it is its next orbit and the thin line behind it its previous one; for an orbit that takes longer than 24 hours they are the next and last 6 hours instead. Either line fades along the stretch the satellite spends in the Earth's shadow, where the Sun does not light it. The white spotlight around the satellite is where it is above the horizon right now: from anywhere inside it, the satellite is somewhere in the sky. And the darker bands are twilight and night, where the Sun has set, the darker of the two where it is far enough down for a visible pass.

Accuracy and freshness

The computing engine is tested against an independent astronomy library on recorded scenarios: positions along the ephemeris land within about a hundred metres of it and pass times within a couple of seconds. The larger uncertainty is in the sources themselves. Elements drift as they age, by a few kilometres per day for the ISS, and an unplanned manoeuvre makes every prediction after it wrong until the next refresh. That is why every answer carries its source age, and why the status page shows whether the last refresh worked.

The API

Everything the pages show, the API answers in JSON: a satellite's current position, its ground track, the passes over any point on Earth, and the elements themselves. It is anonymous, limited to a number of requests per hour from each address, and every answer repeats the credit line it asks you to show with the data.