The Pollen line in ClearSpot is driven by a monthly grains per cubic metre field for each of six taxa on an H3 grid. The heatmap, the point exposure call and the modal all read the same 0-5 per-taxon index defined in our shared pollen scale (concentration thresholds in code match the "Understand the pollen scale" legend page).
This is not the same artifact as the French department RAEP score published on pollens.fr: the RAEP is an expert allergo-risk product per département, while our grid is a continental, taxon-by-taxon translation of the Copernicus / Open-Meteo inspired pipeline so the map and exposure API stay in sync. You can still use the RNSA bulletin for clinical nuance, but the numbers in the app are those grains converted by the fixed bands below.
Taxa and 0-5 scale (grains / m³ → level)
For each month we average hourly model output to one mean concentration, then we compute the 0-5 class by comparing that mean to inclusive upper limits (values above the last cell get level 5):
| Taxon | Level 1 (very low → top) | 2 | 3 | 4 |
|---|---|---|---|---|
| Alder | 0-5 | 5-20 | 20-50 | 50-100 |
| Birch | 0-5 | 5-20 | 20-80 | 80-200 |
| Grass, mugwort, ragweed | 0-2 | 2-10 | 10-30 | 30-50 |
| Olive | 0-10 | 10-50 | 50-100 | 100-200 |
We label grass, mugwort and ragweed "fast" scales because a few grains per m³ can matter clinically (EAACI, national pollen calendars) while tree taxa with larger, heavier particles tolerate higher numbers before a level 3 / 4 event.
How a verdict is reached
- We convert each taxon in the local cell to a 0-5 level.
- We also store the dominant taxon (highest level, tie breaks toward the larger raw value) for map colours and tooltips.
- The chip trips "Not clear" when any level reaches your global pollen level (3/5 by default) or your per-taxon limit if you tune one stricter in the sensitivity panel.
Walk-through: what the modal is showing
Imagine birch mean = 32 grains/m³ and grass = 8 grains/m³ in the same cell. The birch level is 3, grass is 2. The gauge in the modal is painted from those levels, and with the default 3/5 threshold the verdict flips because one taxon hit 3 even though grass is still light. If you are only allergic to grass, lower other taxa in the per-taxon table or raise the global bar - ClearSpot is built for that diversity of sensitivity.
When two "composites" differ
The 0-100 environmental burden number on the exposure chip blends wind, air, pollen, noise and light with weights. It is a convenience signal: each module is compressed to 0-1, multiplied by its weight (pollen 0.22) and added.
The air + pollen + light combined heatmap, by contrast, takes the maximum 0-1 "breach" of each selected layer, so the colour is driven by whichever family is closest to the personal ceiling. Always read the "Data freshness" banner to see the month behind the pollen field.
Freshness, seasonality and "why is it old?"
Pollen models follow plant phenology. Outside the main season the crawler may still expose the most recent available monthly grid so you can see spatial structure, but concentrations can sit near zero - that is expected, not a bug. During peak weeks the monthly mean smooths out daily spikes; for hour-by-hour planning, add a national bulletin or a nowcast on top. Heat waves and long-range transport can also create brief peaks that a monthly block will average downward.
Data sources and calibration
Model chains trace back to Copernicus / Open-Meteo open inputs (see project cron documentation). The numeric bands above were set by ClearSpot editors using EAACI-style allergen importance and published national calendars (RNSA, DWD, UK Met) as calibration hints, and the table lives in a single PHP class so every consumer (heatmap, API, legend page) cannot drift. Official WHO statements on PM or noise do not replace allergist advice: use ClearSpot as a mapping layer, not a treatment plan.