# 2017 CAF Champions League qualifying rounds

The 2017 CAF Champions League qualifying rounds were played from 10 February to 19 March 2017. A total of 55 teams competed in the qualifying rounds to decide the 16 places in the group stage of the 2017 CAF Champions League.

## Draw

The draw for the preliminary round and first round was held on 21 December 2016 at the CAF headquarters in Cairo, Egypt.
The entry round of the 55 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 | First round (9 teams) | Preliminary round (46 teams) |
| Teams | TP Mazembe (58 pts) Al Ahly (45 pts) Zamalek (36 pts) Étoile du Sahel (31 pts) Mamelodi Sundowns (25 pts) Espérance de Tunis (20 pts) Al-Hilal (20 pts) USM Alger (16 pts) Wydad AC (16 pts) | AC Léopards (16 pts) Al-Merrikh (14 pts) Séwé Sport (13 pts) AS Vita Club (12 pts) FUS Rabat (12 pts) Coton Sport (12 pts) Stade Malien (9 pts) Al-Ahli Tripoli (5 pts) Young Africans (5 pts) AS Real Bamako (3 pts) Saint George (2 pts) JS Saoura Bidvest Wits Diables Noirs AS Tanda UMS de Loum Enugu Rangers Rivers United 1º de Agosto Wa All Stars Zanaco Township Rollers Rail Club du Kadiogo Vital'O Ngaya Club Sony Elá Nguema CF Mounana Gambia Ports Authority Horoya Tusker Lioli Barrack Young Controllers CNaPS Sport AS Port-Louis 2000 Ferroviário Beira AS FAN Saint-Louisienne APR US Gorée Côte d'Or Johansen Atlabara Royal Leopards KCCA Zimamoto CAPS United |

## 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 would be applied, and if still tied, extra time would not be played, and the penalty shoot-out would be used to determine the winner (Regulations III. 13 & 14).

## Schedule

The schedule of each round was as follows.
| Round | First leg | Second leg |
| Preliminary round | 10–12 February 2017 | 17–19 February 2017 |
| First round | 10–12 March 2017 | 17–19 March 2017 |

## Bracket

The bracket of the draw was announced by the CAF on 21 December 2016.
The 16 winners of the first round advanced to the group stage, while the 16 losers of the first round entered the Confederation Cup play-off round.
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | USM Alger | | | Bye | | | | | |
| 4 | | | | | | | | | |
| 4 | | | | | USM Alger | USM Alger | 2 | 0 | 2 |
| | | | | | Rail Club du Kadiogo | Rail Club du Kadiogo | 0 | 1 | 1 |
| 3 | Rail Club du Kadiogo | 3 | 0 | 3 | Rail Club du Kadiogo | Rail Club du Kadiogo | 0 | 1 | 1 |
| 2 | Diables Noirs | 0 | 1 | 1 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | AS Real Bamako | 0 | 0 | 0 | | | | | |
| 4 | Rivers United | 0 | 4 | 4 | | | | | |
| 4 | Rivers United | 0 | 4 | 4 | Rivers United | Rivers United | 3 | 0 | 3 |
| | | | | | Al-Merrikh | Al-Merrikh | 0 | 4 | 4 |
| 3 | Sony Elá Nguema | 0 | 1 | 1 | Al-Merrikh | Al-Merrikh | 0 | 4 | 4 |
| 2 | Al-Merrikh | 1 | 4 | 5 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Étoile du Sahel | | | Bye | | | | | |
| 4 | | | | | | | | | |
| 4 | | | | | Étoile du Sahel | Étoile du Sahel | 3 | 2 | 5 |
| | | | | | AS Tanda | AS Tanda | 0 | 1 | 1 |
| 3 | AS Tanda | 3 | 1 | 4 | AS Tanda | AS Tanda | 0 | 1 | 1 |
| 2 | AS FAN | 0 | 3 | 3 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Espérance de Tunis | | | Bye | | | | | |
| 4 | | | | | | | | | |
| 4 | | | | | Espérance de Tunis | Espérance de Tunis | 3 | 1 | 4 |
| | | | | | Horoya | Horoya | 1 | 2 | 3 |
| 3 | US Gorée | 0 | 1 | 1 | Horoya | Horoya | 1 | 2 | 3 |
| 2 | Horoya | 0 | 2 | 2 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Wa All Stars | 1 | 0 | 1 | | | | | |
| 4 | Al-Ahli Tripoli | 3 | 2 | 5 | | | | | |
| 4 | Al-Ahli Tripoli | 3 | 2 | 5 | Al-Ahli Tripoli | Al-Ahli Tripoli | 2 | 1 | 3 (a) |
| | | | | | FUS Rabat | FUS Rabat | 0 | 3 | 3 (a) |
| 3 | Johansen | 1 | 0 | 1 | FUS Rabat | FUS Rabat | 0 | 3 | 3 (a) |
| 2 | FUS Rabat | 1 | 3 | 4 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Mamelodi Sundowns | | | Bye | | | | | |
| 4 | | | | | | | | | |
| 4 | | | | | Mamelodi Sundowns | Mamelodi Sundowns | 2 | 1 | 3 |
| | | | | | KCCA | KCCA | 1 | 1 | 2 |
| 3 | KCCA | 1 | 1 | 2 (a) | KCCA | KCCA | 1 | 1 | 2 |
| 2 | 1º de Agosto | 0 | 2 | 2 (a) | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Wydad AC | | | Bye | | | | | |
| 4 | | | | | | | | | |
| 4 | | | | | Wydad AC | Wydad AC | 1 | 0 | 1 (5 p) |
| | | | | | CF Mounana | CF Mounana | 0 | 1 | 1 (4 p) |
| 3 | CF Mounana | 2 | 1 | 3 | CF Mounana | CF Mounana | 0 | 1 | 1 (4 p) |
| 2 | Vital'O | 0 | 0 | 0 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Ngaya Club | 1 | 1 | 2 | | | | | |
| 4 | Young Africans | 5 | 1 | 6 | | | | | |
| 4 | Young Africans | 5 | 1 | 6 | Young Africans | Young Africans | 1 | 0 | 1 (a) |
| | | | | | Zanaco | Zanaco | 1 | 0 | 1 (a) |
| 3 | Zanaco | 0 | 1 | 1 | Zanaco | Zanaco | 1 | 0 | 1 (a) |
| 2 | APR | 0 | 0 | 0 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Zimamoto | 2 | 1 | 3 | | | | | |
| 4 | Ferroviário Beira | 1 | 3 | 4 | | | | | |
| 4 | Ferroviário Beira | 1 | 3 | 4 | Ferroviário Beira | Ferroviário Beira | 2 | 0 | 2 (4 p) |
| | | | | | Barrack Young Controllers | Barrack Young Controllers | 0 | 2 | 2 (1 p) |
| 3 | Barrack Young Controllers | 1 | 0 | 1 (7 p) | Barrack Young Controllers | Barrack Young Controllers | 0 | 2 | 2 (1 p) |
| 2 | Stade Malien | 0 | 1 | 1 (6 p) | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Zamalek | | | Bye | | | | | |
| 4 | | | | | | | | | |
| 4 | | | | | Zamalek | Zamalek | 4 | 1 | 5 |
| | | | | | Enugu Rangers | Enugu Rangers | 1 | 2 | 3 |
| 3 | JS Saoura | 1 | 0 | 1 (a) | Enugu Rangers | Enugu Rangers | 1 | 2 | 3 |
| 2 | Enugu Rangers | 1 | 0 | 1 (a) | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Gambia Ports Authority | 1 | 0 | 1 | | | | | |
| 4 | Séwé Sport | 0 | 0 | 0 | | | | | |
| 4 | Séwé Sport | 0 | 0 | 0 | Gambia Ports Authority | Gambia Ports Authority | 1 | 0 | 1 |
| | | | | | AS Vita Club | AS Vita Club | 1 | 2 | 3 |
| 3 | Royal Leopards | 0 | 1 | 1 | AS Vita Club | AS Vita Club | 1 | 2 | 3 |
| 2 | AS Vita Club | 1 | 3 | 4 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Coton Sport | 2 | 5 | 7 | | | | | |
| 4 | Atlabara | 0 | 2 | 2 | | | | | |
| 4 | Atlabara | 0 | 2 | 2 | Coton Sport | Coton Sport | 1 | 1 | 2 |
| | | | | | CNaPS Sport | CNaPS Sport | 0 | 1 | 1 |
| 3 | CNaPS Sport | 2 | 2 | 4 (a) | CNaPS Sport | CNaPS Sport | 0 | 1 | 1 |
| 2 | Township Rollers | 1 | 3 | 4 (a) | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Al-Ahly | | | Bye | | | | | |
| 4 | | | | | | | | | |
| 4 | | | | | Al-Ahly | Al-Ahly | 1 | 0 | 1 |
| | | | | | Bidvest Wits | Bidvest Wits | 0 | 0 | 0 |
| 3 | Saint-Louisienne | 2 | 1 | 3 | Bidvest Wits | Bidvest Wits | 0 | 0 | 0 |
| 2 | Bidvest Wits | 1 | 3 | 4 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | TP Mazembe | | | Bye | | | | | |
| 4 | | | | | | | | | |
| 4 | | | | | TP Mazembe | TP Mazembe | 1 | 0 | 1 (a) |
| | | | | | CAPS United | CAPS United | 1 | 0 | 1 (a) |
| 3 | Lioli | 0 | 1 | 1 | CAPS United | CAPS United | 1 | 0 | 1 (a) |
| 2 | CAPS United | 0 | 2 | 2 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | AC Léopards | 1 | 1 | 2 (a) | | | | | |
| 4 | UMS de Loum | 0 | 2 | 2 (a) | | | | | |
| 4 | UMS de Loum | 0 | 2 | 2 (a) | AC Léopards | AC Léopards | 0 | 0 | 0 |
| | | | | | Saint George | Saint George | 1 | 2 | 3 |
| 3 | Côte d'Or | 0 | 0 | 0 | Saint George | Saint George | 1 | 2 | 3 |
| 2 | Saint George | 2 | 3 | 5 | | | | | |
| Preliminary round | Preliminary round | Preliminary round | Preliminary round | Preliminary round | First round | First round | First round | First round | First round |
| 1 | Al-Hilal | | | Bye | | | | | |
| 4 | | | | | | | | | |
| 4 | | | | | Al-Hilal | Al-Hilal | 3 | 2 | 5 |
| | | | | | AS Port-Louis 2000 | AS Port-Louis 2000 | 0 | 2 | 2 |
| 3 | Tusker | 1 | 1 | 2 | AS Port-Louis 2000 | AS Port-Louis 2000 | 0 | 2 | 2 |
| 2 | AS Port-Louis 2000 | 1 | 2 | 3 | | | | | |

## Preliminary round

The preliminary round included the 46 teams that did not receive byes to the first round.
| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Rail Club du Kadiogo | 3–1 | Diables Noirs | 3–0 | 0–1 |
| Sony Elá Nguema | 1–5 | Al-Merrikh | 0–1 | 1–4 |
| AS Real Bamako | 0–4 | Rivers United | 0–0 | 0–4 |
| AS Tanda | 4–3 | AS FAN | 3–0 | 1–3 |
| US Gorée | 1–2 | Horoya | 0–0 | 1–2 |
| Johansen | 1–4 | FUS Rabat | 1–1 | 0–3 |
| Wa All Stars | 1–5 | Al-Ahli Tripoli | 1–3 | 0–2 |
| KCCA | 2–2 (a) | 1º de Agosto | 1–0 | 1–2 |
| CF Mounana | 3–0 | Vital'O | 2–0 | 1–0 |
| Zanaco | 1–0 | APR | 0–0 | 1–0 |
| Ngaya Club | 2–6 | Young Africans | 1–5 | 1–1 |
| Barrack Young Controllers | 1–1 (7–6 p) | Stade Malien | 1–0 | 0–1 |
| Zimamoto | 3–4 | Ferroviário Beira | 2–1 | 1–3 |
| JS Saoura | 1–1 (a) | Enugu Rangers | 1–1 | 0–0 |
| Royal Leopards | 1–4 | AS Vita Club | 0–1 | 1–3 |
| Gambia Ports Authority | 1–0 | Séwé Sport | 1–0 | 0–0 |
| CNaPS Sport | 4–4 (a) | Township Rollers | 2–1 | 2–3 |
| Coton Sport | 7–2 | Atlabara | 2–0 | 5–2 |
| Saint-Louisienne | 3–4 | Bidvest Wits | 2–1 | 1–3 |
| Lioli | 1–2 | CAPS United | 0–0 | 1–2 |
| Côte d'Or | 0–5 | Saint George | 0–2 | 0–3 |
| AC Léopards | 2–2 (a) | UMS de Loum | 1–0 | 1–2 |
| Tusker | 2–3 | AS Port-Louis 2000 | 1–1 | 1–2 |
Rail Club du Kadiogo won 3–1 on aggregate.
Al-Merrikh won 5–1 on aggregate.
Rivers United won 4–0 on aggregate.
AS Tanda won 4–3 on aggregate.
Horoya won 2–1 on aggregate.
FUS Rabat won 4–1 on aggregate.
Al-Ahli Tripoli won 5–1 on aggregate.
2–2 on aggregate. KCCA won on away goals.
CF Mounana won 3–0 on aggregate.
Zanaco won 1–0 on aggregate
Young Africans won 6–2 on aggregate.
1–1 on aggregate. Barrack Young Controllers won 7–6 on penalties.
Ferroviário Beira won 4–3 on aggregate.
1–1 on aggregate. Enugu Rangers won on away goals.
AS Vita Club won 4–1 on aggregate.
Gambia Ports Authority won 1–0 on aggregate.
4–4 on aggregate. CNaPS Sport won on away goals.
Coton Sport won 7–2 on aggregate.
Bidvets Wits won 4–3 on aggregate.
CAPS United won 2–1 on aggregate.
Saint George won 5–0 on aggregate.
2–2 on aggregate. AC Léopards won on away goals.
AS Port-Louis 2000 won 3–2 on aggregate.

## First round

The first round included 32 teams: the 23 winners of the preliminary round, and the 9 teams that received byes to this round.
| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| USM Alger | 2–1 | Rail Club du Kadiogo | 2–0 | 0–1 |
| Rivers United | 3–4 | Al-Merrikh | 3–0 | 0–4 |
| Étoile du Sahel | 5–1 | AS Tanda | 3–0 | 2–1 |
| Espérance de Tunis | 4–3 | Horoya | 3–1 | 1–2 |
| Al-Ahli Tripoli | 3–3 (a) | FUS Rabat | 2–0 | 1–3 |
| Mamelodi Sundowns | 3–2 | KCCA | 2–1 | 1–1 |
| Wydad AC | 1–1 (5–4 p) | CF Mounana | 1–0 | 0–1 |
| Young Africans | 1–1 (a) | Zanaco | 1–1 | 0–0 |
| Ferroviário Beira | 2–2 (4–1 p) | Barrack Young Controllers | 2–0 | 0–2 |
| Zamalek | 5–3 | Enugu Rangers | 4–1 | 1–2 |
| Gambia Ports Authority | 1–3 | AS Vita Club | 1–1 | 0–2 |
| Coton Sport | 2–1 | CNaPS Sport | 1–0 | 1–1 |
| Al Ahly | 1–0 | Bidvest Wits | 1–0 | 0–0 |
| TP Mazembe | 1–1 (a) | CAPS United | 1–1 | 0–0 |
| AC Léopards | 0–3 | Saint George | 0–1 | 0–2 |
| Al-Hilal | 5–2 | AS Port-Louis 2000 | 3–0 | 2–2 |
USM Alger won 2–1 on aggregate.
Al-Merrikh won 4–3 on aggregate.
Étoile du Sahel won 5–1 on aggregate.
Espérance de Tunis won 4–3 on aggregate.
3–3 on aggregate. Al-Ahli Tripoli won on away goals.
Mamelodi Sundowns won 3–2 on aggregate.
1–1 on aggregate. Wydad AC won 5–4 on penalties.
1–1 on aggregate. Zanaco won on away goals.
2–2 on aggregate. Ferroviário Beira won 4–1 on penalties.
Zamalek won 5–3 on aggregate.
AS Vita Club won 3–1 on aggregate.
Coton Sport won 2–1 on aggregate.
Al Ahly won 1–0 on aggregate.
1–1 on aggregate. CAPS United won on away goals.
Saint George won 3–0 on aggregate.
Al-Hilal won 5–2 on aggregate.