kanarche

About the data

This page covers what the map does not tell you on the page itself. Everything here is a property of the data rather than a bug waiting to be fixed, and each one can change how a number should be read.

This map is for reference, not medical advice

The readings come from volunteer low-cost sensors, model forecasts and official EU classifications. They can be wrong, late or missing. Use them to stay aware, not to make health decisions. If you have symptoms or a condition, ask a doctor. For official alerts, follow the Ministry of Health, the regional health inspectorates (РЗИ) and the Executive Environment Agency (ИАОС).

The sensors are not reference instruments

The readings come from the sensor.community network: low-cost optical particulate sensors, sited and maintained by volunteers. They are good at showing change over time and gross spatial patterns, and they are not regulatory monitors. High humidity in particular inflates optical PM readings. Their absolute values should not be compared against a legal limit as though they came from a reference station.

City areas are not all the same kind of thing

For 13 of the 27 provincial capitals we use the boundary of the city itself. The other 14 have no settlement-level boundary in OpenStreetMap, so we use the boundary of the whole municipality instead. A municipality covers considerably more ground than its city: a sensor kilometres outside the built-up area (in a village, on a hillside, beside a road through farmland) is attributed to the city and moves its median. Rural air is usually cleaner in summer and, where solid fuel heating is common, dirtier in winter, so the bias is not in a fixed direction.

Whole municipality: Blagoevgrad, Vratsa, Kardzhali, Lovech, Montana, Pazardzhik, Pernik, Pleven, Plovdiv, Sliven, Smolyan, Stara Zagora, Haskovo, Yambol.

So comparing Plovdiv (municipality) with Varna (city) compares two different kinds of area. The comparison is still informative. It is not like-for-like. Within one city the geometry is constant, so the trend over time is unaffected.

Coverage is uneven, and reported rather than hidden

Sensor density varies enormously: Sofia has many, some provinces have very few. An area's figure is only as representative as the sensors inside it, and an area with two sensors is not measuring the same thing as an area with two hundred. That is why coverage state is shown alongside every figure instead of being folded invisibly into it. Check it before drawing a conclusion from a sparse area.

A sensor near a border may be attributed to the neighbouring area

The boundaries are simplified to roughly 200 metres. Within that distance of a border, a sensor can fall on the other side of the simplified line from the real one. Affected sensors are few and the effect on an area's median is smaller still, but a single sensor's area label near a province or district edge should not be treated as authoritative.

Pollen is a model forecast, not a count

We do not measure pollen. The layer is the Copernicus CAMS European ensemble forecast for ragweed, mugwort, grasses, birch, alder and olive, in grains per cubic metre, delivered through Open-Meteo. We fetch it twice a day and show today and the next two days. An area takes the worst model cell inside it, or the nearest cell if none falls inside. A province shows the species with the highest level. The levels are low, moderate and high. Moderate starts at 10 grains per m³ for birch, alder, olive and mugwort and at 3 for grasses and ragweed. High starts at 100 and 50. These are the EAACI limits that CAMS uses. They are defined for hourly counts, and the map shows the daily mean forecast, so a day can read lower than the hourly scale would put it. No official Bulgarian numeric scale exists, so this is the European one.

A bathing water class covers several seasons, not today

Bathing sites and classes come from the EEA WISE Bathing Water Directive tables, read through the Discodata API for Bulgaria, under CC BY 4.0. The class is calculated from E. coli and intestinal enterococci over the current season and the three before it. The EEA publishes once a year. We import weekly, and the map shows the newest classification for each site. Single samples in the site panel are context, not a verdict on the water today. The class does not cover chemical pollution.

Where the data comes from

Readings from sensor.community contributors (ODbL 1.0). Province, city and Sofia district boundaries from OpenStreetMap (ODbL 1.0). The national boundary from Natural Earth. Pollen forecast from CAMS (Copernicus Atmosphere Monitoring Service) via Open-Meteo.com (CC BY 4.0). Bathing water classes from the European Environment Agency (CC BY 4.0). Bathing water lab results from the regional health inspectorates (RHI) Varna, Burgas and Dobrich, read from the files they publish (derived data under CC BY 4.0).

Privacy

This site sets no cookies.

It keeps a few preferences in your browser's local storage. They stay on your device. The site keeps no copy.

Stored keyWhat it remembers
kanarche:themeYour chosen colour theme: auto, light, or dark.
kanarche:map-layersWhich map layers are switched on.
kanarche:legend-openWhether the map legend panel is open.
kanarche:play-speedYour chosen playback speed for the time-lapse.
kanarche:map-windowThe time window the map shows: live readings or an average over a longer period.
kanarche:auto-refreshHow often the map refreshes itself with new readings.
kanarche:map-viewWhere the home map was last centred and zoomed, so it reopens there.
kanarche:locate-hint-seenThat the tip pointing at the locate button was already shown.
kanarche:favourite-sensorThe sensor you starred, so the map opens on it.
kanarche:panel-foldedWhether the sensor panel on the map was folded.
kanarche:panel-heightThe height you dragged the sensor panel on the map to.

Removes only the keys listed above.

Back to the map