# 2024–25 CAF Champions League qualifying rounds

The 2024–25 CAF Champions League qualifying rounds began on 16 August and ended on 22 September 2024. 59 teams competed in the qualifying rounds to decide the 16 places in the group stage of the 2024–25 CAF Champions League.
All times are local.

## Draw

The draw for the qualifying rounds was held on 11 July 2024, 12:00 GMT (15:00 local time, UTC+3), at the CAF headquarters in Cairo, Egypt.
The entry round of the 59 teams entered into the draw was determined by their performances in the CAF competitions for the previous five seasons (CAF 5-year ranking points shown in parentheses).
| Entry round | Second round (5 teams) | First round (54 teams) |
| Teams | Al Ahly (87 pts) Espérance de Tunis (61 pts) Mamelodi Sundowns (54 pts) Petro de Luanda (39 pts) TP Mazembe (38 pts) | CR Belouizdad (37 pts) Raja CA (35 pts) Young Africans (31 pts) Pyramids (29 pts) Al Hilal (25 pts) Orlando Pirates (16 pts) Al Merrikh (9 pts) Sagrada Esperança (8 pts) Jwaneng Galaxy (8 pts) AS FAR (8 pts) US Monastir (8 pts) MC Alger (6 pts) ASKO Kara (4 pts) Al Nasr (2 pts) Teungueth (2 pts) Al Ahly Benghazi (1 pt) Djoliba (1 pt) Enugu Rangers (1 pt) San Pédro (0.5 pts) Coton FC AS Douanes Vital'O Victoria United Red Star de Bangui AS PSI US Zilimadjou AC Léopards Arta Solar AS Maniema Union Deportivo Mongomo Mbabane Swallows CBE Samartex Milo Stade d'Abidjan Gor Mahia Watanga Disciples FC Nyasa Big Bullets FC Nouadhibou Ferroviário da Beira African Stars AS GNN Remo Stars APR Saint Louis Suns United Bo Rangers Dekedaha Al Merreikh Bentiu Azam SC Villa Red Arrows JKU Ngezi Platinum |

## Format

In the qualifying rounds, each tie was played on a home-and-away two-legged basis. If the aggregate score was tied after the second leg, the away goals rule was applied, and if still tied, extra time was not played, and a penalty shoot-out was used to determine the winner (Regulations III. 13 & 14).

## Schedule

The schedule of the competition was as follows.
Schedule for the 2024–25 CAF Champions League qualifying rounds :
| Round | Draw date | First leg | Second leg |
| First round | 11 July 2024 | 16–18 August 2024 | 23–25 August 2024 |
| Second round | 11 July 2024 | 13–15 September 2024 | 20–22 September 2024 |

## Bracket

The bracket of the draw was announced by the CAF on 11 July 2024.
The 16 winners of the second round advanced to the group stage.
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Al Merreikh Bentiu | 1 | 1 | 2 | | | | | |
| 4 | Gor Mahia | 0 | 5 | 5 | | | | | |
| 4 | Gor Mahia | 0 | 5 | 5 | Gor Mahia | Gor Mahia | 0 | 0 | 0 |
| | | | | | Al Ahly | Al Ahly | 3 | 3 | 6 |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Arta Solar | 0 | 4 | 4 | | | | | |
| 4 | Dekedaha | 2 | 3 | 5 | | | | | |
| 4 | Dekedaha | 2 | 3 | 5 | Dekedaha | Dekedaha | 1 | 0 | 1 |
| | | | | | Espérance de Tunis | Espérance de Tunis | 4 | 8 | 12 |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | SC Villa | 1 | 1 | 2 | | | | | |
| 4 | CBE | 2 | 1 | 3 | | | | | |
| 4 | CBE | 2 | 1 | 3 | CBE | CBE | 0 | 0 | 0 |
| | | | | | Young Africans | Young Africans | 1 | 6 | 7 |
| 3 | Vital'O | 0 | 0 | 0 | Young Africans | Young Africans | 1 | 6 | 7 |
| 2 | Young Africans | 4 | 6 | 10 | | | | | |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Azam | 1 | 0 | 1 | | | | | |
| 4 | APR | 0 | 2 | 2 | | | | | |
| 4 | APR | 0 | 2 | 2 | APR | APR | 1 | 1 | 2 |
| | | | | | Pyramids | Pyramids | 1 | 3 | 4 |
| 3 | JKU | 0 | 1 | 1 | Pyramids | Pyramids | 1 | 3 | 4 |
| 2 | Pyramids | 6 | 3 | 9 | | | | | |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Mbabane Swallows | 1 | 0 | 1 | | | | | |
| 4 | Ferroviário da Beira | 0 | 0 | 0 | | | | | |
| 4 | Ferroviário da Beira | 0 | 0 | 0 | Mbabane Swallows | Mbabane Swallows | 0 | 0 | 0 |
| | | | | | Mamelodi Sundowns | Mamelodi Sundowns | 4 | 4 | 8 |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Ngezi Platinum | 0 | 0 | 0 (3) | | | | | |
| 4 | AS Maniema Union (p) | 0 | 0 | 0 (4) | | | | | |
| 4 | AS Maniema Union (p) | 0 | 0 | 0 (4) | AS Maniema Union | AS Maniema Union | 2 | 0 | 2 |
| | | | | | Petro de Luanda | Petro de Luanda | 1 | 0 | 1 |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Nyasa Big Bullets | 2 | 0 | 2 | | | | | |
| 4 | Red Arrows | 1 | 2 | 3 | | | | | |
| 4 | Red Arrows | 1 | 2 | 3 | Red Arrows | Red Arrows | 0 | 1 | 1 |
| | | | | | TP Mazembe | TP Mazembe | 2 | 2 | 4 |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | African Stars | 1 | 0 | 1 (5) | | | | | |
| 4 | Jwaneng Galaxy (p) | 0 | 1 | 1 (6) | | | | | |
| 4 | Jwaneng Galaxy (p) | 0 | 1 | 1 (6) | Jwaneng Galaxy | Jwaneng Galaxy | 0 | 0 | 0 |
| | | | | | Orlando Pirates | Orlando Pirates | 2 | 1 | 3 |
| 3 | Disciples FC | 0 | 0 | 0 | Orlando Pirates | Orlando Pirates | 2 | 1 | 3 |
| 2 | Orlando Pirates | 0 | 4 | 4 | | | | | |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | US Zilimadjou | 0 | 1 | 1 | | | | | |
| 4 | Enugu Rangers | 1 | 1 | 2 | | | | | |
| 4 | Enugu Rangers | 1 | 1 | 2 | Enugu Rangers | Enugu Rangers | 1 | 1 | 2 |
| | | | | | Sagrada Esperança | Sagrada Esperança | 0 | 3 | 3 |
| 3 | Saint Louis Suns United | 0 | 0 | 0 | Sagrada Esperança | Sagrada Esperança | 0 | 3 | 3 |
| 2 | Sagrada Esperança | 1 | 3 | 4 | | | | | |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | AS Douanes (a) | 0 | 1 | 1 | | | | | |
| 4 | Coton FC | 0 | 1 | 1 | | | | | |
| 4 | Coton FC | 0 | 1 | 1 | AS Douanes | AS Douanes | 1 | 0 | 0 (3) |
| | | | | | CR Belouizdad (p) | CR Belouizdad (p) | 0 | 1 | 1 (4) |
| 3 | AC Léopards | 0 | 0 | 0 | CR Belouizdad (p) | CR Belouizdad (p) | 0 | 1 | 1 (4) |
| 2 | CR Belouizdad | 2 | 1 | 3 | | | | | |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Victoria United | 0 | 0 | 0 | | | | | |
| 4 | Samartex | 1 | 1 | 2 | | | | | |
| 4 | Samartex | 1 | 1 | 2 | Samartex | Samartex | 2 | 0 | 2 |
| | | | | | Raja CA | Raja CA | 2 | 2 | 4 |
| 3 | AS GNN | 1 | 0 | 1 | Raja CA | Raja CA | 2 | 2 | 4 |
| 2 | Raja CA | 2 | 5 | 7 | | | | | |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | AS PSI | 0 | 0 | 0 | | | | | |
| 4 | US Monastir | 1 | 2 | 3 | | | | | |
| 4 | US Monastir | 1 | 2 | 3 | US Monastir | US Monastir | 1 | 0 | 1 |
| | | | | | MC Alger | MC Alger | 0 | 2 | 2 |
| 3 | Watanga | 0 | 0 | 0 | MC Alger | MC Alger | 0 | 2 | 2 |
| 2 | MC Alger | 2 | 2 | 4 | | | | | |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Red Star de Bangui | 0 | — | — | | | | | |
| 4 | Djoliba | 0 | — | w/o | | | | | |
| 4 | Djoliba | 0 | — | w/o | Djoliba | Djoliba | 1 | 1 | 2 |
| | | | | | ASKO Kara | ASKO Kara | 0 | 0 | 0 |
| 3 | Deportivo Mongomo | 2 | 0 | 2 | ASKO Kara | ASKO Kara | 0 | 0 | 0 |
| 2 | ASKO Kara | 2 | 1 | 3 | | | | | |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Stade d'Abidjan (p) | 1 | 1 | 2 (5) | | | | | |
| 4 | Teungueth | 1 | 1 | 2 (4) | | | | | |
| 4 | Teungueth | 1 | 1 | 2 (4) | Stade d'Abidjan | Stade d'Abidjan | 2 | 1 | 3 |
| | | | | | Milo | Milo | 0 | 2 | 2 |
| 3 | Milo (a) | 0 | 1 | 1 | Milo | Milo | 0 | 2 | 2 |
| 2 | FC Nouadhibou | 0 | 1 | 1 | | | | | |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Bo Rangers | 1 | 0 | 1 | | | | | |
| 4 | San Pédro | 1 | 1 | 2 | | | | | |
| 4 | San Pédro | 1 | 1 | 2 | San Pédro | San Pédro | 2 | 0 | 2 |
| | | | | | Al Hilal | Al Hilal | 2 | 1 | 3 |
| 3 | Al Ahly Benghazi | 0 | 1 | 1 | Al Hilal | Al Hilal | 2 | 1 | 3 |
| 2 | Al Hilal | 1 | 1 | 2 | | | | | |
| First round | First round | First round | First round | First round | Second round | Second round | Second round | Second round | Second round |
| 1 | Al Nasr | 0 | 0 | 0 | | | | | |
| 4 | Al Merrikh | 0 | 2 | 2 | | | | | |
| 4 | Al Merrikh | 0 | 2 | 2 | Al Merrikh | Al Merrikh | 2 | 0 | 2 |
| | | | | | AS FAR | AS FAR | 2 | 2 | 4 |
| 3 | Remo Stars | 2 | 0 | 2 | AS FAR | AS FAR | 2 | 2 | 4 |
| 2 | AS FAR | 1 | 2 | 3 | | | | | |

## First round

The first round, also called the first preliminary round, included the 54 teams that did not receive byes to the second round.
| Team 1 | Agg. Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| El Merriekh Bentiu | 2–5 | Gor Mahia | 1–0 | 1–5 |
| Arta Solar | 4–5 | Dekedaha | 0–2 | 4–3 |
| SC Villa | 2–3 | CBE | 1–2 | 1–1 |
| Vital'O | 0–10 | Young Africans | 0–4 | 0–6 |
| Azam | 1–2 | APR | 1–0 | 0–2 |
| JKU | 1–9 | Pyramids | 0–6 | 1–3 |
| Mbabane Swallows | 1–0 | Ferroviário da Beira | 1–0 | 0–0 |
| Ngezi Platinum | 0–0 (3–4 p) | AS Maniema Union | 0–0 | 0–0 |
| Nyasa Big Bullets | 2–3 | Red Arrows | 2–1 | 0–2 |
| African Stars | 1–1 (5–6 p) | Jwaneng Galaxy | 1–0 | 0–1 |
| Disciples FC | 0–4 | Orlando Pirates | 0–0 | 0–4 |
| US Zilimadjou | 1–2 | Enugu Rangers | 0–1 | 1–1 |
| Saint Louis Suns United | 0–4 | Sagrada Esperança | 0–1 | 0–3 |
| AS Douanes | 1–1 (a) | Coton FC | 0–0 | 1–1 |
| AC Léopards | 0–3 | CR Belouizdad | 0–2 | 0–1 |
| Victoria United | 0–2 | Samartex | 0–1 | 0–1 |
| AS GNN | 1–7 | Raja CA | 1–2 | 0–5 |
| AS PSI | 0–3 | US Monastir | 0–1 | 0–2 |
| Watanga | 0–4 | MC Alger | 0–2 | 0–2 |
| Red Star de Bangui | w/o | Djoliba | 0–0 | — |
| Deportivo Mongomo | 2–3 | ASKO Kara | 2–2 | 0–1 |
| Stade d'Abidjan | 2–2 (5–4 p) | Teungueth | 1–1 | 1–1 |
| Milo | 1–1 (a) | FC Nouadhibou | 0–0 | 1–1 |
| Bo Rangers | 1–2 | San Pédro | 1–1 | 0–1 |
| Al Ahly Benghazi | 1–2 | Al Hilal | 0–1 | 1–1 |
| Al Nasr | 0–2 | Al Merrikh | 0–0 | 0–2 |
| Remo Stars | 2–3 | AS FAR | 2–1 | 0–2 |
Notes:
* ↑ Djoliba won on a walkover after Red Star de Bangui withdrew from the competition citing financial reasons.
Gor Mahia won 5–2 on aggregate.
Dekedaha won 5–4 on aggregate.
CBE won 3–2 on aggregate.
Young Africans won 10–0 on aggregate.
APR won 2–1 on aggregate.
Pyramids won 9–1 on aggregate.
Mbabane Swallows won 1–0 on aggregate.
0–0 on aggregate. AS Maniema Union won 4–3 on penalties.
Red Arrows won 3–2 on aggregate.
1–1 on aggregate. Jwaneng Galaxy won 6–5 on penalties.
Orlando Pirates won 4–0 on aggregate.
Enugu Rangers won 2–1 on aggregate.
Sagrada Esperança won 4–0 on aggregate.
1–1 on aggregate. AS Douanes won on away goals.
CR Belouizdad won 3–0 on aggregate.
Samartex won 2–0 on aggregate.
Raja CA won 7–1 on aggregate.
US Monastir won 3–0 on aggregate.
MC Alger won 4–0 on aggregate.
Djoliba won on a walkover after Red Star de Bangui withdrew.
ASKO Kara won 3–2 on aggregate.
2–2 on aggregate. Stade d'Abidjan won 5–4 on penalties.
1–1 on aggregate. Milo won on away goals.
San Pédro won 2–1 on aggregate.
Al Hilal won 2–1 on aggregate.
Al Merrikh won 2–0 on aggregate.
AS FAR won 3–2 on aggregate.

## Second round

The second round, also called the second preliminary round, included 32 teams: the 5 teams that received byes to this round, and the 27 winners of the first round.
| Team 1 | Agg. Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Gor Mahia | 0–6 | Al Ahly | 0–3 | 0–3 |
| Dekedaha | 1–12 | Espérance de Tunis | 1–4 | 0–8 |
| CBE | 0–7 | Young Africans | 0–1 | 0–6 |
| APR | 2–4 | Pyramids | 1–1 | 1–3 |
| Mbabane Swallows | 0–8 | Mamelodi Sundowns | 0–4 | 0–4 |
| AS Maniema Union | 2–1 | Petro de Luanda | 2–1 | 0–0 |
| Red Arrows | 1–4 | TP Mazembe | 0–2 | 1–2 |
| Jwaneng Galaxy | 0–3 | Orlando Pirates | 0–2 | 0–1 |
| Enugu Rangers | 2–3 | Sagrada Esperança | 1–0 | 1–3 |
| AS Douanes | 1–1 (3–4 p) | CR Belouizdad | 1–0 | 0–1 |
| Samartex | 2–4 | Raja CA | 2–2 | 0–2 |
| US Monastir | 1–2 | MC Alger | 1–0 | 0–2 |
| Djoliba | 2–0 | ASKO Kara | 1–0 | 1–0 |
| Stade d'Abidjan | 3–2 | Milo | 2–0 | 1–2 |
| San Pédro | 2–3 | Al Hilal | 2–2 | 0–1 |
| Al Merrikh | 2–4 | AS FAR | 2–2 | 0–2 |
Al Ahly won 6–0 on aggregate.
Espérance de Tunis won 12–1 on aggregate.
Young Africans won 7–0 on aggregate.
Pyramids won 4–2 on aggregate.
Mamelodi Sundowns won 8–0 on aggregate.
AS Maniema Union won 2–1 on aggregate.
Mazembe won 4–1 on aggregate.
Orlando Pirates won 3–0 on aggregate.
Sagrada Esperança won 3–2 on aggregate.
1–1 on aggregate. CR Belouizdad won 4–3 on penalties.
Raja CA won 4–2 on aggregate.
MC Alger won 2–1 on aggregate.
Djoliba won 2–0 on aggregate.
Stade d'Abidjan won 3–2 on aggregate.
Al Hilal won 3–2 on aggregate.
AS FAR won 4–2 on aggregate.