Skip to content

Method and evaluation

What is forecast

Coldfront forecasts the ARE consultation incidence of the Robert Koch Institute: the estimated doctor visits for acute respiratory illness per 100,000 inhabitants and week. The forecast reaches 1 to 4 weeks beyond the last observed week, for Germany and for each federal state. Every forecast contains a 50 % band and an 80 % band.

The models

Five models are compared. Depending on the evaluation result, either the ensemble or the calendar-aligned seasonal baseline is shipped (see below).

  • Seasonal baseline (plain): the value of a calendar week is the distribution of the same week in earlier, cleaned seasons, using a window of ±1 week. This was the baseline of the first protocol.
  • Seasonal baseline (calendar-aligned): like the plain baseline, but the earlier values are first adjusted for the care-seeking calendar effect and aligned to the target week. It is the stricter reference of the second protocol and is shipped on fallback.
  • Persistence: the last observed week is carried forward unchanged. It is the simplest reference.
  • Regional model: linear quantile regression on the logarithmic growth, pooled over all federal states, with calendar adjustment. The feature groups are chosen in tuning.
  • Ensemble: weighted average of the quantiles of the seasonal baseline and the regional model. The weight of the regional model is chosen from a grid in tuning (start value 0.5).

Spread factor: the bands of the ensemble are widened by a factor k, which is chosen together with the ensemble weight on the tuning seasons. The regularisation of the regression (value 1.0) is a start value.

Feature groups

Feature groups of the regional model
GroupContent
dynamicsLevel compared with the previous year and growth over the last 1 and 2 weeks
seasonPosition in the yearly cycle (calendar week)
holidaysShare of vacation periods at the origin and in the target week
weatherWeekly maximum and minimum temperature (DWD) and their trend
wastewaterWastewater load for SARS-CoV-2, influenza and RSV: level and growth (AMELAG)
Source: package forecast-core, configuration pipeline/config/evaluation.json.

Why there is no forecast for the whole season

How strong a season is depends on the mix of pathogens, immunity and vaccination rates. These quantities cannot be derived from the data. Coldfront therefore extends the observed activity by 1 to 4 weeks. It does not make statements about the season level or the timing of a peak far beyond that.

Evaluation protocol

The protocol (version 1) was fixed before the first evaluation. It was amended once afterwards (version 2, see below). What follows is the state of version 2.

  • No random split: the evaluation rolls forward. At each origin only data are used that would have been known at the time, with the publication lag of each signal.
  • Tuning and test: the earlier seasons are used for tuning, the most recent one was the test season. Under version 1 this test season was evaluated once and was untouched at that time. Under version 2 it is descriptive only; the next untouched test season is 2026/27.
  • The weeks from 2020-W10 to 2022-W39 are excluded, because testing, closures and quarantine rules distorted the series.
  • Metrics: MAE (mean absolute error of the median), WIS (weighted interval score, lower is better, scores the median and both bands together) and the coverage of the 50 % and 80 % bands.
  • Breakdowns by federal state, forecast horizon and wave phase. Phases: low below 30 % of the seasonal maximum, peak from 85 % of the maximum, otherwise rise or decline according to the direction of the smoothed curve.
  • Comparisons use a block bootstrap: blocks of 4 weeks, 1,000 draws, fixed random seed. Reported are the mean WIS difference, the 95 % interval and the number of seasons in which the model is better.
  • Peak timing (new in version 2): per forecast horizon, see the definition in the section on peak timing.
  • Publication rule: a model is shipped only if its mean WIS is at least 10 % below the calendar-aligned seasonal baseline. The 10 % are a start value without empirical justification. Otherwise this baseline is shipped.

Amendment of the protocol (version 2)

After the first evaluation, a diagnosis was carried out on the tuning seasons only (not on the test season). It found a large, regular care-seeking calendar effect in the ARE data that the version 1 model could not explain, a flawed peak-timing metric, and an inconsistency in the lags of the wastewater features. The protocol was therefore amended and frozen again.

  • Calendar adjustment: closed weekdays lower the number of doctor visits by a factor of about 0.81 each, the week between the years by a factor of about 0.4. GrippeWeb, which is not based on doctor visits, shows no such dip. The effect is estimated on data before 2023-W36 only and is applied in the regional model and in the seasonal baseline.
  • Consistent lags: the availability lags of the features are now applied identically in training and prediction.
  • Joint choice: the ensemble weight and the spread factor are chosen together from grids on the tuning seasons.
  • New peak metric: peak timing is scored per horizon (definition below); the old metric, pooled over horizons, was flawed and has been replaced.
  • Stricter reference: the publication rule compares with the calendar-aligned seasonal baseline. The plain baseline of the first protocol is still reported.
  • Vacation periods now cover the season 2012/13 onward, so the Christmas dips of earlier winters enter training with their calendar features.

Status of the test season: the season was evaluated once under version 1 and was untouched at that time. Under version 2 it is evaluated a second time, for description only. It is no longer an independent test. Only the tuning seasons were used for the choices made under version 2.

Results (protocol version 2)

The tables show the evaluation of season 2025/26 under version 2 with 3,536 scored forecasts (region, origin week and horizon). Chosen on the tuning seasons: feature set dyn-season-holiday, weight 0.75 for the regional model and k = 1.10.

Protocol 1 and protocol 2 side by side

Overall result per model: first protocol (v1) and second protocol (v2), season 2025/26
ModelWIS (v1)WIS (v2)MAE (v1)MAE (v2)Coverage 50 % (v1)Coverage 50 % (v2)Coverage 80 % (v1)Coverage 80 % (v2)
Seasonal baseline (calendar-aligned)–189.68–263.91–32.6%–53.5%
Seasonal baseline (plain)203.94203.94285.58285.5834.3%34.3%56.0%56.0%
Persistence227.11227.11307.11307.1147.9%47.9%78.3%78.3%
Regional model149.63129.02214.20183.0448.7%50.0%79.9%79.6%
Ensemble155.79124.38214.51175.6060.1%55.0%89.0%84.6%
Source: own calculation based on data of the Robert Koch Institute

Both columns refer to the same season. The v1 result was the one-time evaluation; v2 is descriptive. A dash means the model did not exist under v1. The differences come from the amendments above, not from new data.

Publication decision

The ensemble is shipped. Its mean WIS is 34.4% below the calendar-aligned seasonal baseline. The threshold of 10% is a start value.

This decision rests on a single, already known season and is therefore provisional.

Comparisons with uncertainty

Comparisons with 95 % interval
ComparisonMean WIS differenceRelative improvement95 % intervalSeasons bettern
Ensemble versus calendar-aligned seasonal baseline-65.2934.4%from -94.42 to -41.471 of 13536
Ensemble versus plain seasonal baseline-79.5639.0%from -117.53 to -50.071 of 13536
Ensemble versus persistence-102.7345.2%from -161.88 to -55.811 of 13536
Regional model versus calendar-aligned seasonal baseline-60.6632.0%from -98.70 to -28.321 of 13536
Source: own calculation based on data of the Robert Koch Institute

A negative WIS difference means that the first model is better. The intervals rest on the block bootstrap over the weeks of a single season. One season is a thin basis: the interval shows the spread within the season, not the uncertainty between seasons.

By wave phase

WIS by wave phase
PhaseSeasonal baseline (calendar-aligned)Seasonal baseline (plain)PersistenceRegional modelEnsemble
low141.96189.39182.8571.1080.17
rise199.27213.13264.14149.14134.26
peak214.89212.47329.74240.37205.01
decline208.75203.93197.06121.50124.79
Source: own calculation based on data of the Robert Koch Institute

By forecast horizon

WIS by forecast horizon
Weeks aheadSeasonal baseline (calendar-aligned)Seasonal baseline (plain)PersistenceRegional modelEnsemble
1189.68203.94162.49107.81108.37
2189.68203.94216.36122.85119.99
3189.68203.94248.45135.80129.40
4189.68203.94281.16149.61139.76
Source: own calculation based on data of the Robert Koch Institute

By federal state and for Germany

At national level the ensemble is thus about equal to the calendar-aligned baseline; the gain lies mainly in the federal states.

WIS by region, including Germany as a whole
RegionSeasonal baseline (calendar-aligned)Seasonal baseline (plain)PersistenceRegional modelEnsembleEnsemble versus baseline
Germany (national)89.44101.37186.1695.8090.01-0.6%
Baden-Württemberg 183.97194.71199.25116.28107.82+41.4%
Bavaria 241.61246.89211.32131.25124.59+48.4%
Berlin 123.33144.20180.5193.6588.25+28.4%
Brandenburg 256.50273.63276.04165.12158.08+38.4%
Bremen 171.87182.58181.75101.9896.94+43.6%
Hamburg 157.77169.46151.9387.7990.40+42.7%
Hesse 158.09178.40189.08100.1197.58+38.3%
Lower Saxony 183.54190.82192.08105.11105.47+42.5%
Mecklenburg-Western Pomerania 263.94287.02413.44248.20233.13+11.7%
North Rhine-Westphalia 165.17181.91219.38118.00113.90+31.0%
Rhineland-Palatinate 242.10263.58226.78117.88124.64+48.5%
Saarland 214.97222.92209.54124.57124.18+42.2%
Saxony 177.93186.93202.20109.52103.20+42.0%
Saxony-Anhalt 134.91150.65262.27145.36133.94+0.7%
Schleswig-Holstein 223.85240.54309.67191.04183.57+18.0%
Thuringia 235.49251.30249.52141.65138.78+41.1%
Source: own calculation based on data of the Robert Koch Institute

The last column shows the advantage of the ensemble WIS over the calendar-aligned baseline (positive: ensemble better). The row for Germany is highlighted.

Peak timing

Definition (version 2): for each region, season and forecast horizon, the peak is searched in the winter window from calendar week 45 to calendar week 15, as the maximum of the centred 3-week mean. The week between the years and the week after are removed. The peak of the median forecast is compared with the peak of the actual values; reported are the median absolute timing error in weeks and the share of cases within ±1 week.

Persistence lags by about h weeks by construction, because it repeats the last week; its timing error serves as the reference for "nothing learned".

At horizon 1 the ensemble finds the peak within one week in only 53% of the cases (median offset 1.0 weeks). At horizons 2 to 4 the median timing error is between 7 and 9 weeks. This is a real weakness: the forecast is not suited to predict the date of the peak.

The old peak metric of the first protocol pooled all horizons and weeks, was discontinuous and has been replaced. Its values are not comparable.

Peak timing and height per model (all horizons)
ModelScored casesMedian timing error (weeks)Share within ±1 weekOf which ambiguousMean relative height error
Seasonal baseline (calendar-aligned)687.029%2013.9%
Seasonal baseline (plain)688.041%2011.9%
Persistence683.024%200.3%
Regional model687.024%20-10.1%
Ensemble687.022%20-6.6%
Source: own calculation based on data of the Robert Koch Institute

Ambiguous means: the actual curve has a second peak of at least 90 % of the maximum, so the timing is not clear-cut there.

Median absolute peak timing error in weeks, per horizon
ModelWeeks ahead 1Weeks ahead 2Weeks ahead 3Weeks ahead 4
Seasonal baseline (calendar-aligned)7.07.07.07.0
Seasonal baseline (plain)8.08.08.08.0
Persistence1.02.03.04.0
Regional model1.07.08.010.0
Ensemble1.07.08.09.0
Source: own calculation based on data of the Robert Koch Institute
Share of peaks within ±1 week, per horizon
ModelWeeks ahead 1Weeks ahead 2Weeks ahead 3Weeks ahead 4
Seasonal baseline (calendar-aligned)29%29%29%29%
Seasonal baseline (plain)41%41%41%41%
Persistence94%0%0%0%
Regional model59%35%0%0%
Ensemble53%24%12%0%
Source: own calculation based on data of the Robert Koch Institute

Choice of features, weight and spread (tuning)

Tuning on the seasons 2023/24, 2024/25. For every feature set the best ensemble weight and the best spread factor are searched jointly. The set with the lowest mean WIS of the ensemble is chosen. The chosen candidate is dyn-season-holiday with weight 0.75 for the regional model and k = 1.10.

For comparison on the same tuning seasons: WIS of the calendar-aligned seasonal baseline 249.66, of the plain baseline 269.15, of persistence 254.99.

Feature group candidates with their best weight and factor
CandidateFeature groupsWeight regional modelFactor kWIS ensembleWIS regional modeln
dyn dynamics0.601.10169.33193.636976
dyn-season dynamics, season0.751.10161.75170.306976
dyn-season-holiday (chosen)dynamics, season, holidays0.751.10155.55160.186976
dyn-season-weather dynamics, season, weather0.751.10160.03167.406976
dyn-season-wastewater dynamics, season, wastewater0.751.00166.60176.886976
all dynamics, season, holidays, weather, wastewater0.751.10160.24167.556976
Source: own calculation based on data of the Robert Koch Institute
Spread factor k in tuning (chosen candidate)
Factor kWIS ensembleCoverage 50 %Coverage 80 %
1.00 156.0643.0%72.1%
1.10 (chosen)155.5547.0%76.2%
1.20 155.7750.3%79.8%
1.35 157.2155.5%83.9%
1.50 159.8259.7%87.9%
1.75 166.5866.9%92.2%
2.00 175.6572.8%95.2%
Source: own calculation based on data of the Robert Koch Institute

Real data versions

The RKI corrects ARE values retroactively. The public version history of its data (since September 2023) allows reconstructing what was actually known at each origin. The table compares the WIS with today's corrected data and with the data versions of the time.

WIS with today's corrected data and with the data versions of the time
ModelWIS, corrected dataWIS, data version of the timeChangeCells
2023/24: 56 of 56 origins with a real data version, 0 fell back to the corrected state
Seasonal baseline (calendar-aligned)269.72273.50+1.4%3440
Persistence240.54241.15+0.3%3440
Ensemble149.40157.53+5.4%3440
2024/25: 56 of 56 origins with a real data version, 0 fell back to the corrected state
Seasonal baseline (calendar-aligned)230.14230.73+0.3%3536
Persistence269.05267.23-0.7%3536
Ensemble161.54164.25+1.7%3536
2025/26: 56 of 56 origins with a real data version, 0 fell back to the corrected state
Seasonal baseline (calendar-aligned)189.68189.680.0%3536
Persistence227.11236.08+3.9%3536
Ensemble124.38129.85+4.4%3536
Source: own calculation based on data of the Robert Koch Institute

Note: in both variants the values to be hit are today's corrected values. Revisions of wastewater and weather data are not reproduced. A positive change means that the WIS is worse with the data versions of the time.

Comparison with other forecasts (national)

For Germany as a whole, forecasts of other groups are available in the RESPINOW-Hub (RESPINOW-Hub forecast archive (KITmetricslab)). Their counts were converted to cases per 100,000 with the fixed population ratio 831.4. Only cells are compared for which all models shown have a forecast (panel "core": models covering both seasons). Forecasts of the other groups are marked "external" below.

RespiCast was not reachable and is therefore not part of the comparison.

Overall result compared with external forecasts (national, shared cells)
ModelnMAEWISCoverage 50 %Coverage 80 %
Seasonal baseline (calendar-aligned)156294.77196.3439.1%83.3%
Persistence156350.00258.4749.4%81.4%
Ensemble156200.75149.5571.2%91.7%
KIT-LightGBM (external)156244.83170.6636.5%69.9%
KIT-MeanEnsemble (external)156239.80183.4561.5%85.9%
KIT-TSMixer (external)156278.58193.9155.1%87.8%
KIT-hhh4 (external)156363.60265.8251.3%82.1%
Source: forecasts from RESPINOW-Hub forecast archive (KITmetricslab) (licence MIT), own calculation based on data of the Robert Koch Institute

Scored cells per season: 2024/25: 88; 2025/26: 68. In total 156 cells from 39 origin weeks.

Ensemble versus external forecasts, WIS difference with 95 % interval
ComparisonMean WIS differenceRelative improvement95 % intervalSeasons bettern
Ensemble versus KIT-LightGBM (external)-21.1112.4%from -57.42 to 12.612 of 2156
Ensemble versus KIT-MeanEnsemble (external)-33.8918.5%from -74.60 to 2.602 of 2156
Ensemble versus KIT-TSMixer (external)-44.3622.9%from -85.41 to -6.172 of 2156
Ensemble versus KIT-hhh4 (external)-116.2743.7%from -177.36 to -60.512 of 2156
Source: forecasts from RESPINOW-Hub forecast archive (KITmetricslab) (licence MIT), own calculation based on data of the Robert Koch Institute

In 2 of 4 comparisons the 95 % interval includes zero, so the difference is not statistically established there.

Forecasts: RESPINOW-Hub, KITmetricslab (MIT licence); Prognosen der Teams KIT-*, MPIDS-*. Source: RESPINOW-Hub forecast archive (KITmetricslab), Licence MIT.

Why this is not a fair contest

  • The external forecasts were produced in real time with the data available then and contain nowcasts for the still incomplete last week. The Coldfront figures here use today's corrected data. This favours Coldfront.
  • For Coldfront, season 2024/25 was used for tuning (in-sample), and season 2025/26 was already used under protocol 1.
  • The same WIS with the quantiles 0.1, 0.25, 0.5, 0.75 and 0.9 is computed for all models. This is not the WIS of the RESPINOW-Hub dashboard, which uses more quantiles.
  • The sample is small: a few dozen origin weeks, and the horizons of one origin are strongly dependent. The intervals are wide and partly include zero (see above); a difference is established only where the interval excludes zero.

Ongoing check

Archived forecasts are compared with the actuals that arrive later, every week. If the ensemble scores worse than the baseline over at least 8 evaluated runs, the baseline replaces it automatically. Currently 0 runs are scored.

Limits

  • Few seasons: the evaluation rests on one descriptive season, and on about three seasons for the federal states overall. Differences between models are therefore uncertain; the intervals show this.
  • First publications: the evaluation scores against today's corrected values, not against the values published first. A live forecast only had the data of its time; the comparison with data versions above reproduces this in part.
  • Comparison with other initiatives: it exists for the national level only and only against the RESPINOW models, is not fair and has a small sample. The federal states are not compared.
  • Peak timing: from horizon 2 the ensemble misses the peak by many weeks. The forecast does not predict the date of the peak.
  • Start values: regularisation, the 10 % threshold, the grids for weight and spread and the activity levels have not been checked empirically.
  • No statements about individuals or the medical situation: the forecast describes trends at population level, not diagnoses and not recommendations.