# 2019–20 CAF Champions League knockout stage

The 2019–20 CAF Champions League knockout stage began on 28 February with the quarter-finals and ended on 27 November 2020 with the final to decide the champions of the 2019–20 CAF Champions League. A total of eight teams competed in the knockout stage.
Times are GMT as listed by CAF (local times, even if not different, are in parentheses).

## Round and draw dates

The schedule was as follows.
Following the quarter-finals, due to the COVID-19 pandemic in Africa, the semi-finals, originally scheduled for 1–2 May (first legs) and 8–9 May (second legs), were postponed indefinitely on 11 April 2020, and the final, originally scheduled for 29 May, was also postponed on 18 April 2020. On 30 June 2020, the CAF Executive Committee proposed that the competition would resume with a Final Four format played as single matches in a host country to be decided. However, these plans were later halted after the Cameroonian Football Federation withdrew from hosting the Final Four, and the CAF decided against hosting it in either Egypt or Morocco in the principle of fairness. On 3 August 2020, the CAF announced that the competition would resume in its original format with the semi-finals played on 25–26 September (first legs) and 2–3 October (second legs), and the final played on 16 or 17 October. On 10 September 2020, the CAF announced that at the request of the Royal Moroccan Football Federation, the semi-finals were rescheduled to 17–18 October (first legs) and 23–24 October (second legs), and the final to 6 November. On 22 October 2020, the CAF announced that the semi-final second leg between Zamalek and Raja Casablanca, originally scheduled to be played on 24 October, was postponed to 1 November, due to Raja Casablanca being required by Moroccan authorities to self-isolate until 27 October after eight players testing positive for the COVID-19 virus, with the total number of cases increasing to fourteen the following day. On 30 October 2020, the CAF announced that this match was further postponed to 4 November, the final postponed to 27 November.
| Round | Draw date | First leg | Second leg |
| Quarter-finals | 5 February 2020 | 28–29 February 2020 | 6–7 March 2020 |
| Semi-finals | 5 February 2020 | 17–18 October 2020 | 23 October & 4 November 2020 |
| Final | 5 February 2020 | 27 November 2020 | 27 November 2020 |

## Format

In the knockout stage, the quarter-finals and semi-finals were played over two legs, with each team playing one leg at home. The team that scored more goals on aggregate over the two legs advanced to the next round. If the aggregate score was level, the away goals rule is applied, i.e. the team that scored more goals away from home over the two legs advanced. If away goals were also equal, then extra time was not played and the winners were decided by a penalty shoot-out.
In the final, which was played as a single match, if the score was level at the end of normal time, extra time was also not to be played and the winners would be decided by a penalty shoot-out.
The mechanism of the draws for each round was as follows:
* In the draw for the quarter-finals, the four group winners were seeded, and the four group runners-up were unseeded. The seeded teams were drawn against the unseeded teams, with the seeded teams hosting the second leg. Teams from the same group cannot be drawn against each other, while teams from the same association could be drawn against each other.
* In the draws for semi-finals, there were no seedings, and teams from the same group or the same association could be drawn against each other. As the draws for the quarter-finals and semi-finals were held together before the quarter-finals were played, the identity of the quarter-final winners was not known at the time of the semi-final draw.

## Qualified teams

The knockout phase involved the 8 teams which qualified as winners and runners-up of each of the eight groups in the group stage.
| Group | Winners | Runners-up |
| A | TP Mazembe | Zamalek |
| B | Étoile du Sahel | Al-Ahly |
| C | Mamelodi Sundowns | Wydad AC |
| D | Espérance de Tunis | Raja Casablanca |

## Bracket

The bracket of the knockout stage was determined as follows:
| Round | Matchups |
| Quarter-finals | (Group winners hosted second leg, matchups decided by draw, teams from same group could not play each other) QF1 QF2 QF3 QF4 |
| Semi-finals | (Matchups and order of legs decided by draw, between winners QF1, QF2, QF3, QF4) SF1 SF2 |
| Final | Winners SF1 and SF2 played each other to decide the champions |
The bracket was decided after the draw for the knockout stage (quarter-finals and semi-finals), which was held on 5 February 2020, 20:00 CAT (UTC+2), at the Hilton Pyramids Golf in Cairo, Egypt.
| Quarter-finals | Quarter-finals | Quarter-finals | Quarter-finals | Semi-finals | Semi-finals | Semi-finals | Semi-finals | Final | Final | Final | Final |
| Raja Casablanca | 2 | 0 | 2 | | | | |
| TP Mazembe | 0 | 1 | 1 | | | | |
| TP Mazembe | 0 | 1 | 1 | Raja Casablanca | 0 | 1 | 1 |
| | | | | Zamalek | 1 | 3 | 4 |
| Zamalek | 3 | 0 | 3 | Zamalek | 1 | 3 | 4 |
| Espérance de Tunis | 1 | 1 | 2 | | | | | | | | |
| Espérance de Tunis | 1 | 1 | 2 | | | | | Zamalek | Zamalek | Zamalek | 1 |
| | | | | | | | | Al-Ahly | Al-Ahly | Al-Ahly | 2 |
| Wydad AC | 2 | 0 | 2 | | | | | Al-Ahly | Al-Ahly | Al-Ahly | 2 |
| Étoile du Sahel | 0 | 1 | 1 | | | | | | | | |
| Étoile du Sahel | 0 | 1 | 1 | Wydad AC | 0 | 1 | 1 | | | | |
| | | | | Al-Ahly | 2 | 3 | 5 |
| Al-Ahly | 2 | 1 | 3 | Al-Ahly | 2 | 3 | 5 |
| Mamelodi Sundowns | 0 | 1 | 1 | | | | |

## Quarter-finals

The draw for the quarter-finals was held on 5 February 2020.

### Summary

The first legs were played on 28 and 29 February, and the second legs were played on 6 and 7 March 2020.
| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Al-Ahly | 3–1 | Mamelodi Sundowns | 2–0 | 1–1 |
| Raja Casablanca | 2–1 | TP Mazembe | 2–0 | 0–1 |
| Zamalek | 3–2 | Espérance de Tunis | 3–1 | 0–1 |
| Wydad AC | 2–1 | Étoile du Sahel | 2–0 | 0–1 |

### Matches

Al-Ahly won 3–1 on aggregate.
Raja Casablanca won 2–1 on aggregate.
Zamalek won 3–2 on aggregate.
Wydad AC won 2–1 on aggregate.

## Semi-finals

The draw for the semi-finals was held on 5 February 2020 (after the quarter-finals draw).

### Summary

Due to the COVID-19 pandemic in Africa, all semi-final matches, originally scheduled for 1–2 May (first legs) and 8–9 May 2020 (second legs), were postponed. The matches were later rescheduled for 17–18 October (first legs) and 23 October and 4 November 2020 (second legs).
| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Raja Casablanca | 1–4 | Zamalek | 0–1 | 1–3 |
| Wydad AC | 1–5 | Al-Ahly | 0–2 | 1–3 |

### Matches

Zamalek won 4–1 on aggregate.
Al-Ahly won 5–1 on aggregate.

## Final

Due to the COVID-19 pandemic in Africa, the final, originally scheduled for 29 May 2020, 20:00 WAT, at the Japoma Stadium, Douala, Cameroon, was postponed until further notice. In July, the Cameroonian Football Federation announced that they had withdrawn from hosting the final. The CAF decided that the final would be played in Egypt if both semi-finalists from Egypt, Al-Ahly and Zamalek, reached the final, or in Morocco if both semi-finalists from Morocco, Raja Casablanca and Wydad Casablanca, reached the final. If one team from Egypt and one team from Morocco reached the final, it was initially decided that the final would be played in a neutral country, but it was later decided that the final would then be played in either Egypt or Morocco, to be decided by a draw, which was held on 16 October 2020 in Casablanca, Morocco prior to the semi-final first legs, and the country drawn was Egypt.
Since both finalists were from Egypt, the match was played in Egypt, at the Cairo International Stadium, Cairo on 27 November 2020.