The most useful way to understand Bodø/Glimt’s 6–5 qualification is not to search for one decisive scoreline. It is to reconstruct a two-leg dataset without losing the difference between regulation time, extra time and the aggregate. The audited UEFA Champions League record gives us a clean example: a 3–3 first leg, followed by a 3–2 second-leg win after extra time.
That sequence is easy to summarize and surprisingly easy to model incorrectly. A dashboard that stores only the final return score can hide the 2–2 score after 90 minutes. A pipeline that adds the extra-time goal to the wrong layer can produce an aggregate that is numerically plausible but conceptually wrong.
The tie has two scores, not one
The first match ended Union Saint-Gilloise 3–3 Bodø/Glimt in regulation time. No tie state was settled there: both teams carried three goals into the return.
The second match ended Bodø/Glimt 3–2 Union Saint-Gilloise after extra time. The score was 2–2 at the end of regulation, then Bodø/Glimt scored once in the additional period. The final score for that match is therefore 3–2, but the route to that score matters.
Adding the two final match scores gives:
| Team | First leg | Second leg | Aggregate |
|---|---|---|---|
| Bodø/Glimt | 3 | 3 | 6 |
| Union Saint-Gilloise | 3 | 2 | 5 |
Bodø/Glimt qualified 6–5 on aggregate. The result is a fact about the two completed matches, not a forecast about either club’s next round.
Represent the match state explicitly
A reliable data model should preserve at least three snapshots for a match that reaches extra time:
- the score at the end of regulation;
- the goals added during extra time;
- the final score after the additional period.
For the return in this tie, those values are 2–2, then 1–0, then 3–2. They are related, but they are not interchangeable. The regulation score answers one question — who was level after 90 minutes — while the final score answers another — what result counts for the completed match and the tie.
This is the same principle used in event-sourced systems. A final state is useful for reporting, but intermediate states explain how the state was reached. If the source provides both, retaining both is safer than reconstructing one from a headline result.
Use a two-leg aggregation rule
The aggregation rule is simple once the grain is fixed:
- identify the first leg and the return as separate matches;
- orient both scores from the same team’s perspective;
- use the final score of each match, including extra time when it occurred;
- add the goals across the two matches;
- store the qualification outcome separately from the match-level scores.
The orientation step is where many manual summaries fail. In the first leg, Union Saint-Gilloise is listed first and Bodø/Glimt second. In the return, the order is reversed. If a script assumes that the first-listed team is always the same side, it can swap the second-leg goals and turn a 6–5 qualification into an entirely different story.
The safest validation is to calculate the aggregate twice: once from the team perspective and once from the pair perspective. The two views should agree on the total number of goals, and the qualified team should be the side with six rather than five. A second check should confirm that the return’s final score is 3–2 while its regulation score is 2–2.
Do not double-count extra time
There are two common failure modes.
The first is to use 2–2 as the return result because it is the regulation score. That loses the goal that made the final match 3–2 and incorrectly produces a 5–5 aggregate.
The second is to use 3–2 as the return result and then add the one extra-time goal again as a separate match event. That produces a 7–5 aggregate. The extra-time goal belongs inside the return’s final score for aggregate purposes; it should not be counted a second time.
This distinction matters beyond football. In any multi-stage process, a terminal value that already includes an event must not be combined with the same event again from the event log. The data contract should say whether a score is a checkpoint or a cumulative final state.
Keep narrative and measurement separate
“Bodø/Glimt completed a comeback” is a reasonable description of the tie’s shape. It is not a model of why the comeback happened. The score data establish the sequence and the aggregate. They do not establish tactical intent, psychological momentum or a repeatable advantage in future ties.
The audited record also provides team-level match statistics for the return, but no expected-goals values in the available statistical rows. That makes the score reconstruction stronger than any attempt to explain the tie with an unavailable metric. A disciplined article should say what the data contain and leave the causal story as an interpretation, not a measured fact.
A reproducible checklist
For every two-leg tie, a quality check can ask:
- Are there exactly two completed matches in the pair?
- Are the teams consistently oriented across both legs?
- Is the final score distinct from the regulation score when extra time occurs?
- Does the sum of the two final scores match the published aggregate?
- Is the qualifier stored separately from the final match result?
- Are missing statistics left missing rather than converted to zero?
These checks make the result auditable without requiring a prediction model. They also make later updates safer: if a corrected match record arrives, the pipeline can recalculate the tie while preserving the original checkpoints.
Method and limits
This article uses the audited Xtra-Stats match record for the 4 and 11 August 2026 legs, with the score after regulation and the final score after extra time kept distinct. The article is descriptive: it reconstructs a completed qualification and does not estimate the probability of a future comeback. The sample is one tie, and the return’s statistical coverage does not include expected goals. The method should therefore be reused as a data-quality pattern, not presented as evidence that one club or one score sequence predicts the next round.
Data snapshot: Xtra-Stats, audited 14 August 2026. Disclosure: this article was prepared with AI assistance and reviewed against the audited data.
Top comments (0)