W fazie wstępnej (Puchar Polski) drużyny Ekstraligi podzielono na dwie grupy po cztery zespoły. W ramach każdej grupy mecze odbywały się systemem każdy z każdym, mecz i rewanż. Zwycięzcy grup rozgrywali 11 listopada 2016 mecz finałowy, którego stawką był Puchar Polski. Wyniki rundy wstępnej stanowiły o rozstawieniu zespołów w rundzie zasadniczej. W fazie zasadniczej drużyny nie były podzielone na grupy i rozgrywały mecze systemem każdy z każdym, mecz i rewanż. W fazie finałowej rozgrywano cztery spotkania: finał oraz mecze o trzecie, piąte i siódme miejsce. W finale spotykały się drużyny, które zajęły pierwsze i drugie miejsce w tabeli rundy zasadniczej, w meczu o trzecie miejsce drużyny, które zajęły trzecie i czwarte miejsce itd. Gospodarzami spotkań rundy finałowej były każdorazowo drużyny wyżej sklasyfikowane w tabeli rundy zasadniczej. Najniżej sklasyfikowana drużyna Ekstraligi (przegrany z meczu o siódme miejsce) miała spaść do I ligi.