Erano iscritte tutte le formazioni partecipanti alla Vysšaja Liga 1988. Le 16 squadre furono divise in quattro gironi da quattro squadre: in ciascun girone si disputavano gare di andata e ritorno per un totale di sei incontri per squadra, assegnando due punti per la vittoria, uno per il pareggio e zero per la sconfitta. Erano ammesse al secondo turno le prime due di ciascun girone.
Le quattro vincitrici dei quattro gironi disputavano i quarti in casa contro le quattro seconde classificate; quarti e semifinali erano giocate su gare di sola andata, così, come la finale, disputata però in campo neutro.
- Ammesse alla seconda fase: Žalgiris Vilnius e Dinamo Minsk
1ª giornata
|
1/3 aprile 1988
|
|
|
Dinamo Kiev-Dinamo Minsk |
0-2
|
Žalgiris Vilnius-Zenit Leningrado |
2-0
|
|
2ª giornata
|
8 maggio 1988
|
|
|
Zenit Leningrado-Dinamo Kiev |
0-1
|
Dinamo Minsk-Žalgiris Vilnius |
2-0
|
|
3ª giornata
|
29 maggio 1988
|
|
|
Žalgiris Vilnius-Dinamo Kiev |
2-1
|
Zenit Leningrado-Dinamo Minsk |
3-1
|
|
4ª giornata
|
11 giugno 1988
|
|
|
Zenit Leningrado-Žalgiris Vilnius |
0-0
|
Dinamo Minsk-Dinamo Kiev |
1-1
|
|
5ª giornata
|
16 giugno 1988
|
|
|
Dinamo Kiev-Žalgiris Vilnius |
1-2
|
Dinamo Minsk-Zenit Leningrado |
3-1
|
|
6ª giornata
|
20 giugno 1988
|
|
|
Dinamo Kiev-Zenit Leningrado |
2-2
|
Žalgiris Vilnius-Dinamo Minsk |
3-1
|
|
- Ammesse alla seconda fase: Qaýrat e Neftçi Baku
1ª giornata
|
3 aprile 1988
|
|
|
Šachtar-Neftçi Baku |
1-3
|
Dinamo Tbilisi-Qaýrat |
0-0
|
|
2ª giornata
|
8 maggio 1988
|
|
|
Šachtar-Dinamo Tbilisi |
1-1
|
Qaýrat-Neftçi Baku |
4-4
|
|
3ª giornata
|
29 maggio 1988
|
|
|
Dinamo Tbilisi-Neftçi Baku |
2-3
|
Šachtar-Qaýrat |
2-1
|
|
4ª giornata
|
11 giugno 1988
|
|
|
Dinamo Tbilisi-Šachtar |
1-3
|
Neftçi Baku-Qaýrat |
3-4
|
|
5ª giornata
|
16 giugno 1988
|
|
|
Qaýrat-Šachtar |
3-1
|
Dinamo Tbilisieftçi Baku |
4-0
|
|
6ª giornata
|
20 giugno 1988
|
|
|
Qaýrat-Dinamo Tbilisi |
6-2
|
Šachtar-Neftçi Baku |
2-2
|
|
- Ammesse alla seconda fase: Spartak Mosca e Dinamo Mosca
1ª giornata
|
2/3 aprile 1988
|
|
|
Torpedo Mosca-Lokomotiv Mosca |
1-0
|
Spartak Mosca-Dinamo Mosca |
1-1
|
|
2ª giornata
|
8 maggio 1988
|
|
|
Lokomotiv Mosca-Spartak Mosca |
1-2
|
Torpedo Mosca-Dinamo Mosca |
0-1
|
|
3ª giornata
|
29 maggio 1988
|
|
|
Torpedo Mosca-Spartak Mosca |
0-3
|
Dinamo Mosca-Lokomotiv Mosca |
1-1
|
|
4ª giornata
|
11 giugno 1988
|
|
|
Lokomotiv Mosca-Torpedo Mosca |
1-1
|
Dinamo Mosca-Spartak Mosca |
0-0
|
|
5ª giornata
|
16 giugno 1988
|
|
|
Spartak Mosca-Lokomotiv Mosca |
8-1
|
Dinamo Mosca-Torpedo Mosca |
1-3
|
|
6ª giornata
|
20 giugno 1988
|
|
|
Lokomotiv Mosca-Dinamo Mosca |
1-3
|
Spartak Mosca-Torpedo Mosca |
1-1
|
|
- Ammesse alla seconda fase: Metalist e Čornomorec'
1ª giornata
|
3 aprile 1988
|
|
|
Metalist-Dnepr |
2-0
|
Ararat-Čornomorec' |
1-3
|
|
2ª giornata
|
8 maggio 1988
|
|
|
Ararat-Metalist |
0-1
|
Dnepr-Čornomorec' |
2-1
|
|
3ª giornata
|
29 maggio 1988
|
|
|
Čornomorec'-Metalist |
1-0
|
Dnepr-Ararat |
0-0
|
|
4ª giornata
|
11 giugno 1988
|
|
|
Čornomorec'-Ararat |
3-2
|
Dnepr-Metalist |
1-0
|
|
5ª giornata
|
16 giugno 1988
|
|
|
Čornomorec'-Dnepr |
2-2
|
Metalist-Ararat |
4-1
|
|
6ª giornata
|
20 giugno 1988
|
|
|
Metalist-Čornomorec' |
2-1
|
Ararat-Dnepr |
1-0
|
|
Partite disputate il 28 agosto 1988.
Partite disputate il 25 e il 27 ottobre 1988.