HERE Technologies and Wherobots announce partnership Learn More

Starlink Limit in Ukraine: Dozens of Satellites Overhead

Globe with Starlink satellites as dots and a circle around Kyiv, with the text: Starlink limit in Ukraine: dozens of satellites overhead. At least 47 satellites were 25 degrees or more above the horizon over each of 7 cities in every 10-minute count on October 20 and 21.

When Ukrainian forces began losing Starlink connections used by interceptor drones, the disruption raised two important questions. Were there too few Starlink satellites above Ukraine? And did the loss of connectivity allow more Russian attack drones to reach their targets? News reports described the connection problems and the competing explanations. We found no report that measured how many satellites were overhead.

We used Wherobots to investigate, combining satellite-orbit data with the locations of Ukrainian cities, geographic boundaries, and satellite-detected fires. We found that at least 47 Starlink satellites were 25 degrees or more above the horizon at each of seven Ukrainian cities in every measurement taken over a 24-hour period on October 20 and 21. We also examined fire records before and after the reported connection restrictions, looking for evidence of an increase in unusual fire activity that might suggest more attacks were getting through.

The findings offer a new way to examine a consequential technology disruption. Rather than relying solely on statements from officials or speculation about what went wrong, we used publicly available data in Wherobots to test specific explanations against observable evidence. The analysis does not establish why the connections failed or whether the restrictions allowed more attacks to succeed. But it tests one explanation, too few satellites overhead, against the data, at seven cities for one day. It also identifies what additional information would be needed to reach firmer conclusions.

How Wherobots Makes This Possible

Answering these questions requires bringing together information that normally exists in separate datasets: satellite orbits, city locations, geographic boundaries, fire detections and the location of the front line.

With Wherobots, we combined these sources and ran the calculations. We worked out where each satellite was every 10 minutes, calculated how high it appeared above each city, and counted those 25 degrees or more above the horizon. We also matched satellite-detected fires to the towns where they occurred and compared nights before and after the limit.

These calculations give counts that can be checked. Instead of a globe covered in satellite positions, we got the number of satellites above each city every 10 minutes. Instead of scattered fire detections on a map, we got fire counts for thousands of towns.

For this investigation, we used Wherobots to calculate more than 1.6 million satellite positions in one job. A second job matched fire records from the National Aeronautics and Space Administration (NASA) to more than 20,000 town and municipality boundaries in under three minutes.

Here’s what the analysis found.

1. Were There Too Few Starlink Satellites Above Ukraine?

The first question was whether a shortage of satellites overhead could explain the loss of Starlink connections.

To investigate, we used Wherobots to calculate the positions of Starlink satellites every 10 minutes and count those appearing at least 25 degrees above the horizon from seven Ukrainian cities. That is the minimum angle for a dish in SpaceX’s filings to the US Federal Communications Commission (FCC).

We counted over the 24 hours leading up to 14:15 Coordinated Universal Time (UTC) on October 21, 2026.

The results were consistent across all seven cities:

  • Kyiv: At least 47 satellites in every measurement.
  • Kharkiv: At least 49.
  • Lviv: At least 51.
  • Dnipro: At least 54.
  • Odesa: At least 58.
  • Zaporizhzhia: At least 60.
  • Kherson: At least 62.

We took 145 measurements per city. In none of them did the count fall to zero.

Map of Ukraine with 7 cities, each labelled with the fewest Starlink satellites at least 25 degrees above it. The counts were taken 145 times on October 20 and 21, 2026: Kyiv 47, Kharkiv 49, Lviv 51, Dnipro 54, Odesa 58, Zaporizhzhia 60 and Kherson 62.
The fewest Starlink satellites at least 25 degrees above each city, counted every 10 minutes in the 24 hours to 14:15 Coordinated Universal Time on October 21, 2026. Orbits: CelesTrak. City locations and border: Overture Maps. Analysis: Wherobots.

At one point during the observation period, 65 Starlink satellites were at least 25 degrees above Kyiv’s horizon. Those satellites did not all need to be physically above the city. A satellite orbiting over a neighboring country or the Black Sea can still be at least 25 degrees above Kyiv’s horizon.

The findings suggest that a simple shortage of satellites in the sky was not a convincing explanation for the connection losses in these seven cities during the period examined.

There are important limitations, however. We counted at seven locations over one day and did not measure the connections of individual military terminals. We also did not count every satellite that might be part of the wider Starlink system. It leaves out satellites listed under other names, such as government Starshield satellites, so each count is a minimum.

The takeaway: We counted at least 47 satellites 25 degrees or more above each city, but the number of satellites overhead alone cannot establish whether a particular terminal could connect to the network.

2. Did the Connection Restrictions Allow More Russian Attacks to Get Through?

The second question was whether the reported Starlink restrictions coincided with an increase in Russian attacks reaching Ukrainian towns.

Terminals have lost their connections when moving faster than approximately 161 kilometers per hour (100 mph), the Kyiv Independent reported. The limit began on the night of October 13, 2026. The restriction was significant because many of the interceptor drones that Ukrainian crews fly to shoot down Russia’s Shahed attack drones link to Starlink. On October 16, President Volodymyr Zelensky said the limit had let some jet-powered Shaheds get through, Ukrainska Pravda and Liga reported.

If the restrictions had allowed more attack drones to reach their targets, one possible indicator would be an increase in fires in Ukrainian towns away from the front line.

With Wherobots, we examined NASA satellite-based fire detections in towns more than 30 kilometers from Russian-held territory. We compared unusual fire activity in the 10 nights from October 14 to 23 with the preceding 30 nights.

The results did not show a clear increase:

  • After the reported restriction: One unusual fire night was recorded across the 10-night period, in Shepetivka on October 16.
  • Before the restriction: Eight unusual fire nights occurred across seven towns during the preceding 30 nights.
  • The same dates in 2025: No unusual fire nights were recorded in the comparison period. Against 2025, the one night in 2026 is a rise, too small to tell from chance.

An unusual fire night was defined as a night when a town recorded at least three more nighttime fire detections than its average night from April 2018 to December 2021.

Map of Ukraine, leaving out Russian-held land and towns within 30 km of it. Each town with an unusual fire night is a dot labeled with its name and the date of each night. From October 14 to 23, 2026, after the Starlink limit, towns had 1 unusual fire night, in Shepetivka on October 16. From September 14 to October 13 they had 8, in 7 towns. None of 11 power plants had a fire day from October 14 to 23.
Unusual fire nights in towns far from the front, September 14 to October 23, 2026. An unusual fire night has at least 3 more night fire records than the town’s April 2018 to December 2021 average. Russian-held land and towns within 30 km of it are left out. An inset shows the area around Kyiv at a larger scale. Fires from NASA Fire Information for Resource Management System (FIRMS), towns from Overture Maps and Russian-held land from DeepStateMap, analyzed in Wherobots.

The comparison is far from conclusive. The periods differ in length, the total number of unusual fire nights was small, and three of the 10 nights after the restriction had no nighttime fire records at all in the towns examined. Cloud cover and the timing of satellite observations can also affect fire detection. For October 23, NASA had not yet published all its records.

More importantly, not every attack starts a fire that a satellite can detect. The absence of a recorded fire does not mean an attack did not occur. A fire that is out before the satellite passes over is not recorded.

The takeaway: The available fire data did not reveal a clear increase in unusual fire activity after the reported Starlink restriction. But it cannot establish whether more Russian attacks succeeded, and it cannot rule out an effect on Ukrainian defenses.

3. How Did We Turn Satellite Data Into Answers With Wherobots?

The investigation illustrates how combining different kinds of geographic information can help answer questions that are difficult to resolve using any one dataset alone.

With Wherobots, we brought together three main categories of information.

Satellite data: Publicly available orbital information from CelesTrak, which republishes tracking data from the U.S. Space Force, provided the basis for calculating Starlink satellite positions.

Geographic data: Overture Maps provided city locations, town and municipality boundaries, and Ukraine’s mapped borders.

Fire and conflict data: NASA’s Fire Information for Resource Management System supplied satellite-detected fire records. DeepStateMap provided mapped Russian-held territory, which we used to exclude towns near the front from the fire comparison.

In the first job, we calculated the positions of 11,148 Starlink satellites at 10-minute intervals over 24 hours, producing 1,616,460 satellite positions. We then used Wherobots to calculate the satellites’ viewing angles from the seven cities and additional nearby reference points.

In a second job, we matched NASA fire detections to 20,683 town and municipality boundaries, making it possible to compare unusual fire activity across locations and time periods.

The fire job ran in under three minutes.

The key is that we did more than put the data on a map. We used Wherobots to perform the calculations needed to connect satellite positions with specific places, and fire detections with individual towns. That turned millions of data points into results that could be used to investigate concrete questions about the disruption.

4. What the Analysis Can and Cannot Tell Us

The satellite counts test one explanation, too few satellites overhead, against the data, at seven cities for one day. The fire comparison is too small to show whether more attacks got through. Neither establishes the underlying cause.

The satellite counts do not support the idea that too few Starlink satellites were overhead at the seven cities during the period measured. However, a dish connects only to the satellite SpaceX’s network assigns it, which we did not measure.

A terminal’s connection may depend on which satellite the network assigns, the terminal’s movement, ground infrastructure, interference and other factors. We did not have access to the military terminal connection logs needed to examine those factors directly. The counts would also miss a gap shorter than 10 minutes, or a gap between the seven cities. They do not measure how a moving dish switches satellites or how many users share one satellite.

The fire analysis is similarly limited. Satellite-detected fires offer one way to look for possible changes in attack activity, but they are not a comprehensive record of attacks, interceptions or damage. The relatively small number of unusual fire nights makes it impossible to draw a reliable conclusion about whether the restrictions changed the success rate of Russian attacks.

The satellite counts cover only October 20 and 21. Orbit data from before October 14 would let us compare the sky over Ukraine before and after the reported restriction.

We identified the additional evidence that would help resolve the questions: orbital data covering the earlier period, connection logs from affected terminals, information about terminal speeds, a statement from SpaceX, and official daily figures for Russian drones launched and intercepted.

This distinction is important. Geospatial analysis can test specific explanations against the data without necessarily identifying the definitive cause of an event.

5. Why This Matters Beyond Ukraine

The Starlink investigation demonstrates a broader application of geospatial intelligence: using the location and movement of objects to investigate how real-world systems operate.

The same analytical approach can help answer questions such as:

  • How many satellites were 25 degrees or more above the horizon at a location when a communications disruption occurred?
  • Did observable activity on the ground change following a network disruption?

The answers would depend on the available data and the particular system being investigated. Satellite positions alone cannot establish network availability or performance. But they can provide an important piece of evidence when combined with connection logs, ground infrastructure data and other operational information.

The approach also illustrates how Wherobots can be applied to very different problems. In our analysis of Super Typhoon Champi, we used Wherobots to combine storm-track data with building locations to measure potential exposure in specific communities. In this case, we connected satellite-orbit calculations with geographic locations and fire records to investigate a communications disruption and its possible consequences.

Both analyses share the same underlying idea: geographic data becomes more useful when it can be connected to the places, objects and events that matter.

Data Sources and Methodology

The satellite analysis used orbital data from CelesTrak and city locations from Overture Maps. The fire analysis used satellite-detected fire records from NASA’s Fire Information for Resource Management System (FIRMS), town and municipality boundaries from Overture Maps, and mapped Russian-held territory from DeepStateMap.

Satellite positions were calculated using Simplified General Perturbations 4 (SGP4), a standard method for propagating satellite orbits from the orbital data format used by the U.S. Space Force. We used spatial calculations in structured query language (SQL) in Wherobots to measure satellite viewing angles from the selected locations.

We measured at seven Ukrainian cities every 10 minutes during the 24 hours leading up to 14:15 UTC on October 21, 2026. The public orbital data could be up to 2.5 days old, and we did not measure the resulting position error.

The fire analysis assigned NASA fire detections to the smallest mapped town or municipality containing each record. It excluded towns within 30 kilometers of Russian-held territory to reduce the influence of fires associated with nearby fighting.

The findings are limited to the locations, dates and datasets examined. They do not establish the cause of the Starlink connection losses, determine whether individual terminals could connect to satellites, or demonstrate whether the restrictions changed the number of successful Russian attacks.

Other checks

At 20 degrees, which news reports say a 2026 FCC decision allows for some satellites, every city had at least 70 satellites in every count. At 40 degrees, every city had at least 12.

At 161 km/h, a dish moves 26.8 km in 10 minutes, so we also counted at a point 26.8 km east of each city. The largest difference between a city’s count and the count 26.8 km east at the same time was 7 satellites, at Kharkiv, 10% of its count. A satellite at the usual height of 477 km is 25 degrees or more above a city only within 837 km of it. Moving 26.8 km shifts that circle by 3% of its radius, so this check is weak.

Our orbit file covered 11,148 of the 11,151 Starlink satellites the public catalog listed in orbit on October 22, 2026. KeepTrack, a satellite tracking site, counted 11,131 in orbit in October 2026. The catalog’s fleet fell from 11,155 satellites on October 13 to 11,151 on October 21. We dropped this comparison, because it counts the whole world and the fleet shrinks in any week without a launch.

A fire day at a power plant is a day with at least 3 more fire records within 3 km than the plant’s average day from April 2018 to December 2021. Eleven power plants had no fire day from October 14 to 23. At their rate earlier in 2026, about 0.1 fire days would be expected in 10 days, so the zero is too weak to tell either way. The count also missed a real strike on October 13, the day before the comparison window. It found no fire day at the Kyiv plants that day, when missiles hit a Kyiv power plant, the Associated Press and Euronews reported.

Frequently asked questions

Did Starlink's satellites leave the sky over Ukraine?

Not over the 7 cities we tested. We counted every 10 minutes in the 24 hours to 14:15 Coordinated Universal Time on October 21, 2026. In every count, each city had at least 47 Starlink satellites 25 degrees or more above the horizon. That is the minimum angle for a dish in SpaceX’s filings.

The test covers 7 points for one day. It could miss a gap between the cities or on other days.

Did the number of Starlink satellites drop after October 14?

Yes, by 4 of 11,155, from October 13 to 21, 2026, in the public satellite catalog. In those days 4 satellites came down. The catalog lists no Starlink launch from October 14 to 21, though it may not yet list a recent launch.

We first compared this count before and after October 14, then dropped the comparison. The fleet shrinks in any week without a launch, and the count covers the whole world, not the sky over Ukraine.

Did Elon Musk shut off Starlink in Ukraine?

The reports describe a speed limit. The Wall Street Journal reported on October 20, 2026, that Musk ordered a slowdown of the military Starlink service that Ukraine uses, CNBC reported. Terminals lose their connection when they move faster than about 161 km/h, the Kyiv Independent reported.

In every 10-minute count on October 20 and 21, each of 7 cities had at least 47 satellites 25 degrees above the horizon. Our counts cannot show who set the limit.

Did the Starlink limit let more Russian attacks through?

Fires in Ukrainian towns far from the front show no clear rise after the limit. We counted unusual fire nights in satellite fire records from the National Aeronautics and Space Administration (NASA). An unusual fire night is a night when a town had at least 3 more night fire records than its average night from April 2018 to December 2021.

We found 1 unusual fire night in the 10 nights after the limit and 8 in the 30 nights before. Both counts are small. The same dates in 2025 had none, a count too small to compare. Three of the 10 nights had no night fire records at all. A strike that starts no fire in the satellite records does not show up in this count.

How many Starlink satellites are there?

The public satellite catalog lists 12,943 Starlink satellites launched since May 2019. Of those, 11,151 were still in orbit on October 22, 2026, and the catalog marks 10,837 as working. The other 1,792 have come back down and burned up. CelesTrak publishes the catalog from United States Space Force tracking data.

What does 25 degrees above the horizon mean?

It is the angle between the horizon and the satellite, seen from the ground. SpaceX’s filings to the United States Federal Communications Commission (FCC) say a Starlink dish connects only to satellites at least 25 degrees above the horizon. News reports say a 2026 FCC decision lowered that to 20 degrees for some satellites. We counted at 20, 25 and 40 degrees.

How did we count the satellites and the fires?

We downloaded the published orbits of 11,148 Starlink satellites from CelesTrak. In Wherobots, we calculated where each of the 11,148 satellites was every 10 minutes for 24 hours: 1,616,460 positions. Database queries then measured each position’s angle above 7 Ukrainian cities, and above a point 26.8 km east of each city.

For the question about attacks, a second Wherobots job matched NASA fire records to 20,683 town and municipality outlines from Overture Maps. It left out towns within 30 km of Russian-held land, using that land’s outlines from DeepStateMap. It also counted fire records near 11 power plants.

Where does the data come from?

Orbits and launch and re-entry dates come from CelesTrak, which republishes United States Space Force tracking data. City locations, town outlines and Ukraine’s border come from Overture Maps. Fire records come from NASA’s Fire Information for Resource Management System (FIRMS). Russian-held land comes from DeepStateMap.

The 11 power plants come from public lists of Ukraine’s power plants. We placed most of them on mapped plant features from Overture Maps. Kyiv CHP-5, a combined heat and power plant, and the Zmiiv plant sit at their listed locations instead. The news reports are linked in the article. We did the analysis in Wherobots.