Skip to content

Air at the AQMS Gjilan station

Gnjilane, Kosovo

Network: Kosova Environmental Protection Agency ( KEPA) · Station code: XK0009A

In 2025

at least

4 days

with an 8-hour average of ozone (O₃) above the target value of 120 µg/m³.

Readings are missing for part of the period, so the real number may be higher.

at least

2 days

with a daily average of particulate matter PM10 above the EU limit of 50 µg/m³.

Readings are missing for part of the period, so the real number may be higher.

Worst day: July 24, 2025, O₃ 140 µg/m³ as a daily average, 1.2 times the limit.

Daily average for 205 of 365 days · data for 2025 not yet finally verified · Yardstick: EU limits (Directive 2008/50/EC)

All figures by year and month

No data has arrived from this station since November 27, 2025 at 20:00

No reading for 314 days.

We take the readings from the European Environment Agency (EEA), and no new values for this station are coming from there. The cause may lie with the station itself or with the data transmission.

Last reading: November 27, 2025 at 20:00
Measured then: NO₂ 7.2 µg/m³, O₃ 33.3 µg/m³, PM10 6.1 µg/m³, PM2.5 5.9 µg/m³, SO₂ 13.6 µg/m³

All outages of this station

Nearest station measuring now: Kumanovo, None, North Macedonia, about 42 km away.

That reading is from another place. Your air may be better or worse.

Go to that station

How the air is changing

There are not enough readings to compare with the week before.

  • PM10: too few readings to compare
  • PM2.5: too few readings to compare
  • NO₂: too few readings to compare
  • O₃: too few readings to compare
  • SO₂: too few readings to compare

There are not enough readings to compare with the month before.

  • PM10: too few readings to compare
  • PM2.5: too few readings to compare
  • NO₂: too few readings to compare
  • O₃: too few readings to compare
  • SO₂: too few readings to compare

Show

Ozone O₃

no measurement

Now

too few readings

Last 24 hours

measured in 0 % of hours

too few readings

Last 7 days

measured in 0 % of hours

too few readings

Last 30 days

measured in 0 % of hours

too few readings

Last 12 months

measured in 13 % of hours · provisional

Days in 2023: O₃, 8-hour average above 120 µg/m³

3 days above the limit. 20 days without any reading from the station.

1102031JanFebFeb 9: no data from the stationMarAprApr 8: no data from the stationApr 9: no data from the stationApr 10: no data from the stationApr 11: no data from the stationApr 27: no data from the stationMayJunJun 4: no data from the stationJun 5: no data from the stationJun 6: no data from the stationJulJul 11: 128 µg/m³, above the limitJul 19: 142 µg/m³, above the limitJul 29: 121 µg/m³, above the limitAugAug 7: no data from the stationAug 8: no data from the stationAug 9: no data from the stationAug 10: no data from the stationSepSep 3: no data from the stationSep 4: no data from the stationSep 6: no data from the stationSep 10: no data from the stationSep 11: no data from the stationSep 12: no data from the stationOctNovNov 9: no data from the stationDec
  • above the limit
  • below the limit
  • too few readings for the day
  • no O₃ data in the EEA database
  • no data from the station
Days above the limit with values (3)
  1. Jul 11 128
  2. Jul 19 142
  3. Jul 29 121

Values in µg/m³, limit 120 µg/m³.

Months of 2023

MonthDays above 120Highest 8 hNo readings
January0710
February0881
March0980
April0955
May0940
June01083
July3 above the number allowed1420
August01184
September01076
October01040
November0681
December0650

Values in µg/m³. ■ marks a month with at least one day above the limit; the number allowed applies to the whole year. “No readings”: days on which not a single reading came from the station.

There are no readings for this period.

Last 7 days, every hour: O₃ in µg/m³
Last 30 days, highest 8-hour average of the day: O₃ in µg/m³There are no readings for this period.00.519/99/169/239/30
no data from the station
Last 30 days, highest 8-hour average of the day: O₃ in µg/m³
Values as a table
Dayµg/m³Note
Tue, 10/6no data from the station
Mon, 10/5no data from the station
Sun, 10/4no data from the station
Sat, 10/3no data from the station
Fri, 10/2no data from the station
Thu, 10/1no data from the station
Wed, 9/30no data from the station
Tue, 9/29no data from the station
Mon, 9/28no data from the station
Sun, 9/27no data from the station
Sat, 9/26no data from the station
Fri, 9/25no data from the station
Thu, 9/24no data from the station
Wed, 9/23no data from the station
Tue, 9/22no data from the station
Mon, 9/21no data from the station
Sun, 9/20no data from the station
Sat, 9/19no data from the station
Fri, 9/18no data from the station
Thu, 9/17no data from the station
Wed, 9/16no data from the station
Tue, 9/15no data from the station
Mon, 9/14no data from the station
Sun, 9/13no data from the station
Sat, 9/12no data from the station
Fri, 9/11no data from the station
Thu, 9/10no data from the station
Wed, 9/9no data from the station
Tue, 9/8no data from the station
Mon, 9/7no data from the station
Last 12 months, monthly average: O₃ in µg/m³highest 34 µg/m³, latest 34 µg/m³0255075DecFebAprJunAugOcthighest 34
Last 12 monthsa year earliermonth with days without data from the station
Last 12 months, monthly average: O₃ in µg/m³
Values as a table
Monthµg/m³a year earlierNote
October 2026 so fartoo few readings36.5year before: same days · 6 days without data from the station
September 2026too few readings37.530 days without data from the station
August 2026too few readings55.431 days without data from the station
July 2026too few readings55.631 days without data from the station
June 2026too few readingstoo few readings30 days without data from the station
May 2026too few readings24.831 days without data from the station
April 2026too few readingstoo few readings30 days without data from the station
March 2026too few readingstoo few readings31 days without data from the station
February 2026too few readings28 days without data from the station
January 2026too few readings31 days without data from the station
December 2025too few readingstoo few readings31 days without data from the station
November 202533.8too few readingsmeasured in 86 % of hours · provisional · 3 days without data from the station

O₃ by year

Yardstick: EU limits (Directive 2008/50/EC)

Measure202520242023
Days with 8-hour average above 120 µg/m³ (target value 25)≥ 4²12≥ 3²
Annual average, µg/m³too few48.7¹50.7¹
Highest 8-hour average, µg/m³140July 24136August 2142July 19
Hours measured63 %89 %76 %
Days without any reading from the station1022220

The monitoring networks have not yet finally verified this year’s data. The EEA publishes verified values once a year.

≥ means at least: more than a tenth of the days or hours are missing, so the real number may be higher.

¹ Fewer than 90 % of the hours were measured, so we do not compare this average with the limit.

² Too few readings to compare with the number allowed: the figure covers only what was measured.

■ and a figure in red: more than is allowed for the whole year.

The worst days of 2023

DayHighest 8 hTimes the limit
Jul 19, 20231421.2 ×
Jul 11, 20231281.1 ×
Jul 29, 20231211.0 ×

Daily average in µg/m³, daily limit 120 µg/m³. Days with the same unverified value over many hours are not on this list.

Outages in the last 12 months

Every period of at least 24 hours in which no reading arrived from this station.

Days without a reading: 314

1 outage, 7,538 hours in total in the last 12 months.

Timeline of outages from October 7, 2025 to today

FromToDuration
Nov 27, 2025 20:00still ongoing314 days

Calculated from the hourly values the EEA publishes. If late values arrive afterwards, an outage gets shorter or disappears.

Where the data comes from

Measured by Kosova Environmental Protection Agency ( KEPA). We take the values from the European Environment Agency (EEA) under the CC BY 4.0 licence.

Values marked provisional have not been fully checked by the network yet. The EEA publishes verified data for the previous year once a year, usually by the end of September.

An hourly value is the average of one hour. We show the end of the hour: the value to 18:00 was measured from 17:00 to 18:00.

A day runs from midnight to midnight local time.

We only show an average when at least three out of four hours in the period have a reading. The EU air quality directive requires this for daily averages, and we apply the same rule to longer periods. We compare an annual average with the EU limit only once 90 % of hours are measured, as the directive requires. For 12 months and for a year we ask for more: if less than 90 % of hours are measured, every full calendar month needs readings for at least half of its hours. Otherwise a whole season could be missing from the average, such as summer, when ozone is highest.

We do not call a difference of up to 10 % a change, nor one of up to 1 µg/m³ at low levels, because weather and measurement uncertainty alone cause differences that size.

When a station sends no reading, the EEA sometimes fills the hour with a model estimate. We draw those hours dashed and leave them out of every average.

The EU limits come from Directive 2008/50/EC. Here they serve as a yardstick for comparison. When more than a tenth of the days or hours are missing, the number of exceedances can only be higher, so we write “at least” in front of it.

How we measure

samoEKO is a brand of samoLabs, Juelich.