Global Air Quality Forecast Scraper - Hourly PM2.5 & Pollen avatar

Global Air Quality Forecast Scraper - Hourly PM2.5 & Pollen

Pricing

from $0.15 / 1,000 results

Go to Apify Store
Global Air Quality Forecast Scraper - Hourly PM2.5 & Pollen

Global Air Quality Forecast Scraper - Hourly PM2.5 & Pollen

$0.15/1K 🔥 Air quality forecast scraper! Hourly PM2.5, ozone, NO2 & pollen worldwide with EU + US AQI. No key. JSON, CSV, Excel or API in seconds. Build health & allergy apps ⚡

Pricing

from $0.15 / 1,000 results

Rating

0.0

(0)

Developer

ninhothedev

ninhothedev

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Global Air Quality Forecast Scraper - Hourly PM2.5, Ozone & Pollen (No API Key)

Scrape hourly air quality forecasts and pollen counts for any coordinate on Earth - up to 7 days ahead, with no API key, no login and no proxy required. Feed the Actor a list of latitude/longitude pairs and it returns one clean, flat row per location per hour: PM2.5, PM10, ozone, nitrogen dioxide, sulphur dioxide, carbon monoxide, dust, UV index, European AQI, US AQI, an AQI category label, and alder, birch, grass and ragweed pollen counts.

Data comes from the Open-Meteo air quality API, which blends the CAMS European and CAMS global atmospheric composition models. It is free for non-commercial use and requires no credentials.

How is this different from the Air Quality Scraper?

This Actor is the forecast + pollen counterpart to Air Quality Scraper. They are complementary, not duplicates:

Air Quality ScraperAir Quality Forecast Scraper (this one)
Time dimensionCurrent conditions - one snapshot row per location, right nowHourly forecast - one row per hour, 1-7 days ahead
Rows per location124 x forecast days (up to 168)
PollenNot includedAlder, birch, grass, ragweed
Extra fieldsLive measurement valuesEuropean AQI + US AQI + AQI category, UV index, dust
Typical use"What is the air like right now?""What will the air and pollen be like tomorrow at 3pm?"

Use the current-conditions Actor for live dashboards and alerting on now. Use this one for planning, allergy calendars, scheduling and any model that needs a forward-looking hourly time series.

Features

  • No API key, no account, no proxy - runs out of the box.
  • Worldwide coverage - any latitude/longitude, 11 km resolution.
  • Hourly granularity - one dataset item per location-hour, ready for time-series charts.
  • Pollen forecasts - alder, birch, grass and ragweed grains/m3 (Europe).
  • Both AQI standards - European AQI and US AQI in the same row.
  • Human-readable AQI band - aqi_category maps European AQI onto Good / Fair / Moderate / Poor / Very poor / Extremely poor.
  • Timezone-correct timestamps - each time value is full ISO-8601 with the location's real UTC offset.
  • Clean, flat schema - no nested objects, exports straight to CSV, Excel, JSON or Google Sheets.

Input

FieldTypeDefaultDescription
modeselectforecastScraping mode. Currently forecast - hourly air quality and pollen per location.
locationsarray["52.52,13.405,Berlin", "51.5074,-0.1278,London"]One entry per location: "lat,lon" or "lat,lon,Label". The label is copied into location_name.
forecastDaysinteger3Days of hourly forecast per location (24 rows per day). Max 7.
maxItemsinteger1000Hard cap on total rows pushed across all locations. Max 10000.

Example input

{
"mode": "forecast",
"locations": [
"52.52,13.405,Berlin",
"51.5074,-0.1278,London",
"40.7128,-74.0060,New York",
"35.6762,139.6503,Tokyo"
],
"forecastDays": 3,
"maxItems": 1000
}

Output

One item per location-hour. Every field is nullable; hours where every pollutant is missing are dropped automatically.

{
"location_name": "Berlin",
"latitude": 52.5,
"longitude": 13.400002,
"timezone": "Europe/Berlin",
"elevation": 37.0,
"time": "2026-07-28T00:00:00+02:00",
"pm10": 8.9,
"pm2_5": 4.8,
"carbon_monoxide": 134.0,
"nitrogen_dioxide": 6.9,
"sulphur_dioxide": 0.6,
"ozone": 60.0,
"dust": 0.0,
"uv_index": 0.0,
"european_aqi": 24,
"us_aqi": 34,
"alder_pollen": 0.0,
"birch_pollen": 0.0,
"grass_pollen": 6.0,
"ragweed_pollen": 0.0,
"aqi_category": "Fair",
"source": "open-meteo",
"scraped_at": "2026-07-28T13:45:35.738263+00:00"
}

Field reference

FieldUnitNotes
location_name-Your label, or "lat,lon" if none supplied
latitude, longitudedegreesSnapped to the model grid cell
timezoneIANAResolved automatically from coordinates
elevationmGrid-cell elevation
timeISO-8601Local wall-clock time with real UTC offset
pm10, pm2_5ug/m3Particulate matter
carbon_monoxide, nitrogen_dioxide, sulphur_dioxide, ozoneug/m3Gaseous pollutants
dustug/m3Saharan/mineral dust
uv_indexindexClear-sky UV index
european_aqiEAQI0-100+, EEA scale
us_aqiUS AQI0-500, EPA scale
alder_pollen, birch_pollen, grass_pollen, ragweed_pollengrains/m3Europe only
aqi_category-Good / Fair / Moderate / Poor / Very poor / Extremely poor
source-Always open-meteo
scraped_atISO-8601UTC run timestamp

AQI category bands (European AQI): 0-20 Good, 20-40 Fair, 40-60 Moderate, 60-80 Poor, 80-100 Very poor, above 100 Extremely poor.

Use cases

  • Health apps - warn asthma, COPD and cardiovascular users hours before a PM2.5 or ozone spike instead of after it.
  • Allergy forecasts - drive pollen calendars and medication reminders from real birch, grass, alder and ragweed counts.
  • Environmental research - build reproducible multi-city hourly pollutant panels for exposure and epidemiology studies.
  • Smart home - schedule air purifiers, HVAC recirculation and window-opening automations around forecast AQI.

Also useful for running/cycling apps, outdoor event planning, construction dust compliance, ESG reporting and insurance risk models.

Pricing

Roughly $0.5 per 1,000 rows, plus standard Apify platform usage. A 4-city, 3-day run is 288 rows - a few cents. One API call per location returns the entire forecast window, so cost scales with locations, not with hours.

Tips

  • Fetching 7 days costs the same number of requests as 1 day; only row count changes.
  • Set maxItems to locations x forecastDays x 24 to keep runs predictable.
  • Pollen fields are modelled for Europe; expect nulls or zeros elsewhere.
  • Schedule the Actor daily and append to the same dataset to build a forecast-accuracy archive.

Data by Open-Meteo.com, based on CAMS (Copernicus Atmosphere Monitoring Service) models, licensed under CC BY 4.0. Only public, non-personal environmental data is collected - no personal data, so no GDPR obligations arise from the output. Attribute Open-Meteo when you redistribute the data.

Development

python -m compileall -q src
python tests/test_smoke.py # offline smoke tests, no network needed