Each PDCCH supports multiple formats and the format used is usually unknown to the UE. Therefore, the terminal needs to blindly detect the format of the PDCCHs by decoding each format individually.
Well, that may be okay for smaller bandwidth scenarios such as 1.4 MHz, 3 MHz etc.
However, with bigger bandwidth markets such as 15 MHz or 20 MHz, the decoding may result in a lot of UE computations, and battery drainage may increase.
Clearly, with the requirement to monitor multiple PDCCHs, each with an unknown format, the number of blind decodings in the terminal may become unattractively high. Using a fixed Control Channel Element (CCE) size and allowing aggregation of only 1, 2, 4 or 8 CCEs helps in reducing the number of blind decoding attempts.
So in a nutshell, blind decoding is used to save UE battery consumption and at the same time to help UE find the right PDCCH format much faster.