SanAlertApplied AIApplied AI

Unofficial service. It does not replace sirens, RCB alerts or instructions from the authorities.

How SanAlert works

SanAlert shows whether drones or missiles tracked on the other side of the border are heading for the place you point at. It was started after the night of 17 September 2026, when sirens sounded in Podkarpacie and the Lublin region and the text message from Alert RCB came much later. It works for all of Poland.

This is not an official warning system

SanAlert is not part of the public administration and does not replace sirens, Alert RCB or messages from the authorities. Always follow the instructions of the authorities. Our data comes from open sources and may be incomplete or delayed.

Where the data comes from

What is on the map

An arrow
A tracked object whose course is known. A hollow arrow means the course is presumed. Missiles have a dark red arrow.
A dot
A tracked object whose position the source knows and whose course it does not.
A dashed ring
A warning for a whole oblast (region). The source does not know the position, so the mark stands in the middle of the oblast, not where anything is flying. Such a warning gives the level "Activity" at most.
Green outline of voivodeships
The voivodeships a current RCB or RSO message applies to: an RCB alert until its end, and if no end comes, for 12 hours after it was last sent; an RSO message while it is valid. Exercises and cancellations are not drawn. The words are under "Official messages"; the outline changes no level.
Tiers of RCB messages
About the war across the eastern border, RCB sends one of three messages, depending on the services' assessment, and we say which. Tier 1 of 3: a Russian air attack on Ukraine, Polish aircraft are operating in Polish airspace. Tier 2 of 3: a massed attack on western Ukraine, react to the alarm signals. Tier 3 of 3: a threat of an air attack on Polish territory, find a safe place. These are RCB's tiers, not SanAlert levels. Next to the message's heading, a disc with the tier's number: yellow 1, orange 2, red 3.
The time next to an RCB alert
RCB does not say when it sent an alert: gov.pl carries only the date, and an alert's page is sometimes filled in later. We check the list of alerts every 2 minutes, and RSO's messages every minute. "Published at about 21:43" is when the alert first showed: on gov.pl, or in RSO if RSO carried the same alert earlier (it can be a quarter of an hour ahead). That is not when it was sent: the SMS may have come earlier. When an alert was already on the list before we started checking it, we give no time.
The end of an RCB alert, and its other updates
RCB writes every later message about an alert, its end or the alert sent again, into the same page as a numbered update, newest on top. We show them the same way: newest on top, with the words and the voivodeships it was sent to. What a newer message superseded is greyed and crossed out. An end stands out in green, with a time: "All-clear at about 05:25" is when it first showed: on the alert's page, or in RSO if RSO carried it earlier; not when the SMS was sent. We also say which voivodeships RCB sent it to. An end saying "Brak zagrożenia na terenie Polski" (no threat in Poland) ends the alert in the whole of Poland, even when RCB writes that it went to only some voivodeships: those words are about the whole country. When RSO carries such an end before RCB's page does, the alert ends at once. An end in other words ends the alert only where it was sent; in the other voivodeships the alert still stands and they stay outlined.
Tinted raions in Ukraine
Alarms declared in Ukraine. The colour is the level the source gives: yellow (amber) or red (vermilion); neither is a SanAlert level colour. The pattern says what the alarm is about: a light fill with a dashed edge is a drone threat, a darker fill with a solid edge is a missile threat, an edge alone is an alarm with no stated reason. They are not SanAlert levels.

Tap an object, an aircraft or a raion to see the details. Under the map, “Layers” chooses whose machines are shown: Russian drones and missiles, Polish aircraft, those of the other NATO states, and others. On a phone the aircraft start hidden. The filter changes the map only; levels always count everything.

Whose machines these are

Arrows, dots and dashed rings
Russian drones and missiles. NEPTUN tracks what Russia attacks Ukraine with.
Aeroplanes and helicopters with a country code
Military aircraft that broadcast their own position (ADS-B), over Poland and the neighbouring countries. The country comes from the address the aircraft was given by its state. The colour says whether it is Poland, another NATO state, Russia or Belarus, or someone else.

Most military flights are routine: transport, refuelling, training. Combat aircraft on a mission usually do not broadcast their position, so an empty sky proves nothing. Aircraft never change a SanAlert level.

We do not show Ukrainian machines, or anything over Ukraine beyond what NEPTUN reports. Ukraine's military aircraft do not broadcast their position, and if one ever did, repeating it in public could help whoever is hunting it.

What the levels mean

Quiet
The sources are working and nothing is heading for your place.
Activity
There are tracked objects within about 150 km, or an alarm in a raion of Ukraine within about 100 km of you, but nothing is flying your way.
Approaching
An object's course points at your place, and at its typical speed it would arrive within about an hour.
Near
An object is within about 25 km, or could arrive within about 15 minutes. It needs at least medium confidence, and at medium confidence also two sightings in a row.
No data
We cannot see objects because the source is not answering. Then we do not know whether it is quiet, and that is what we show.

Your location

You can set your place in three ways: from the device's location, by tapping the map, or by choosing a town from the list if you would rather not share a location. It is stored only on your device. The level is worked out for the square, about 11 km on a side, that it lies in. Levels are worked out for Poland only: for a place abroad you will see "Out of range". If you switch notifications on in the app, the number of that square reaches our server, never the exact position. Details: Privacy.

On a computer and on a screen

In Chrome and Edge (Windows, Linux, Chromebook, Android) you can install SanAlert like an app, with the “Install” button at the top of the page. It works just like the website, notifications included if you switch them on.

For a school, an office, a fire station or a reception desk there is a view for a large screen: sanalert.pl/en/tv. It shows the time, RCB and RSO messages, the highest level in Poland and the map, in large type and without buttons. The screen stays on, and the page reloads itself every few hours. To show the level at your place too, add it to the address after “#m=”: latitude, longitude and a name, for example sanalert.pl/en/tv/#m=51.14,23.47,Chełm. A link from “Share this place” looks the same. What comes after “#” never reaches any server. A screen without SanAlert levels, with the RCB and RSO messages only: sanalert.pl/en/tv/?levels=0.

Borders on the map

Raion boundaries of Ukraine: OCHA and SSPE "Kartographia", made available by geoBoundaries under the CC BY 3.0 IGO licence. Country, voivodeship and oblast boundaries: Natural Earth.

What we do not see well

We see the eastern border best. Objects arriving from the north, over the Baltic or from the Kaliningrad region, are covered less well by the sources we use.