What is Starspots?
Starspots is a real-time 3D satellite tracker purpose-built for SpaceX Starlink visibility. It combines orbital data from CelesTrak (NORAD two-line element sets) with launch information from Launch Library 2 (The Space Devs) to show you exactly when and where Starlink deployment trains will cross your sky.
The app runs entirely in your browser — there's no backend server. SGP4 orbital propagation, twilight calculations, and shadow geometry all run in a Web Worker to keep the 3D globe smooth. Set your observer location, and Starspots will find every visible Starlink pass during astronomical twilight windows.
What You Get
How Starlink Visibility Works
A Starlink satellite is only visible to the naked eye when three conditions are met simultaneously:
- The observer is in darkness — the Sun is below the horizon, ideally during astronomical twilight (Sun 12–18° below horizon) or the transition into night
- The satellite is in sunlight — at orbital altitude (~550 km), it can still be illuminated by the Sun even after sunset at ground level
- The satellite is above the observer's horizon — it must have a positive elevation angle from the observer's position
This visibility window typically occurs 30–90 minutes after sunset or 30–90 minutes before sunrise. Outside these windows, either the observer has too much ambient light or the satellites enter Earth's shadow.
Starspots computes all of this automatically. It calculates the Sun's position, the satellite's position (via SGP4), Earth's shadow cone, and the observer's local twilight state for every candidate pass. Only passes that meet all three criteria appear in your results.
What Makes a Starlink Train?
SpaceX launches batches of 20–60 Starlink satellites at once aboard a Falcon 9 rocket. Immediately after deployment, the satellites are close together in a tight orbital cluster, appearing as a bright train of dots moving in a line across the sky.
Over the following days and weeks, the satellites use their ion thrusters to gradually spread apart and raise their orbits to the operational altitude of ~550 km. As they separate, the train becomes fainter and harder to distinguish from individual satellites.
Starspots groups satellites by their launch using orbital epoch proximity and RAAN/inclination clustering. Trains less than 7 days old are highlighted in vivid colors — these are your best opportunities for a spectacular sighting. Older groups fade to gray.
Where the Data Comes From
All data is sourced from publicly accessible services. No API keys or authentication are required.
| Source | Data | Cache |
|---|---|---|
| CelesTrak GP Catalog | Starlink TLEs | 2 hours (rate limit) |
| Launch Library 2 | Launch History | 30 minutes |
| Browser Geolocation | Observer Position | Session |
| GeoNames cities15000 | City Search | Bundled (30 days) |
Starlink Visibility FAQ
How can I see Starlink satellites tonight?
Open Starspots and set your location using the city search or your browser's geolocation. The app will show upcoming visible passes — times when a Starlink train crosses your sky during twilight while the satellites are still lit by the Sun.
For the best experience, look for passes from fresh launches (within 7 days). These trains are tightly grouped and appear as a spectacular string of bright dots. Check during astronomical twilight, roughly 30–90 minutes after sunset or before sunrise.
Why can I only see Starlink at certain times?
Satellites need to be sunlit to reflect light toward you, but your sky needs to be dark enough to see them. This only happens during astronomical twilight — when the Sun is 12–18 degrees below your horizon.
During full night, Starlink satellites pass through Earth's shadow and become invisible. During the day, they're far too faint against the bright sky. Starspots automatically computes these windows so you only see passes that are actually visible.
What is a Starlink train and why do they fade?
A Starlink train is a group of 20–60 satellites recently deployed from a single Falcon 9 launch. Right after deployment, they orbit close together and appear as a bright moving chain of dots.
Over days and weeks, each satellite uses its ion thruster to raise its orbit and spread apart. The train gradually disperses until the satellites reach their final ~550 km operational altitude, where they appear as individual, much fainter points. Fresh trains (≤7 days) are highlighted in Starspots because they offer the best viewing.
How accurate are the pass predictions?
Starspots uses SGP4 orbital propagation with real two-line element sets (TLEs) from NORAD via CelesTrak. Within a few days of the latest TLE epoch, position predictions are very accurate — typically within a few seconds of timing and a degree or two of sky position.
Accuracy degrades as TLEs age, especially for recently deployed satellites that are actively maneuvering. The app also computes astronomical twilight, satellite sunlight, and Earth shadow geometry to ensure predicted passes are genuinely visible to the naked eye.
What do the different train colors mean?
Vivid colors indicate fresh deployment trains launched within the past 7 days — these are the most spectacular to observe. Gray indicates older trains where satellites have spread apart and are harder to see as a distinct group.
The selected train is highlighted on the globe and in the pass list, so you can track a specific launch across the sky.
Where does the orbital data come from?
Two-line element sets (TLEs) come from CelesTrak's Starlink supplemental GP catalog, which sources data from NORAD's Space Surveillance Network. Launch information comes from Launch Library 2 by The Space Devs.
All data is publicly accessible and requires no API keys. CelesTrak rate-limits to one fetch per 2 hours per IP — the app caches TLEs in localStorage and falls back to stale cache on 403 responses rather than failing.
Is Starspots free? Do I need an account?
Completely free. No accounts, no API keys, no rate limits, no premium features. The app runs entirely in your browser with no backend server. You can install it as a progressive web app on your phone or desktop for offline access.
What browser do I need?
Starspots requires a browser with WebGL support: Chrome, Firefox, Safari, Edge, and their mobile equivalents. For the best experience, use a recent desktop browser. The app is fully responsive and works on mobile, though the 3D globe is more detailed on larger screens.
How does the pass predictor work technically?
The predictor runs in a Web Worker so it doesn't block the 3D globe. For each satellite group, it propagates every TLE using SGP4 (via satellite.js) across a time window, checking at each step:
1. Is the observer in darkness? (Sun altitude via suncalc)
2. Is the satellite above the observer's minimum elevation?
3. Is the satellite in sunlight? (Not inside Earth's shadow cone)
A pass starts when all three conditions are true and breaks when any one fails. Sun position is computed in ECI coordinates (not via suncalc) because the predictor needs the 3D vector for shadow geometry.
What is a TLE (Two-Line Element set)?
A TLE is a standardized data format encoding a satellite's orbital parameters at a specific time (the epoch). It includes inclination, right ascension of ascending node (RAAN), eccentricity, argument of perigee, mean anomaly, and mean motion.
TLEs are published by NORAD and distributed via CelesTrak. They're used with the SGP4 propagation model to predict satellite positions at any past or future time. The Starlink supplemental catalog contains TLEs for every active Starlink satellite.
What is astronomical twilight?
Astronomical twilight occurs when the Sun is between 12° and 18° below the horizon. The sky is dark enough to see most celestial objects, but the Sun can still illuminate satellites at orbital altitude. This is the prime window for Starlink visibility.
Civil twilight (Sun 0–6° below): Too bright for most satellites.
Nautical twilight (Sun 6–12° below): Some bright satellites visible.
Astronomical twilight (Sun 12–18° below): Best satellite visibility window.
Night (Sun >18° below): Low-orbit satellites enter Earth's shadow.
Satellite Tracking Glossary
| Term | Definition |
|---|---|
| Astronomical Twilight | Period when the Sun is 12–18° below the horizon. Sky is dark enough for satellite visibility while low-orbit objects remain sunlit. |
| CelesTrak | A service providing NORAD two-line element sets and supplemental orbital data for active satellites, including the Starlink catalog. |
| Deployment Train | A group of Starlink satellites recently deployed from a single Falcon 9 launch, still clustered in a visible chain formation. |
| Earth Shadow | The conical shadow cast by Earth into space. Satellites passing through it become invisible because they receive no sunlight to reflect. |
| Elevation | The angle of a satellite above the observer's horizon, measured in degrees. 0° is the horizon; 90° is directly overhead (zenith). |
| Epoch | The specific date and time at which a TLE's orbital parameters were measured. Prediction accuracy degrades as time from epoch increases. |
| Falcon 9 | SpaceX's partially reusable launch vehicle used for Starlink deployments. Typically carries 20–60 Starlink satellites per mission. |
| Inclination | The angle between a satellite's orbital plane and Earth's equator. Starlink orbits at ~53° inclination, covering most populated latitudes. |
| Ion Thruster | Electric propulsion used by Starlink satellites to raise their orbits from deployment altitude to operational altitude (~550 km) over weeks. |
| NORAD | North American Aerospace Defense Command. Tracks all objects in Earth orbit and publishes TLE data via Space-Track.org and CelesTrak. |
| RAAN | Right Ascension of Ascending Node. The angle describing where a satellite's orbit crosses the equatorial plane going northward. Used to cluster trains. |
| SGP4 | Simplified General Perturbations 4. The standard orbital propagation model for NORAD TLEs, accounting for Earth oblateness and atmospheric drag. |
| TLE | Two-Line Element set. A standardized format encoding satellite orbital parameters at a specific epoch, used with SGP4 for position prediction. |
| Visible Pass | A time window when a satellite crosses the observer's sky while sunlit, during darkness at ground level, and above the minimum elevation. |